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