diff options
author | pradeep <pradeep@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-08-31 19:45:15 +0000 |
---|---|---|
committer | pradeep <pradeep@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-08-31 19:45:15 +0000 |
commit | 1cd50f790cd9ea7bb79642fefe737a7e92ed12c1 (patch) | |
tree | f3a7d3c8f2de1ef0e3d9c0693f38e710671a7638 /apps/gperf | |
parent | c5f60e1876532468f624df7ad50505b01c860a1d (diff) | |
download | ATCD-1cd50f790cd9ea7bb79642fefe737a7e92ed12c1.tar.gz |
*** empty log message ***
Diffstat (limited to 'apps/gperf')
-rw-r--r-- | apps/gperf/tests/Makefile | 202 |
1 files changed, 168 insertions, 34 deletions
diff --git a/apps/gperf/tests/Makefile b/apps/gperf/tests/Makefile index f48bac44333..83bb3e38036 100644 --- a/apps/gperf/tests/Makefile +++ b/apps/gperf/tests/Makefile @@ -1,76 +1,199 @@ # $Id$ # Copyright (C) 1989, 1992, 1993 Free Software Foundation, Inc. # written by Douglas C. Schmidt (schmidt@ics.uci.edu) -# +# # This file is part of GNU GPERF. -# +# # GNU GPERF is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 1, or (at your option) # any later version. -# +# # GNU GPERF is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. -# +# # You should have received a copy of the GNU General Public License # along with GNU GPERF; see the file COPYING. If not, write to the Free -# Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111, USA. +# Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111, USA. #---------------------------------------------------------------------------- # Include macros and targets #---------------------------------------------------------------------------- -SRC= test.cpp +LDLIBS = -lACE + +srcdir = . +GPERF = ../src/gperf + +PROG_SRCS = \ + test.cpp \ + cinset.cpp \ + c++inset.cpp \ + iinset.cpp \ + iinset2.cpp \ + tinset.cpp \ + pinset.cpp \ + m3inset.cpp \ + adainset.cpp \ + preinset.cpp + +SRC = $(PROG_SRCS) + +COUT_OBJS = test.o \ + cinset.o + +AOUT_OBJS = test.o \ + adainset.o + +CPPOUT_OBJS = test.o \ + c++inset.o + +PREOUT_OBJS = test.o \ + preinset.o + +M3OUT_OBJS = test.o \ + m3inset.o + +POUT_OBJS = test.o \ + pinset.o + +IOUT_OBJS = test.o \ + iinset.o + +IOUT2_OBJS = test.o \ + iinset2.o + +TOUT_OBJS = test.o \ + tinset.o + +BIN2 = cout \ + aout \ + c++out \ + preout \ + m3out \ + pout \ + iout \ + iout2 \ + tout + +BUILD = $(BIN) +BUILD+=runtests +VLDLIBS = $(LDLIBS:%=%$(VAR)) +VBIN = $(BIN:%=%$(VAR)) + +#---------------------------------------------------------------------------- +# Include macros and targets +#---------------------------------------------------------------------------- include $(ACE_ROOT)/include/makeinclude/wrapper_macros.GNU include $(ACE_ROOT)/include/makeinclude/macros.GNU include $(ACE_ROOT)/include/makeinclude/rules.common.GNU include $(ACE_ROOT)/include/makeinclude/rules.nonested.GNU -include $(ACE_ROOT)/include/makeinclude/rules.lib.GNU include $(ACE_ROOT)/include/makeinclude/rules.local.GNU -srcdir = . -GPERF = ../src/gperf -all: - @echo "performing some tests of the perfect hash generator" - $(COMPILE.cc) $(srcdir)/test.cpp - $(GPERF) -a -p -c -l -S1 -o $(srcdir)/c.gperf > cinset.cpp - $(CXX) $(CCFLAGS) -o cout cinset.cpp test.o $(LDFLAGS) $(VLDLIBS) +#---------------------------------------------------------------------------- +# Local targets +#---------------------------------------------------------------------------- +#rules to make the gperf generated source files.. + +all: cout \ + aout \ + c++out \ + preout \ + m3out \ + pout \ + iout \ + iout2 \ + tout \ + runtests + +cinset.cpp: $(srcdir)/c.gperf $(GPERF) + $(GPERF) -a -p -c -l -S1 -o $(srcdir)/c.gperf > $@ + +adainset.cpp: $(srcdir)/ada.gperf $(GPERF) + $(GPERF) -a -k1,4,'$$' $(srcdir)/ada.gperf > $@ + +c++inset.cpp: $(srcdir)/c++.gperf $(GPERF) + $(GPERF) -a -D $(srcdir)/c++.gperf > $@ + +preinset.cpp: $(srcdir)/adadefs.gperf $(GPERF) + $(GPERF) -a -p -D -k1,'$$' -s 2 -o $(srcdir)/adadefs.gperf > $@ + +m3inset.cpp: $(srcdir)/modula3.gperf $(GPERF) + $(GPERF) -a -k1,2,'$$' -o $(srcdir)/modula3.gperf > $@ + +pinset.cpp: $(srcdir)/pascal.gperf $(GPERF) + $(GPERF) -a -o -S2 -p < $(srcdir)/pascal.gperf > $@ + +iinset.cpp: $(srcdir)/idl.gperf $(GPERF) + $(GPERF) -m -M -c -C -D -S1 -E -T -a -o -p < $(srcdir)/idl.gperf > $@ + +# no S1 flag in this case.. +iinset2.cpp: $(srcdir)/idl.gperf $(GPERF) + $(GPERF) -m -M -c -C -D -E -T -a -o -p $(srcdir)/idl.gperf > $@ + +tinset.cpp: $(srcdir)/corba.gperf $(GPERF) + $(GPERF) -a -o < $(srcdir)/corba.gperf > $@ + +#rules to make the test executables + +cout:$(addprefix $(VDIR),$(COUT_OBJS)) + $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK) + +aout:$(addprefix $(VDIR),$(AOUT_OBJS)) + $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK) + +c++out:$(addprefix $(VDIR),$(CPPOUT_OBJS)) + $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK) + +preout:$(addprefix $(VDIR),$(PREOUT_OBJS)) + $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK) + +m3out:$(addprefix $(VDIR),$(M3OUT_OBJS)) + $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK) + +pout:$(addprefix $(VDIR),$(POUT_OBJS)) + $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK) + +iout:$(addprefix $(VDIR),$(IOUT_OBJS)) + $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK) + +iout2:$(addprefix $(VDIR),$(IOUT2_OBJS)) + $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK) + +tout:$(addprefix $(VDIR),$(TOUT_OBJS)) + $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK) + +runtests: + @echo "performing some tests of the perfect hash generator" + # test cout ./cout -v < $(srcdir)/c.gperf > c.out -diff -b $(srcdir)/c.exp c.out - $(GPERF) -a -k1,4,'$$' $(srcdir)/ada.gperf > adainset.cpp - $(CXX) $(CCFLAGS) -o aout adainset.cpp test.o $(LDFLAGS) $(VLDLIBS) + # test aout ./aout -v < $(srcdir)/ada.gperf > ada-res.out -diff -b $(srcdir)/ada-res.exp ada-res.out - $(GPERF) -a -D $(srcdir)/c++.gperf > c++inset.cpp - $(CXX) $(CCFLAGS) -o c++out c++inset.cpp test.o $(LDFLAGS) $(VLDLIBS) + # test c++out ./c++out -v < $(srcdir)/c++.gperf > c++-res.out -diff -b $(srcdir)/c++-res.exp c++-res.out - $(GPERF) -a -p -D -k1,'$$' -s 2 -o $(srcdir)/adadefs.gperf > preinset.cpp - $(CXX) $(CCFLAGS) -o preout preinset.cpp test.o $(LDFLAGS) $(VLDLIBS) + # test preout ./preout -v < $(srcdir)/adadefs.gperf > ada-pred.out -diff -b $(srcdir)/ada-pred.exp ada-pred.out - $(GPERF) -a -k1,2,'$$' -o $(srcdir)/modula3.gperf > m3inset.cpp - $(CXX) $(CCFLAGS) -o m3out m3inset.cpp test.o $(LDFLAGS) $(VLDLIBS) + # test m3out ./m3out -v < $(srcdir)/modula3.gperf > modula.out -diff -b $(srcdir)/modula.exp modula.out - $(GPERF) -a -o -S2 -p < $(srcdir)/pascal.gperf > pinset.cpp - $(CXX) $(CCFLAGS) -o pout pinset.cpp test.o $(LDFLAGS) $(VLDLIBS) + # test pout ./pout -v < $(srcdir)/pascal.gperf > pascal.out -diff -b $(srcdir)/pascal.exp pascal.out - $(GPERF) -m -M -c -C -D -S1 -E -T -a -o -p < $(srcdir)/idl.gperf > iinset.cpp - $(CXX) $(CCFLAGS) -o iout iinset.cpp test.o $(LDFLAGS) $(VLDLIBS) + # test iout ./iout -v < $(srcdir)/idl.gperf > idl.out -diff -b $(srcdir)/idl.exp idl.out - $(GPERF) -m -M -c -C -D -E -T -a -o -p < $(srcdir)/idl.gperf > iinset.cpp - $(CXX) $(CCFLAGS) -o iout iinset.cpp test.o $(LDFLAGS) $(VLDLIBS) - ./iout -v < $(srcdir)/idl.gperf > idl.out + # test iout2 + ./iout2 -v < $(srcdir)/idl.gperf > idl.out -diff -b $(srcdir)/idl.exp idl.out - $(GPERF) -a -o < $(srcdir)/corba.gperf > tinset.cpp - $(CXX) $(CCFLAGS) -o tout tinset.cpp test.o $(LDFLAGS) $(VLDLIBS) + #test tout ./tout -v < $(srcdir)/corba.gperf > corba.out -diff -b $(srcdir)/corba.exp corba.out # these next 5 are demos that show off the generated code @@ -91,9 +214,9 @@ all: -diff -b $(srcdir)/test-7.exp test-7.out realclean: - $(RM) -rf *.out cinset.cpp c++inset.cpp iinset.cpp tinset.cpp \ - pinset.cpp m3inset.cpp adainset.cpp preinset.cpp - $(RM) -rf c.out aout preout m3out pout cout c++out iout tout + $(RM) -rf *.out cinset.cpp c++inset.cpp iinset.cpp iinset2.cpp \ + tinset.cpp pinset.cpp m3inset.cpp adainset.cpp preinset.cpp + $(RM) -rf c.out aout preout m3out pout cout c++out iout iout2 tout # DO NOT DELETE THIS LINE -- g++dep uses it. # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. @@ -101,6 +224,8 @@ realclean: .obj/test.o .obj/test.so .shobj/test.o .shobj/test.so: test.cpp \ $(ACE_ROOT)/ace/OS.h \ $(ACE_ROOT)/ace/inc_user_config.h \ + $(ACE_ROOT)/ace/config-sunos5.6.h \ + $(ACE_ROOT)/ace/config-sunos5.5.h \ $(ACE_ROOT)/ace/streams.h \ $(ACE_ROOT)/ace/Basic_Types.h \ $(ACE_ROOT)/ace/Basic_Types.i \ @@ -112,5 +237,14 @@ realclean: $(ACE_ROOT)/ace/ACE.i \ $(ACE_ROOT)/ace/Log_Priority.h \ $(ACE_ROOT)/ace/Log_Record.i +.obj/cinset.o .obj/cinset.so .shobj/cinset.o .shobj/cinset.so: cinset.cpp +c++.obj/inset.o .obj/inset.so .shobj/inset.o .shobj/inset.so: c++inset.cpp +.obj/iinset.o .obj/iinset.so .shobj/iinset.o .shobj/iinset.so: iinset.cpp +.obj/iinset2.o .obj/iinset2.so .shobj/iinset2.o .shobj/iinset2.so: iinset2.cpp +.obj/tinset.o .obj/tinset.so .shobj/tinset.o .shobj/tinset.so: tinset.cpp +.obj/pinset.o .obj/pinset.so .shobj/pinset.o .shobj/pinset.so: pinset.cpp +.obj/m3inset.o .obj/m3inset.so .shobj/m3inset.o .shobj/m3inset.so: m3inset.cpp +.obj/adainset.o .obj/adainset.so .shobj/adainset.o .shobj/adainset.so: adainset.cpp +.obj/preinset.o .obj/preinset.so .shobj/preinset.o .shobj/preinset.so: preinset.cpp # IF YOU PUT ANYTHING HERE IT WILL GO AWAY |