1 # Process this file with automake to generate Makefile.in
3 # As far as I can tell automake testing support assumes that the build
4 # system and the host system are the same. So these tests will not
5 # work when building with a cross-compiler.
9 AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CXXFLAGS)
11 INCLUDES = -D_GNU_SOURCE \
12 -I$(srcdir) -I$(srcdir)/.. -I$(srcdir)/../../include \
13 -I$(srcdir)/../../elfcpp \
14 -DLOCALEDIR="\"$(datadir)/locale\"" \
22 constructor_static_test \
24 two_file_shared_1_test \
25 two_file_shared_2_test \
26 two_file_same_shared_test \
27 two_file_separate_shared_12_test \
28 two_file_separate_shared_21_test \
30 exception_static_test \
31 exception_shared_1_test \
32 exception_shared_2_test \
33 exception_same_shared_test \
34 exception_separate_shared_12_test \
35 exception_separate_shared_21_test
37 if FN_PTRS_IN_SO_WITHOUT_PIC
40 two_file_shared_1_nonpic_test \
41 two_file_shared_2_nonpic_test \
42 two_file_same_shared_nonpic_test \
43 two_file_separate_shared_12_nonpic_test \
44 two_file_separate_shared_21_nonpic_test
52 basic_static_pic_test \
58 TESTS = object_unittest $(NATIVE_TESTING)
60 check_LIBRARIES = libgoldtest.a
61 libgoldtest_a_SOURCES = test.cc testmain.cc testfile.cc
64 libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL_DEP)
65 LDADD = libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL)
67 check_PROGRAMS = object_unittest $(NATIVE_PROGS)
69 object_unittest_SOURCES = object_unittest.cc
74 gcctestdir/ld: ../ld-new
75 test -d gcctestdir || mkdir -p gcctestdir
77 (cd gcctestdir && $(LN_S) ../../ld-new ld)
79 # Override the default CXXFLAGS--we don't want any optimization
80 basic_test.o: basic_test.cc
81 $(CXXCOMPILE) -O0 -c -o $@ $<
82 basic_test: basic_test.o gcctestdir/ld
83 $(CXXLINK) -Bgcctestdir/ basic_test.o
84 basic_static_test: basic_test.o gcctestdir/ld
85 $(CXXLINK) -Bgcctestdir/ -static basic_test.o
87 basic_pic_test.o: basic_test.cc
88 $(CXXCOMPILE) -O0 -c -fpic -o $@ $<
89 basic_pic_test: basic_pic_test.o gcctestdir/ld
90 $(CXXLINK) -Bgcctestdir/ basic_pic_test.o
91 basic_static_pic_test: basic_pic_test.o gcctestdir/ld
92 $(CXXLINK) -Bgcctestdir/ -static basic_pic_test.o
94 constructor_test_SOURCES = constructor_test.cc
95 constructor_test_DEPENDENCIES = gcctestdir/ld
96 constructor_test_LDFLAGS = -Bgcctestdir/
98 constructor_static_test_SOURCES = constructor_test.cc
99 constructor_static_test_DEPENDENCIES = gcctestdir/ld
100 constructor_static_test_LDFLAGS = -Bgcctestdir/ -static
102 two_file_test_SOURCES = \
105 two_file_test_main.cc \
107 two_file_test_DEPENDENCIES = gcctestdir/ld
108 two_file_test_LDFLAGS = -Bgcctestdir/
110 two_file_shared_1_test_SOURCES = two_file_test_2.cc two_file_test_main.cc
111 two_file_shared_1_test_DEPENDENCIES = gcctestdir/ld two_file_shared_1.so
112 two_file_shared_1_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
113 two_file_shared_1_test_LDADD = two_file_shared_1.so
115 two_file_shared_2_test_SOURCES = two_file_test_1.cc two_file_test_main.cc
116 two_file_shared_2_test_DEPENDENCIES = gcctestdir/ld two_file_shared_2.so
117 two_file_shared_2_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
118 two_file_shared_2_test_LDADD = two_file_shared_2.so
120 two_file_same_shared_test_SOURCES = two_file_test_main.cc
121 two_file_same_shared_test_DEPENDENCIES = gcctestdir/ld two_file_shared.so
122 two_file_same_shared_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
123 two_file_same_shared_test_LDADD = two_file_shared.so
125 two_file_separate_shared_12_test_SOURCES = two_file_test_main.cc
126 two_file_separate_shared_12_test_DEPENDENCIES = \
127 gcctestdir/ld two_file_shared_1.so two_file_shared_2.so
128 two_file_separate_shared_12_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
129 two_file_separate_shared_12_test_LDADD = \
130 two_file_shared_1.so two_file_shared_2.so
132 two_file_separate_shared_21_test_SOURCES = two_file_test_main.cc
133 two_file_separate_shared_21_test_DEPENDENCIES = \
134 gcctestdir/ld two_file_shared_1.so two_file_shared_2.so
135 two_file_separate_shared_21_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
136 two_file_separate_shared_21_test_LDADD = \
137 two_file_shared_2.so two_file_shared_1.so
139 two_file_test_1_pic.o: two_file_test_1.cc
140 $(CXXCOMPILE) -c -fpic -o $@ $<
141 two_file_test_2_pic.o: two_file_test_2.cc
142 $(CXXCOMPILE) -c -fpic -o $@ $<
144 two_file_shared_1.so: two_file_test_1_pic.o
145 $(CXXLINK) -shared two_file_test_1_pic.o
146 two_file_shared_2.so: two_file_test_2_pic.o
147 $(CXXLINK) -shared two_file_test_2_pic.o
148 two_file_shared.so: two_file_test_1_pic.o two_file_test_2_pic.o
149 $(CXXLINK) -shared two_file_test_1_pic.o two_file_test_2_pic.o
151 # The nonpic tests will fail on platforms which can not put non-PIC
152 # code into shared libraries, so we just don't run them in that case.
154 if FN_PTRS_IN_SO_WITHOUT_PIC
156 two_file_shared_1_nonpic_test_SOURCES = \
157 two_file_test_2.cc two_file_test_main.cc
158 two_file_shared_1_nonpic_test_DEPENDENCIES = \
159 gcctestdir/ld two_file_shared_1_nonpic.so
160 two_file_shared_1_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
161 two_file_shared_1_nonpic_test_LDADD = two_file_shared_1_nonpic.so
163 two_file_shared_2_nonpic_test_SOURCES = \
164 two_file_test_1.cc two_file_test_main.cc
165 two_file_shared_2_nonpic_test_DEPENDENCIES = \
166 gcctestdir/ld two_file_shared_2_nonpic.so
167 two_file_shared_2_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
168 two_file_shared_2_nonpic_test_LDADD = two_file_shared_2_nonpic.so
170 two_file_same_shared_nonpic_test_SOURCES = two_file_test_main.cc
171 two_file_same_shared_nonpic_test_DEPENDENCIES = \
172 gcctestdir/ld two_file_shared_nonpic.so
173 two_file_same_shared_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
174 two_file_same_shared_nonpic_test_LDADD = two_file_shared_nonpic.so
176 two_file_separate_shared_12_nonpic_test_SOURCES = two_file_test_main.cc
177 two_file_separate_shared_12_nonpic_test_DEPENDENCIES = \
178 gcctestdir/ld two_file_shared_1_nonpic.so two_file_shared_2_nonpic.so
179 two_file_separate_shared_12_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
180 two_file_separate_shared_12_nonpic_test_LDADD = \
181 two_file_shared_1_nonpic.so two_file_shared_2_nonpic.so
183 two_file_separate_shared_21_nonpic_test_SOURCES = two_file_test_main.cc
184 two_file_separate_shared_21_nonpic_test_DEPENDENCIES = \
185 gcctestdir/ld two_file_shared_1_nonpic.so two_file_shared_2_nonpic.so
186 two_file_separate_shared_21_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
187 two_file_separate_shared_21_nonpic_test_LDADD = \
188 two_file_shared_2_nonpic.so two_file_shared_1_nonpic.so
190 two_file_shared_1_nonpic.so: two_file_test_1.o
191 $(CXXLINK) -shared two_file_test_1.o
192 two_file_shared_2_nonpic.so: two_file_test_2.o
193 $(CXXLINK) -shared two_file_test_2.o
194 two_file_shared_nonpic.so: two_file_test_1.o two_file_test_2.o
195 $(CXXLINK) -shared two_file_test_1.o two_file_test_2.o
199 exception_test_SOURCES = \
200 exception_test_main.cc \
201 exception_test_1.cc \
202 exception_test_2.cc \
204 exception_test_DEPENDENCIES = gcctestdir/ld
205 exception_test_LDFLAGS = -Bgcctestdir/
207 exception_static_test_SOURCES = \
208 exception_test_main.cc \
209 exception_test_1.cc \
211 exception_static_test_DEPENDENCIES = gcctestdir/ld
212 exception_static_test_LDFLAGS = -Bgcctestdir/ -static
214 exception_shared_1_test_SOURCES = exception_test_2.cc exception_test_main.cc
215 exception_shared_1_test_DEPENDENCIES = gcctestdir/ld exception_shared_1.so
216 exception_shared_1_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
217 exception_shared_1_test_LDADD = exception_shared_1.so
219 exception_shared_2_test_SOURCES = exception_test_1.cc exception_test_main.cc
220 exception_shared_2_test_DEPENDENCIES = gcctestdir/ld exception_shared_2.so
221 exception_shared_2_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
222 exception_shared_2_test_LDADD = exception_shared_2.so
224 exception_same_shared_test_SOURCES = exception_test_main.cc
225 exception_same_shared_test_DEPENDENCIES = gcctestdir/ld exception_shared.so
226 exception_same_shared_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
227 exception_same_shared_test_LDADD = exception_shared.so
229 exception_separate_shared_12_test_SOURCES = exception_test_main.cc
230 exception_separate_shared_12_test_DEPENDENCIES = \
231 gcctestdir/ld exception_shared_1.so exception_shared_2.so
232 exception_separate_shared_12_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
233 exception_separate_shared_12_test_LDADD = \
234 exception_shared_1.so exception_shared_2.so
236 exception_separate_shared_21_test_SOURCES = exception_test_main.cc
237 exception_separate_shared_21_test_DEPENDENCIES = \
238 gcctestdir/ld exception_shared_1.so exception_shared_2.so
239 exception_separate_shared_21_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
240 exception_separate_shared_21_test_LDADD = \
241 exception_shared_2.so exception_shared_1.so
243 exception_test_1_pic.o: exception_test_1.cc
244 $(CXXCOMPILE) -c -fpic -o $@ $<
245 exception_test_2_pic.o: exception_test_2.cc
246 $(CXXCOMPILE) -c -fpic -o $@ $<
248 exception_shared_1.so: exception_test_1_pic.o
249 $(CXXLINK) -shared exception_test_1_pic.o
250 exception_shared_2.so: exception_test_2_pic.o
251 $(CXXLINK) -shared exception_test_2_pic.o
252 exception_shared.so: exception_test_1_pic.o exception_test_2_pic.o
253 $(CXXLINK) -shared exception_test_1_pic.o exception_test_2_pic.o