1# ;;; -*- Mode:makefile;-*- 
2# Generated automatically from Makefile.in by configure.
3# This requires GNU make.
4
5srcdir = .
6VPATH = .
7
8# point this to proper location
9STL_INCL=-I../../stlport
10
11AUX_LIST=TestClass.cpp main.cpp nc_alloc.cpp random_number.cpp
12
13TEST_LIST=test_algo.cpp  \
14test_algobase.cpp     test_list.cpp test_slist.cpp \
15test_bit_vector.cpp   test_vector.cpp \
16test_deque.cpp test_set.cpp test_map.cpp \
17test_hash_map.cpp  test_hash_set.cpp test_rope.cpp \
18test_string.cpp test_bitset.cpp test_valarray.cpp
19
20LIST=${AUX_LIST} ${TEST_LIST}
21
22OBJECTS = $(LIST:%.cpp=obj/%.o) $(STAT_MODULE)
23D_OBJECTS = $(LIST:%.cpp=d_obj/%.o) $(STAT_MODULE)
24NOSGI_OBJECTS = $(LIST:%.cpp=nosgi_obj/%.o) $(STAT_MODULE)
25
26EXECS = $(LIST:%.cpp=%)
27TESTS = $(LIST:%.cpp=%.out)
28TEST_EXE  = ./eh_test
29D_TEST_EXE = ./eh_test_d
30NOSGI_TEST_EXE = ./eh_test_nosgi
31
32TEST  = ./eh_test.out
33D_TEST = ./eh_test_d.out
34NOSGI_TEST = ./eh_test_nosgi.out
35
36CC = c++
37CXX = $(CC)
38
39# dwa 12/22/99 -- had to turn off -ansi flag so we could use SGI IOSTREAMS
40# also, test_slist won't compile with -O3/-O2 when targeting PPC. It fails 
41# in the assembler with 'invalid relocation type'
42CXXFLAGS = -Wall -g -O ${STL_INCL} -I. ${CXX_EXTRA_FLAGS} -DEH_VECTOR_OPERATOR_NEW
43D_CXXFLAGS = -Wall -g -O ${STL_INCL} -I. ${CXX_EXTRA_FLAGS} -DEH_VECTOR_OPERATOR_NEW -D_STLP_DEBUG -D_STLP_USE_STATIC_LIB
44NOSGI_CXXFLAGS = -Wall -g -O2 ${STL_INCL} -I. ${CXX_EXTRA_FLAGS} -D_STLP_NO_OWN_IOSTREAMS -D_STLP_DEBUG_UNINITIALIZED -DEH_VECTOR_OPERATOR_NEW
45
46check: $(TEST)
47
48LIBS = -lm 
49D_LIBSTLPORT = -L../../lib -lstlport_cygwin_stldebug
50LIBSTLPORT = -L../../lib -lstlport_cygwin
51
52all: $(TEST_EXE) $(D_TEST_EXE) $(NOSGI_TEST_EXE)
53
54check_nosgi: $(NOSGI_TEST)
55check_d: $(D_TEST)
56
57OBJDIR=obj
58D_OBJDIR=d_obj
59NOSGI_OBJDIR=nosgi_obj
60
61$(OBJDIR):
62	mkdir obj
63$(D_OBJDIR):
64	mkdir d_obj
65$(NOSGI_OBJDIR):
66	mkdir nosgi_obj
67
68$(TEST_EXE) : $(OBJDIR) $(OBJECTS)
69	$(CXX) $(CXXFLAGS) $(OBJECTS) $(LIBSTLPORT) $(LIBS) -o $(TEST_EXE)
70
71$(D_TEST_EXE) : $(D_OBJDIR) $(D_OBJECTS)
72	$(CXX) $(D_CXXFLAGS) $(D_OBJECTS) $(D_LIBSTLPORT) $(LIBS) -o $(D_TEST_EXE)
73
74$(NOSGI_TEST_EXE) : $(NOSGI_OBJDIR) $(NOSGI_OBJECTS)
75	$(CXX) $(NOSGI_CXXFLAGS) $(NOSGI_OBJECTS) $(LIBS) -o $(NOSGI_TEST_EXE)
76
77
78$(TEST) : $(TEST_EXE)
79	echo "Cygwin has bugs in exception handling, runnning w/o throwing exceptions..."
80	./$(TEST_EXE) -e
81
82$(D_TEST) : $(D_TEST_EXE)
83	echo "Cygwin has bugs in exception handling, runnning w/o throwing exceptions..."
84	./$(D_TEST_EXE) -e
85
86$(NOSGI_TEST) : $(NOSGI_TEST_EXE)
87	echo "Cygwin has bugs in exception handling, runnning w/o throwing exceptions..."
88	./$(NOSGI_TEST_EXE) -e
89
90SUFFIXES: .cpp.o.exe.out.res
91
92nosgi_obj/%.o : %.cpp
93	$(CXX) $(NOSGI_CXXFLAGS) $< -c -o $@
94
95d_obj/%.o : %.cpp
96	$(CXX) $(D_CXXFLAGS) $< -c -o $@
97
98obj/%.o : %.cpp
99	$(CXX) $(CXXFLAGS) $< -c -o $@
100
101nosgi_obj/%.i : %.cpp
102	$(CXX) $(NOSGI_CXXFLAGS) $< -E -H > $@
103
104d_obj/%.i : %.cpp
105	$(CXX) $(D_CXXFLAGS) $< -E -H > $@
106
107obj/%.i : %.cpp
108	$(CXX) $(CXXFLAGS) $< -E -H > $@
109
110%.out: %.cpp
111	$(CXX) $(CXXFLAGS) $< -c -USINGLE -DMAIN -g -D_STLP_DEBUG -D_REENTRANT -o $*.o
112	$(CXX) $(CXXFLAGS) $*.o $(D_LIBSTLPORT) $(LIBS) -o $*
113	./$* > $@
114	-rm -f $*
115
116%.s: %.cpp
117	$(CXX) $(CXXFLAGS) -O4 -S -pto $<  -o $@
118
119%.E: %.cpp
120	$(CXX) $(CXXFLAGS) -E $<  -o $@
121
122clean:
123	-rm -fr ${TEST_EXE} *.o */*.o *.rpo *.obj *.out core *~ Templates.DB
124