Only run static TLS tests on glibc 2.4 or later.
[deliverable/binutils-gdb.git] / gold / testsuite / Makefile.am
1 # Process this file with automake to generate Makefile.in
2
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.
6
7 AUTOMAKE_OPTIONS =
8
9 # The two_file_test tests -fmerge-constants, so we simply always turn
10 # it on. This may need to be controlled by a configure option
11 # eventually.
12 AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CXXFLAGS) -fmerge-constants
13
14 INCLUDES = -D_GNU_SOURCE \
15 -I$(srcdir) -I$(srcdir)/.. -I$(srcdir)/../../include \
16 -I$(srcdir)/../../elfcpp \
17 -DLOCALEDIR="\"$(datadir)/locale\"" \
18 @INCINTL@
19
20 if GCC
21 if NATIVE_LINKER
22
23 NATIVE_PROGS = \
24 constructor_test \
25 constructor_static_test \
26 two_file_test \
27 two_file_static_test \
28 two_file_pic_test \
29 two_file_shared_1_test \
30 two_file_shared_2_test \
31 two_file_same_shared_test \
32 two_file_separate_shared_12_test \
33 two_file_separate_shared_21_test \
34 exception_test \
35 exception_static_test \
36 exception_shared_1_test \
37 exception_shared_2_test \
38 exception_same_shared_test \
39 exception_separate_shared_12_test \
40 exception_separate_shared_21_test
41
42 if FN_PTRS_IN_SO_WITHOUT_PIC
43
44 NATIVE_PROGS += \
45 two_file_shared_1_nonpic_test \
46 two_file_shared_2_nonpic_test \
47 two_file_same_shared_nonpic_test \
48 two_file_separate_shared_12_nonpic_test \
49 two_file_separate_shared_21_nonpic_test
50
51 endif
52
53 if TLS
54
55 NATIVE_PROGS += \
56 tls_test \
57 tls_pic_test \
58 tls_shared_test
59
60 if STATIC_TLS
61
62 NATIVE_PROGS += \
63 tls_static_test \
64 tls_static_pic_test
65
66 endif
67
68 if FN_PTRS_IN_SO_WITHOUT_PIC
69
70 NATIVE_PROGS += \
71 tls_shared_nonpic_test
72
73 endif
74 endif
75
76 NATIVE_TESTING = \
77 basic_test \
78 basic_pic_test \
79 basic_static_test \
80 basic_static_pic_test \
81 $(NATIVE_PROGS)
82
83 endif
84 endif
85
86 TESTS = object_unittest $(NATIVE_TESTING)
87
88 check_LIBRARIES = libgoldtest.a
89 libgoldtest_a_SOURCES = test.cc testmain.cc testfile.cc
90
91 DEPENDENCIES = \
92 libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL_DEP)
93 LDADD = libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL)
94
95 check_PROGRAMS = object_unittest $(NATIVE_PROGS)
96
97 object_unittest_SOURCES = object_unittest.cc
98
99 if GCC
100 if NATIVE_LINKER
101
102 gcctestdir/ld: ../ld-new
103 test -d gcctestdir || mkdir -p gcctestdir
104 rm -f gcctestdir/ld
105 (cd gcctestdir && $(LN_S) ../../ld-new ld)
106
107 # Override the default CXXFLAGS--we don't want any optimization
108 basic_test.o: basic_test.cc
109 $(CXXCOMPILE) -O0 -c -o $@ $<
110 basic_test: basic_test.o gcctestdir/ld
111 $(CXXLINK) -Bgcctestdir/ basic_test.o
112 basic_static_test: basic_test.o gcctestdir/ld
113 $(CXXLINK) -Bgcctestdir/ -static basic_test.o
114
115 basic_pic_test.o: basic_test.cc
116 $(CXXCOMPILE) -O0 -c -fpic -o $@ $<
117 basic_pic_test: basic_pic_test.o gcctestdir/ld
118 $(CXXLINK) -Bgcctestdir/ basic_pic_test.o
119 basic_static_pic_test: basic_pic_test.o gcctestdir/ld
120 $(CXXLINK) -Bgcctestdir/ -static basic_pic_test.o
121
122 constructor_test_SOURCES = constructor_test.cc
123 constructor_test_DEPENDENCIES = gcctestdir/ld
124 constructor_test_LDFLAGS = -Bgcctestdir/
125
126 constructor_static_test_SOURCES = constructor_test.cc
127 constructor_static_test_DEPENDENCIES = gcctestdir/ld
128 constructor_static_test_LDFLAGS = -Bgcctestdir/ -static
129
130 two_file_test_SOURCES = \
131 two_file_test_1.cc \
132 two_file_test_2.cc \
133 two_file_test_main.cc \
134 two_file_test.h
135 two_file_test_DEPENDENCIES = gcctestdir/ld
136 two_file_test_LDFLAGS = -Bgcctestdir/
137
138 two_file_static_test_SOURCES = \
139 two_file_test_1.cc two_file_test_2.cc two_file_test_main.cc
140 two_file_static_test_DEPENDENCIES = gcctestdir/ld
141 two_file_static_test_LDFLAGS = -Bgcctestdir/ -static
142
143 two_file_pic_test_SOURCES = two_file_test_main.cc
144 two_file_pic_test_DEPENDENCIES = \
145 gcctestdir/ld two_file_test_1_pic.o two_file_test_2_pic.o
146 two_file_pic_test_LDFLAGS = -Bgcctestdir/
147 two_file_pic_test_LDADD = two_file_test_1_pic.o two_file_test_2_pic.o
148
149 two_file_shared_1_test_SOURCES = two_file_test_2.cc two_file_test_main.cc
150 two_file_shared_1_test_DEPENDENCIES = gcctestdir/ld two_file_shared_1.so
151 two_file_shared_1_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
152 two_file_shared_1_test_LDADD = two_file_shared_1.so
153
154 two_file_shared_2_test_SOURCES = two_file_test_1.cc two_file_test_main.cc
155 two_file_shared_2_test_DEPENDENCIES = gcctestdir/ld two_file_shared_2.so
156 two_file_shared_2_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
157 two_file_shared_2_test_LDADD = two_file_shared_2.so
158
159 two_file_same_shared_test_SOURCES = two_file_test_main.cc
160 two_file_same_shared_test_DEPENDENCIES = gcctestdir/ld two_file_shared.so
161 two_file_same_shared_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
162 two_file_same_shared_test_LDADD = two_file_shared.so
163
164 two_file_separate_shared_12_test_SOURCES = two_file_test_main.cc
165 two_file_separate_shared_12_test_DEPENDENCIES = \
166 gcctestdir/ld two_file_shared_1.so two_file_shared_2.so
167 two_file_separate_shared_12_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
168 two_file_separate_shared_12_test_LDADD = \
169 two_file_shared_1.so two_file_shared_2.so
170
171 two_file_separate_shared_21_test_SOURCES = two_file_test_main.cc
172 two_file_separate_shared_21_test_DEPENDENCIES = \
173 gcctestdir/ld two_file_shared_1.so two_file_shared_2.so
174 two_file_separate_shared_21_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
175 two_file_separate_shared_21_test_LDADD = \
176 two_file_shared_2.so two_file_shared_1.so
177
178 two_file_test_1_pic.o: two_file_test_1.cc
179 $(CXXCOMPILE) -c -fpic -o $@ $<
180 two_file_test_2_pic.o: two_file_test_2.cc
181 $(CXXCOMPILE) -c -fpic -o $@ $<
182
183 two_file_shared_1.so: two_file_test_1_pic.o
184 $(CXXLINK) -shared two_file_test_1_pic.o
185 two_file_shared_2.so: two_file_test_2_pic.o
186 $(CXXLINK) -shared two_file_test_2_pic.o
187 two_file_shared.so: two_file_test_1_pic.o two_file_test_2_pic.o
188 $(CXXLINK) -shared two_file_test_1_pic.o two_file_test_2_pic.o
189
190 # The nonpic tests will fail on platforms which can not put non-PIC
191 # code into shared libraries, so we just don't run them in that case.
192
193 if FN_PTRS_IN_SO_WITHOUT_PIC
194
195 two_file_shared_1_nonpic_test_SOURCES = \
196 two_file_test_2.cc two_file_test_main.cc
197 two_file_shared_1_nonpic_test_DEPENDENCIES = \
198 gcctestdir/ld two_file_shared_1_nonpic.so
199 two_file_shared_1_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
200 two_file_shared_1_nonpic_test_LDADD = two_file_shared_1_nonpic.so
201
202 two_file_shared_2_nonpic_test_SOURCES = \
203 two_file_test_1.cc two_file_test_main.cc
204 two_file_shared_2_nonpic_test_DEPENDENCIES = \
205 gcctestdir/ld two_file_shared_2_nonpic.so
206 two_file_shared_2_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
207 two_file_shared_2_nonpic_test_LDADD = two_file_shared_2_nonpic.so
208
209 two_file_same_shared_nonpic_test_SOURCES = two_file_test_main.cc
210 two_file_same_shared_nonpic_test_DEPENDENCIES = \
211 gcctestdir/ld two_file_shared_nonpic.so
212 two_file_same_shared_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
213 two_file_same_shared_nonpic_test_LDADD = two_file_shared_nonpic.so
214
215 two_file_separate_shared_12_nonpic_test_SOURCES = two_file_test_main.cc
216 two_file_separate_shared_12_nonpic_test_DEPENDENCIES = \
217 gcctestdir/ld two_file_shared_1_nonpic.so two_file_shared_2_nonpic.so
218 two_file_separate_shared_12_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
219 two_file_separate_shared_12_nonpic_test_LDADD = \
220 two_file_shared_1_nonpic.so two_file_shared_2_nonpic.so
221
222 two_file_separate_shared_21_nonpic_test_SOURCES = two_file_test_main.cc
223 two_file_separate_shared_21_nonpic_test_DEPENDENCIES = \
224 gcctestdir/ld two_file_shared_1_nonpic.so two_file_shared_2_nonpic.so
225 two_file_separate_shared_21_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
226 two_file_separate_shared_21_nonpic_test_LDADD = \
227 two_file_shared_2_nonpic.so two_file_shared_1_nonpic.so
228
229 two_file_shared_1_nonpic.so: two_file_test_1.o
230 $(CXXLINK) -shared two_file_test_1.o
231 two_file_shared_2_nonpic.so: two_file_test_2.o
232 $(CXXLINK) -shared two_file_test_2.o
233 two_file_shared_nonpic.so: two_file_test_1.o two_file_test_2.o
234 $(CXXLINK) -shared two_file_test_1.o two_file_test_2.o
235
236 endif
237
238 exception_test_SOURCES = \
239 exception_test_main.cc \
240 exception_test_1.cc \
241 exception_test_2.cc \
242 exception_test.h
243 exception_test_DEPENDENCIES = gcctestdir/ld
244 exception_test_LDFLAGS = -Bgcctestdir/
245
246 exception_static_test_SOURCES = \
247 exception_test_main.cc \
248 exception_test_1.cc \
249 exception_test_2.cc
250 exception_static_test_DEPENDENCIES = gcctestdir/ld
251 exception_static_test_LDFLAGS = -Bgcctestdir/ -static
252
253 exception_shared_1_test_SOURCES = exception_test_2.cc exception_test_main.cc
254 exception_shared_1_test_DEPENDENCIES = gcctestdir/ld exception_shared_1.so
255 exception_shared_1_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
256 exception_shared_1_test_LDADD = exception_shared_1.so
257
258 exception_shared_2_test_SOURCES = exception_test_1.cc exception_test_main.cc
259 exception_shared_2_test_DEPENDENCIES = gcctestdir/ld exception_shared_2.so
260 exception_shared_2_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
261 exception_shared_2_test_LDADD = exception_shared_2.so
262
263 exception_same_shared_test_SOURCES = exception_test_main.cc
264 exception_same_shared_test_DEPENDENCIES = gcctestdir/ld exception_shared.so
265 exception_same_shared_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
266 exception_same_shared_test_LDADD = exception_shared.so
267
268 exception_separate_shared_12_test_SOURCES = exception_test_main.cc
269 exception_separate_shared_12_test_DEPENDENCIES = \
270 gcctestdir/ld exception_shared_1.so exception_shared_2.so
271 exception_separate_shared_12_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
272 exception_separate_shared_12_test_LDADD = \
273 exception_shared_1.so exception_shared_2.so
274
275 exception_separate_shared_21_test_SOURCES = exception_test_main.cc
276 exception_separate_shared_21_test_DEPENDENCIES = \
277 gcctestdir/ld exception_shared_1.so exception_shared_2.so
278 exception_separate_shared_21_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
279 exception_separate_shared_21_test_LDADD = \
280 exception_shared_2.so exception_shared_1.so
281
282 exception_test_1_pic.o: exception_test_1.cc
283 $(CXXCOMPILE) -c -fpic -o $@ $<
284 exception_test_2_pic.o: exception_test_2.cc
285 $(CXXCOMPILE) -c -fpic -o $@ $<
286
287 exception_shared_1.so: exception_test_1_pic.o
288 $(CXXLINK) -shared exception_test_1_pic.o
289 exception_shared_2.so: exception_test_2_pic.o
290 $(CXXLINK) -shared exception_test_2_pic.o
291 exception_shared.so: exception_test_1_pic.o exception_test_2_pic.o
292 $(CXXLINK) -shared exception_test_1_pic.o exception_test_2_pic.o
293
294 if TLS
295
296 tls_test_SOURCES = tls_test.cc tls_test_file2.cc tls_test_main.cc tls_test.h
297 tls_test_DEPENDENCIES = gcctestdir/ld
298 tls_test_LDFLAGS = -Bgcctestdir/
299 tls_test_LDADD = -lpthread
300
301 tls_pic_test_SOURCES = tls_test_main.cc
302 tls_pic_test_DEPENDENCIES = gcctestdir/ld tls_test_pic.o tls_test_file2_pic.o
303 tls_pic_test_LDFLAGS = -Bgcctestdir/
304 tls_pic_test_LDADD = tls_test_pic.o tls_test_file2_pic.o -lpthread
305
306 tls_static_test_SOURCES = tls_test.cc tls_test_file2.cc tls_test_main.cc
307 tls_static_test_DEPENDENCIES = gcctestdir/ld
308 tls_static_test_LDFLAGS = -Bgcctestdir/ -static
309 tls_static_test_LDADD = -lpthread
310
311 tls_static_pic_test_SOURCES = tls_test_main.cc
312 tls_static_pic_test_DEPENDENCIES = gcctestdir/ld tls_test_pic.o tls_test_file2_pic.o
313 tls_static_pic_test_LDFLAGS = -Bgcctestdir/ -static
314 tls_static_pic_test_LDADD = tls_test_pic.o tls_test_file2_pic.o -lpthread
315
316 tls_shared_test_SOURCES = tls_test_main.cc
317 tls_shared_test_DEPENDENCIES = gcctestdir/ld tls_test_shared.so
318 tls_shared_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
319 tls_shared_test_LDADD = tls_test_shared.so -lpthread
320
321 tls_test_pic.o: tls_test.cc
322 $(CXXCOMPILE) -c -fpic -o $@ $<
323
324 tls_test_file2_pic.o: tls_test_file2.cc
325 $(CXXCOMPILE) -c -fpic -o $@ $<
326
327 tls_test_shared.so: tls_test_pic.o tls_test_file2_pic.o
328 $(CXXLINK) -shared tls_test_pic.o tls_test_file2_pic.o
329
330 if FN_PTRS_IN_SO_WITHOUT_PIC
331
332 tls_shared_nonpic_test_SOURCES = tls_test_main.cc
333 tls_shared_nonpic_test_DEPENDENCIES = gcctestdir/ld tls_test_shared_nonpic.so
334 tls_shared_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
335 tls_shared_nonpic_test_LDADD = tls_test_shared_nonpic.so -lpthread
336
337 tls_test_shared_nonpic.so: tls_test.o tls_test_file2.o
338 $(CXXLINK) -shared tls_test.o tls_test_file2.o
339
340 endif
341
342 endif
343
344 endif
345 endif
This page took 0.038137 seconds and 5 git commands to generate.