Home | History | Annotate | Download | only in testsuite
      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 (at] cygnus.com>.
     24 
     25 #
     26 # Makefile for libiberty/testsuite directory
     27 #
     28 
     29 srcdir = @srcdir@
     30 VPATH = @srcdir@
     31 
     32 SHELL = @SHELL@
     33 
     34 CC = @CC@
     35 CFLAGS = @CFLAGS@
     36 LIBCFLAGS = $(CFLAGS) $(LDFLAGS)
     37 
     38 # Multilib support variables.
     39 MULTISRCTOP =
     40 
     41 INCDIR=$(srcdir)/../$(MULTISRCTOP)../include
     42 
     43 all:
     44 
     45 # CHECK is set to "really_check" or the empty string by configure.
     46 check: @CHECK@
     47 
     48 really-check: check-cplus-dem check-d-demangle check-pexecute check-expandargv \
     49 		check-strtol
     50 
     51 # Run some tests of the demangler.
     52 check-cplus-dem: test-demangle $(srcdir)/demangle-expected
     53 	./test-demangle < $(srcdir)/demangle-expected
     54 
     55 check-d-demangle: test-demangle $(srcdir)/d-demangle-expected
     56 	./test-demangle < $(srcdir)/d-demangle-expected
     57 
     58 # Check the pexecute code.
     59 check-pexecute: test-pexecute
     60 	./test-pexecute
     61 
     62 # Check the expandargv functionality
     63 check-expandargv: test-expandargv
     64 	./test-expandargv
     65 
     66 # Check the strtol functionality
     67 check-strtol: test-strtol
     68 	./test-strtol
     69 
     70 # Run the demangler fuzzer
     71 fuzz-demangler: demangler-fuzzer
     72 	./demangler-fuzzer
     73 
     74 TEST_COMPILE = $(CC) @DEFS@ $(LIBCFLAGS) -I.. -I$(INCDIR) $(HDEFINES)
     75 test-demangle: $(srcdir)/test-demangle.c ../libiberty.a
     76 	$(TEST_COMPILE) -o test-demangle \
     77 		$(srcdir)/test-demangle.c ../libiberty.a
     78 
     79 test-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 
     83 test-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 
     87 test-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 
     91 demangler-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.
     96 html install-html info install-info clean-info dvi pdf install-pdf \
     97 install etags tags installcheck:
     98 
     99 # The standard clean rules.
    100 mostlyclean:
    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
    107 clean: mostlyclean
    108 distclean: clean
    109 	rm -f Makefile
    110 maintainer-clean realclean: distclean
    111 
    112 Makefile: $(srcdir)/Makefile.in ../config.status
    113 	CONFIG_FILES=testsuite/Makefile CONFIG_HEADERS= \
    114 	  cd .. && $(SHELL) ./config.status
    115