3 # Copyright (C) 1999-2024 Free Software Foundation, Inc.
5 # This file is part of the libiberty library.
6 # Libiberty is free software; you can redistribute it and/or
7 # modify it under the terms of the GNU Library General Public
8 # License as published by the Free Software Foundation; either
9 # version 2 of the License, or (at your option) any later version.
11 # Libiberty is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 # Library General Public License for more details.
16 # You should have received a copy of the GNU Library General Public
17 # License along with libiberty; see the file COPYING.LIB. If not,
18 # write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 # Boston, MA 02110-1301, USA.
22 # This file was written by Tom Tromey <tromey@cygnus.com>.
25 # Makefile for libiberty/testsuite directory
35 LIBCFLAGS
= $(CFLAGS
) $(LDFLAGS
)
37 # Multilib support variables.
40 INCDIR
=$(srcdir)/..
/$(MULTISRCTOP
)..
/include
44 # CHECK is set to "really_check" or the empty string by configure.
47 really-check
: check-cplus-dem check-d-demangle check-rust-demangle \
48 check-pexecute check-expandargv check-strtol
50 # Run some tests of the demangler.
51 check-cplus-dem
: test-demangle
$(srcdir)/demangle-expected
52 .
/test-demangle
< $(srcdir)/demangle-expected
54 check-d-demangle
: test-demangle
$(srcdir)/d-demangle-expected
55 .
/test-demangle
< $(srcdir)/d-demangle-expected
57 check-rust-demangle
: test-demangle
$(srcdir)/rust-demangle-expected
58 .
/test-demangle
< $(srcdir)/rust-demangle-expected
60 # Check the pexecute code.
61 check-pexecute
: test-pexecute
64 # Check the expandargv functionality
65 check-expandargv
: test-expandargv
68 # Check the strtol functionality
69 check-strtol
: test-strtol
72 # Run the demangler fuzzer
73 fuzz-demangler
: demangler-fuzzer
76 TEST_COMPILE
= $(CC
) @DEFS@
$(LIBCFLAGS
) -I..
-I
$(INCDIR
) $(HDEFINES
)
77 test-demangle
: $(srcdir)/test-demangle.c ..
/libiberty.a
78 $(TEST_COMPILE
) -o test-demangle \
79 $(srcdir)/test-demangle.c ..
/libiberty.a
81 test-pexecute
: $(srcdir)/test-pexecute.c ..
/libiberty.a
82 $(TEST_COMPILE
) -DHAVE_CONFIG_H
-I..
-o test-pexecute \
83 $(srcdir)/test-pexecute.c ..
/libiberty.a
85 test-expandargv
: $(srcdir)/test-expandargv.c ..
/libiberty.a
86 $(TEST_COMPILE
) -DHAVE_CONFIG_H
-I..
-o test-expandargv \
87 $(srcdir)/test-expandargv.c ..
/libiberty.a
89 test-strtol
: $(srcdir)/test-strtol.c ..
/libiberty.a
90 $(TEST_COMPILE
) -DHAVE_CONFIG_H
-I..
-o test-strtol \
91 $(srcdir)/test-strtol.c ..
/libiberty.a
93 demangler-fuzzer
: $(srcdir)/demangler-fuzzer.c ..
/libiberty.a
94 $(TEST_COMPILE
) -o demangler-fuzzer \
95 $(srcdir)/demangler-fuzzer.c ..
/libiberty.a
97 # Standard (either GNU or Cygnus) rules we don't use.
98 html install-html
info install-info clean-info
dvi pdf install-pdf \
99 install etags
tags installcheck:
101 # The standard clean rules.
105 rm -f test-expandargv
107 rm -f demangler-fuzzer
112 maintainer-clean
realclean: distclean
114 Makefile
: $(srcdir)/Makefile.in ..
/config.status
115 CONFIG_FILES
=testsuite
/Makefile CONFIG_HEADERS
= \
116 cd ..
&& $(SHELL
) .
/config.status