testsuite: skip confirmation in 'gdb_reinitialize_dir'
[binutils-gdb.git] / gdbsupport / selftest.m4
blob2e7cae17b59fbdca1cf4967625c9be9f1cadf085
1 dnl Copyright (C) 2018-2024 Free Software Foundation, Inc.
2 dnl
3 dnl This file is part of GDB.
4 dnl
5 dnl This program is free software; you can redistribute it and/or modify
6 dnl it under the terms of the GNU General Public License as published by
7 dnl the Free Software Foundation; either version 3 of the License, or
8 dnl (at your option) any later version.
9 dnl
10 dnl This program is distributed in the hope that it will be useful,
11 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
12 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 dnl GNU General Public License for more details.
14 dnl
15 dnl You should have received a copy of the GNU General Public License
16 dnl along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 dnl GDB_AC_SELFTEST(ACTION-IF-ENABLED)
19 dnl
20 dnl Enable the unit/self tests if needed.  If they are enabled, AC_DEFINE
21 dnl the GDB_SELF_TEST macro, and execute ACTION-IF-ENABLED.
23 AC_DEFUN([GDB_AC_SELFTEST],[
24 # Check whether we will enable the inclusion of unit tests when
25 # compiling GDB.
27 # The default value of this option changes depending whether we're on
28 # development mode (in which case it's "true") or not (in which case
29 # it's "false").  The $development variable is set by the GDB_AC_COMMON
30 # macro, which must therefore be used before GDB_AC_SELFTEST.
32 AS_IF([test "x$development" != xtrue && test "x$development" != xfalse],
33   [AC_MSG_ERROR([Invalid value for \$development, got "$development", expecting "true" or "false".])])
35 AC_ARG_ENABLE(unit-tests,
36 AS_HELP_STRING([--enable-unit-tests],
37 [Enable the inclusion of unit tests when compiling GDB]),
38 [case "${enableval}" in
39   yes)  enable_unittests=true  ;;
40   no)   enable_unittests=false ;;
41   *)    AC_MSG_ERROR(
42 [bad value ${enableval} for --{enable,disable}-unit-tests option]) ;;
43 esac], [enable_unittests=$development])
45 if $enable_unittests; then
46   AC_DEFINE(GDB_SELF_TEST, 1,
47             [Define if self-testing features should be enabled])
48   $1