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