1 /* This testcase is part of GDB, the GNU debugger. 2 3 Copyright 2024 Free Software Foundation, Inc. 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 3 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 17 18 extern void lib_func_test_syscall (void); 19 extern void lib_func_test_signal (void); 20 extern void lib_func_test_fork (void); 21 22 /* We use this to perform some filler work. */ 23 volatile int global_var = 0; 24 25 /* Just somewhere for GDB to put a breakpoint. */ 26 void 27 breakpt_before_exit (void) 28 { 29 /* Nothing. */ 30 } 31 32 int 33 main (void) 34 { 35 #if defined TEST_SYSCALL 36 lib_func_test_syscall (); 37 #elif defined TEST_SIGNAL 38 lib_func_test_signal (); 39 #elif defined TEST_FORK 40 lib_func_test_fork (); 41 #else 42 # error compile with suitable -DTEST_xxx macro defined 43 #endif 44 45 ++global_var; 46 47 breakpt_before_exit (); 48 49 return 0; 50 } 51