# Process this file with automake to generate Makefile.in

# As far as I can tell automake testing support assumes that the build
# system and the host system are the same.  So these tests will not
# work when building with a cross-compiler.

# Ignore warning about AM_PROG_CC_C_O due to large_CFLAGS
AUTOMAKE_OPTIONS = foreign -Wno-portability

# This is where we get zlib from.  zlib is in ../../zlib unless we were
# configured with --with-system-zlib, in which case ../../zlib either
# doesn't exist or not configured.
ZLIB = -L../../zlib -lz

# The two_file_test tests -fmerge-constants, so we simply always turn
# it on.  For compilers that do not support the command-line option,
# we assume they just always emit SHF_MERGE sections unconditionally.
AM_CFLAGS = $(WARN_CFLAGS) $(LFS_CFLAGS) $(MERGE_CONSTANTS_FLAG)
AM_CXXFLAGS = $(WARN_CXXFLAGS) $(LFS_CFLAGS) $(MERGE_CONSTANTS_FLAG)

AM_CPPFLAGS = \
	-I$(srcdir) -I$(srcdir)/.. -I$(srcdir)/../../include \
	-I$(srcdir)/../../elfcpp -I.. \
	-DLOCALEDIR="\"$(datadir)/locale\"" \
	@INCINTL@

# Some versions of GCC now automatically enable linker plugins,
# but we want to run our tests without GCC's plugins.
if HAVE_NO_USE_LINKER_PLUGIN
OPT_NO_PLUGINS = -fno-use-linker-plugin
endif

# COMPILE1, LINK1, CXXCOMPILE1, CXXLINK1 are renamed from COMPILE, LINK,
# CXXCOMPILE and CXXLINK generated by automake 1.11.1.  FIXME: they should
# be updated if they are different from automake used by gold.
COMPILE1 = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LINK1 = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(OPT_NO_PLUGINS) \
	$(AM_LDFLAGS) $(LDFLAGS) -o $@
CXXCOMPILE1 = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
CXXLINK1 = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(OPT_NO_PLUGINS) \
	$(AM_LDFLAGS) $(LDFLAGS) -o $@

# Strip out -Wp,-D_FORTIFY_SOURCE=, which is irrelevant for the gold
# testsuite and incompatible with -O0 used in gold tests, from
# COMPILE, LINK, CXXCOMPILE and CXXLINK.
COMPILE = `echo $(COMPILE1) | sed -e 's/-Wp,-D_FORTIFY_SOURCE=[0-9[0-9]]*//'`
LINK = `echo $(LINK1) | sed -e 's/-Wp,-D_FORTIFY_SOURCE=[0-9][0-9]*//'`
CXXCOMPILE = `echo $(CXXCOMPILE1) | sed -e 's/-Wp,-D_FORTIFY_SOURCE=[0-9][0-9]*//'`
CXXLINK = `echo $(CXXLINK1) | sed -e 's/-Wp,-D_FORTIFY_SOURCE=[0-9][0-9]*//'`

# Strip out -static-libgcc and -static-libstdc++ options, for tests
# that must have these libraries linked dynamically.  The -shared-libgcc
# option does not work correctly, and there is no -shared-libstdc++ option.
# (See GCC PR 55781 and PR 55782.)
CXXLINK_S = `echo $(CXXLINK1) | sed -e 's/-static-lib\\(gcc\\|stdc++\\)//g'`

TEST_READELF = $(top_builddir)/../binutils/readelf
TEST_OBJDUMP = $(top_builddir)/../binutils/objdump
TEST_OBJCOPY = $(top_builddir)/../binutils/objcopy
TEST_CXXFILT = $(top_builddir)/../binutils/cxxfilt
TEST_STRIP = $(top_builddir)/../binutils/strip-new
TEST_AR = $(top_builddir)/../binutils/ar
TEST_NM = $(top_builddir)/../binutils/nm-new
TEST_AS = $(top_builddir)/../gas/as-new

if PLUGINS
LIBDL = -ldl
endif

if THREADS
THREADSLIB = -lpthread
endif

if OMP_SUPPORT
TLS_TEST_C_CFLAGS = -fopenmp
endif

# 'make clean' is good about deleting some intermediate files (such as
# .o's), but not all of them (such as .so's and .err files).  We
# improve on that here.  automake-1.9 info docs say "mostlyclean" is
# the right choice for files 'make' builds that people rebuild.
MOSTLYCLEANFILES = *.so *.syms *.stdout

# Export make variables to the shell scripts so that they can see
# (for example) DEFAULT_TARGET.
.EXPORT_ALL_VARIABLES:

# We will add to these later, for each individual test.  Note
# that we add each test under check_SCRIPTS or check_PROGRAMS;
# the TESTS variable is automatically populated from these.
check_SCRIPTS =
check_DATA =
check_PROGRAMS =
BUILT_SOURCES =

TESTS = $(check_SCRIPTS) $(check_PROGRAMS)

# ---------------------------------------------------------------------
# These tests test the internals of gold (unittests).

# Infrastucture needed for the unittests
check_LIBRARIES = libgoldtest.a
libgoldtest_a_SOURCES = test.cc testmain.cc testfile.cc

DEPENDENCIES = \
	libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL_DEP)
LDADD = libgoldtest.a ../libgold.a ../../libiberty/libiberty.a $(LIBINTL) \
	$(THREADSLIB) $(LIBDL) $(ZLIB)


# The unittests themselves
if NATIVE_OR_CROSS_LINKER
if GCC

# Infrastucture needed for the unittests: a directory where the linker
# is named 'ld'.  This is because the -B flag appends 'ld' to its arg.
gcctestdir/ld: ../ld-new
	test -d gcctestdir || mkdir -p gcctestdir
	rm -f gcctestdir/ld
	(cd gcctestdir && $(LN_S) ../../ld-new ld)

# Some tests require the latest features of an in-tree assembler.
gcctestdir/as: $(TEST_AS)
	test -d gcctestdir || mkdir -p gcctestdir
	rm -f gcctestdir/as
	(cd gcctestdir && $(LN_S) $(abs_top_builddir)/../gas/as-new as)

endif GCC

check_PROGRAMS += object_unittest
object_unittest_SOURCES = object_unittest.cc

check_PROGRAMS += binary_unittest
binary_unittest_SOURCES = binary_unittest.cc

check_PROGRAMS += leb128_unittest
leb128_unittest_SOURCES = leb128_unittest.cc

check_PROGRAMS += overflow_unittest
overflow_unittest_SOURCES = overflow_unittest.cc
overflow_unittest.o: overflow_unittest.cc
	$(CXXCOMPILE) -O3 -c -o $@ $<

endif NATIVE_OR_CROSS_LINKER

# ---------------------------------------------------------------------
# These tests test the output of gold (end-to-end tests).  In
# particular, they make sure that gold can link "difficult" object
# files, and the resulting object files run correctly.  These can only
# run if we've built ld-new for the native architecture (that is,
# we're not cross-compiling it), since we run ld-new as part of these
# tests.  We use the gcc-specific flag '-B' to use our linker instead
# of the default linker, which is why we only run our tests under gcc.

if NATIVE_LINKER
if GCC

# Each of these .o's is a useful, small complete program.  They're
# particularly useful for making sure ld-new's flags do what they're
# supposed to (hence their names), but are used for many tests that
# don't actually involve analyzing input data.
flagstest_debug.o: constructor_test.cc
	$(CXXCOMPILE) -O0 -g -c -o $@ $<
flagstest_ndebug.o: constructor_test.cc
	$(CXXCOMPILE) -O0 -c -o $@ $<

check_SCRIPTS += incremental_test.sh
check_DATA += incremental_test.stdout
MOSTLYCLEANFILES += incremental_test incremental_test.cmdline
incremental_test_1.o: incremental_test_1.c
	$(COMPILE) -O0 -c -ffunction-sections -g -o $@ $<
incremental_test_2.o: incremental_test_2.c
	$(COMPILE) -O0 -c -ffunction-sections -g -o $@ $<
incremental_test: incremental_test_1.o incremental_test_2.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -Wl,--incremental-full -Wl,-z,norelro incremental_test_1.o incremental_test_2.o -Wl,-debug 2> incremental_test.cmdline
incremental_test.stdout: incremental_test ../incremental-dump
	../incremental-dump incremental_test > $@

check_SCRIPTS += gc_comdat_test.sh
check_DATA += gc_comdat_test.stdout
MOSTLYCLEANFILES += gc_comdat_test
gc_comdat_test_1.o: gc_comdat_test_1.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -g -o $@ $<
gc_comdat_test_2.o: gc_comdat_test_2.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -g -o $@ $<
gc_comdat_test: gc_comdat_test_1.o gc_comdat_test_2.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--gc-sections gc_comdat_test_1.o gc_comdat_test_2.o
gc_comdat_test.stdout: gc_comdat_test
	$(TEST_NM) -C gc_comdat_test > gc_comdat_test.stdout

check_SCRIPTS += gc_tls_test.sh
check_DATA += gc_tls_test.stdout
MOSTLYCLEANFILES += gc_tls_test
gc_tls_test.o: gc_tls_test.cc
	$(CXXCOMPILE) -O0 -c -g -o $@ $<
gc_tls_test:gc_tls_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--gc-sections gc_tls_test.o
gc_tls_test.stdout: gc_tls_test
	$(TEST_NM) -C gc_tls_test > gc_tls_test.stdout

check_SCRIPTS += gc_orphan_section_test.sh
check_DATA += gc_orphan_section_test.stdout
MOSTLYCLEANFILES += gc_orphan_section_test
gc_orphan_section_test.o: gc_orphan_section_test.cc
	$(CXXCOMPILE) -O0 -c -g -o $@ $<
gc_orphan_section_test:gc_orphan_section_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--gc-sections gc_orphan_section_test.o
gc_orphan_section_test.stdout: gc_orphan_section_test
	$(TEST_NM) gc_orphan_section_test > gc_orphan_section_test.stdout

check_SCRIPTS += pr14265.sh
check_DATA += pr14265.stdout
MOSTLYCLEANFILES += pr14265
pr14265.o: pr14265.c
	$(COMPILE) -O0 -c -o $@ $<
pr14265: pr14265.o gcctestdir/ld $(srcdir)/pr14265.t
	$(LINK) -Bgcctestdir/ -Wl,--gc-sections -Wl,-T,$(srcdir)/pr14265.t -o $@ $<
pr14265.stdout: pr14265
	$(TEST_NM) --format=bsd --numeric-sort $< > $@

check_SCRIPTS += pr20717.sh
check_DATA += pr20717.stdout
MOSTLYCLEANFILES += pr20717
pr20717.o: pr20717.c
	$(COMPILE) -O0 -ffunction-sections -c -o $@ $<
pr20717: pr20717.o gcctestdir/ld $(srcdir)/pr20717.t
	$(LINK) -Bgcctestdir/ -Wl,--gc-sections -Wl,-T,$(srcdir)/pr20717.t -o $@ $<
pr20717.stdout: pr20717
	$(TEST_NM) $< > $@

check_SCRIPTS += gc_dynamic_list_test.sh
check_DATA += gc_dynamic_list_test.stdout
MOSTLYCLEANFILES += gc_dynamic_list_test
gc_dynamic_list_test.o: gc_dynamic_list_test.c
	$(COMPILE) -c -ffunction-sections -o $@ $<
gc_dynamic_list_test: gc_dynamic_list_test.o gcctestdir/ld $(srcdir)/gc_dynamic_list_test.t
	$(LINK) -Bgcctestdir/ -Wl,--gc-sections -Wl,--dynamic-list,$(srcdir)/gc_dynamic_list_test.t gc_dynamic_list_test.o
gc_dynamic_list_test.stdout: gc_dynamic_list_test
	$(TEST_NM) gc_dynamic_list_test > $@

check_SCRIPTS += icf_test.sh
check_DATA += icf_test.map
MOSTLYCLEANFILES += icf_test icf_test.map
icf_test.o: icf_test.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -g -o $@ $<
icf_test: icf_test.o gcctestdir/ld
	$(CXXLINK) -o icf_test -Bgcctestdir/ -Wl,--icf=all,-Map,icf_test.map icf_test.o
icf_test.map: icf_test
	@touch icf_test.map

check_SCRIPTS += icf_keep_unique_test.sh
check_DATA += icf_keep_unique_test.stdout
MOSTLYCLEANFILES += icf_keep_unique_test
icf_keep_unique_test.o: icf_keep_unique_test.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -g -o $@ $<
icf_keep_unique_test: icf_keep_unique_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--icf=all -Wl,--keep-unique,_Z11unique_funcv icf_keep_unique_test.o
icf_keep_unique_test.stdout: icf_keep_unique_test
	$(TEST_NM) -C $< > $@

check_SCRIPTS += icf_safe_test.sh
check_DATA += icf_safe_test_1.stdout icf_safe_test_2.stdout icf_safe_test.map
MOSTLYCLEANFILES += icf_safe_test icf_safe_test.map
icf_safe_test.o: icf_safe_test.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -g -o $@ $<
icf_safe_test: icf_safe_test.o gcctestdir/ld
	$(CXXLINK) -o icf_safe_test -Bgcctestdir/ -Wl,--icf=safe,-Map,icf_safe_test.map icf_safe_test.o
icf_safe_test.map: icf_safe_test
	@touch icf_safe_test.map
icf_safe_test_1.stdout: icf_safe_test
	$(TEST_NM) $< > $@
icf_safe_test_2.stdout: icf_safe_test
	$(TEST_READELF) -h $< > $@

check_SCRIPTS += icf_safe_pie_test.sh
check_DATA += icf_safe_pie_test_1.stdout icf_safe_pie_test_2.stdout icf_safe_pie_test.map
MOSTLYCLEANFILES += icf_safe_pie_test icf_safe_pie_test.map
icf_safe_pie_test.o: icf_safe_test.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -fPIE -g -o $@ $<
icf_safe_pie_test: icf_safe_pie_test.o gcctestdir/ld
	$(CXXLINK) -o icf_safe_pie_test -Bgcctestdir/ -Wl,--icf=safe,-Map,icf_safe_pie_test.map icf_safe_pie_test.o -pie
icf_safe_pie_test.map: icf_safe_pie_test
	@touch icf_safe_pie_test.map
icf_safe_pie_test_1.stdout: icf_safe_pie_test
	$(TEST_NM) $< > $@
icf_safe_pie_test_2.stdout: icf_safe_pie_test
	$(TEST_READELF) -h $< > $@

check_SCRIPTS += icf_safe_so_test.sh
check_DATA += icf_safe_so_test_1.stdout icf_safe_so_test_2.stdout icf_safe_so_test.map
MOSTLYCLEANFILES += icf_safe_so_test icf_safe_so_test.map
icf_safe_so_test.o: icf_safe_so_test.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -fPIC -g -o $@ $<
icf_safe_so_test: icf_safe_so_test.o gcctestdir/ld
	$(CXXLINK) -o icf_safe_so_test -Bgcctestdir/ -Wl,--icf=safe,-Map,icf_safe_so_test.map icf_safe_so_test.o -fPIC -shared
icf_safe_so_test.map:
	@touch icf_safe_so_test.map
icf_safe_so_test_1.stdout: icf_safe_so_test
	$(TEST_NM) $< > $@
icf_safe_so_test_2.stdout: icf_safe_so_test
	$(TEST_READELF) -h $< > $@

check_SCRIPTS += final_layout.sh
check_DATA += final_layout.stdout
MOSTLYCLEANFILES += final_layout final_layout_sequence.txt final_layout_script.lds
final_layout.o: final_layout.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections  -fdata-sections -g -o $@ $<
final_layout_sequence.txt:
	(echo "*_Z3barv*" && echo ".text._Z3bazv" && echo "*_Z3foov*" && echo "*global_varb*" && echo "*global_vara*" && echo "*global_varc*") > final_layout_sequence.txt
final_layout_script.lds:
	(echo "SECTIONS { .text : { *(.text*) } .got : { *(.got .toc) } .sbss : { *(.sbss*) } .bss : { *(.bss*) } }") > final_layout_script.lds
final_layout: final_layout.o final_layout_sequence.txt final_layout_script.lds gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--section-ordering-file,final_layout_sequence.txt -Wl,-T,final_layout_script.lds final_layout.o
final_layout.stdout: final_layout
	$(TEST_NM) -n --synthetic final_layout > final_layout.stdout

check_SCRIPTS += text_section_grouping.sh
check_DATA += text_section_grouping.stdout text_section_no_grouping.stdout
MOSTLYCLEANFILES += text_section_grouping text_section_no_grouping
text_section_grouping.o: text_section_grouping.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -g -o $@ $<
text_section_grouping: text_section_grouping.o gcctestdir/ld
	$(CXXLINK)  -Bgcctestdir/ text_section_grouping.o
text_section_no_grouping: text_section_grouping.o gcctestdir/ld
	$(CXXLINK)  -Bgcctestdir/ -Wl,--no-text-reorder text_section_grouping.o
text_section_grouping.stdout: text_section_grouping
	$(TEST_NM) -n --synthetic text_section_grouping > text_section_grouping.stdout
text_section_no_grouping.stdout: text_section_no_grouping
	$(TEST_NM) -n --synthetic text_section_no_grouping > text_section_no_grouping.stdout

check_SCRIPTS += section_sorting_name.sh
check_DATA += section_sorting_name.stdout
MOSTLYCLEANFILES += section_sorting_name
section_sorting_name.o: section_sorting_name.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -g -o $@ $<
section_sorting_name: section_sorting_name.o gcctestdir/ld
	$(CXXLINK)  -Bgcctestdir/ -Wl,--sort-section=name section_sorting_name.o
section_sorting_name.stdout: section_sorting_name
	$(TEST_NM) -n --synthetic section_sorting_name > section_sorting_name.stdout

check_SCRIPTS += keep_text_section_prefix.sh
check_DATA += keep_text_section_prefix_readelf.stdout keep_text_section_prefix_nm.stdout
MOSTLYCLEANFILES += keep_text_section_prefix
keep_text_section_prefix.o: keep_text_section_prefix.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -g -o $@ $<
keep_text_section_prefix: keep_text_section_prefix.o gcctestdir/ld
	$(CXXLINK)  -Bgcctestdir/ -Wl,-z,keep-text-section-prefix keep_text_section_prefix.o
keep_text_section_prefix_readelf.stdout: keep_text_section_prefix
	$(TEST_READELF) -Wl $< >$@
keep_text_section_prefix_nm.stdout: keep_text_section_prefix
	$(TEST_NM) -n $< >$@

check_PROGRAMS += icf_virtual_function_folding_test
MOSTLYCLEANFILES += icf_virtual_function_folding_test icf_virtual_function_folding_test.map
icf_virtual_function_folding_test.o: icf_virtual_function_folding_test.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -fPIE -g -o $@ $<
icf_virtual_function_folding_test: icf_virtual_function_folding_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--icf=all icf_virtual_function_folding_test.o -pie

check_SCRIPTS += icf_preemptible_functions_test.sh
check_DATA += icf_preemptible_functions_test.stdout
MOSTLYCLEANFILES += icf_preemptible_functions_test
icf_preemptible_functions_test.o: icf_preemptible_functions_test.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -fPIC -g -o $@ $<
icf_preemptible_functions_test: icf_preemptible_functions_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--icf=all icf_preemptible_functions_test.o -fPIC -shared
icf_preemptible_functions_test.stdout: icf_preemptible_functions_test
	$(TEST_NM) icf_preemptible_functions_test > icf_preemptible_functions_test.stdout

check_SCRIPTS += icf_string_merge_test.sh
check_DATA += icf_string_merge_test.stdout
MOSTLYCLEANFILES += icf_string_merge_test
icf_string_merge_test.o: icf_string_merge_test.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -fPIC -g -o $@ $<
icf_string_merge_test: icf_string_merge_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--icf=all icf_string_merge_test.o
icf_string_merge_test.stdout: icf_string_merge_test
	$(TEST_NM) icf_string_merge_test > icf_string_merge_test.stdout

check_SCRIPTS += icf_sht_rel_addend_test.sh
check_DATA += icf_sht_rel_addend_test.stdout
MOSTLYCLEANFILES += icf_sht_rel_addend_test
icf_sht_rel_addend_test_1.o: icf_sht_rel_addend_test_1.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -fPIC -g -o $@ $<
icf_sht_rel_addend_test_2.o: icf_sht_rel_addend_test_2.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections -fPIC -g -o $@ $<
icf_sht_rel_addend_test: icf_sht_rel_addend_test_1.o icf_sht_rel_addend_test_2.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--icf=all icf_sht_rel_addend_test_1.o icf_sht_rel_addend_test_2.o
icf_sht_rel_addend_test.stdout: icf_sht_rel_addend_test
	$(TEST_NM) icf_sht_rel_addend_test > icf_sht_rel_addend_test.stdout

check_PROGRAMS += large_symbol_alignment
large_symbol_alignment_SOURCES = large_symbol_alignment.cc
large_symbol_alignment_DEPENDENCIES = gcctestdir/ld
large_symbol_alignment_LDFLAGS = -Bgcctestdir/
large_symbol_alignment_LDADD =

check_SCRIPTS += merge_string_literals.sh
check_DATA += merge_string_literals.stdout
MOSTLYCLEANFILES += merge_string_literals
merge_string_literals_1.o: merge_string_literals_1.cc
	$(CXXCOMPILE) -O2 -c -fPIC -g -o $@ $<
merge_string_literals_2.o: merge_string_literals_2.cc
	$(CXXCOMPILE) -O2 -c -fPIC -g -o $@ $<
merge_string_literals: merge_string_literals_1.o merge_string_literals_2.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ merge_string_literals_1.o merge_string_literals_2.o -O2 -shared -nostdlib
merge_string_literals.stdout: merge_string_literals
	$(TEST_OBJDUMP) -s -j.rodata merge_string_literals > merge_string_literals.stdout

check_PROGRAMS += basic_test
check_PROGRAMS += basic_pic_test
basic_test.o: basic_test.cc
	$(CXXCOMPILE) -O0 -c -o $@ $<
basic_test: basic_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ basic_test.o

check_PROGRAMS += eh_test
eh_test_a.o: eh_test_a.cc
	$(CXXCOMPILE) -O0 -c -o $@ $<
eh_test_b.o: eh_test_b.cc
	$(CXXCOMPILE) -O0 -c -o $@ $<
eh_test: eh_test_a.o eh_test_b.o  gcctestdir/ld
	$(CXXLINK_S) -Bgcctestdir/ eh_test_a.o eh_test_b.o

check_SCRIPTS += eh_test_2.sh
check_DATA += eh_test_2.sects
MOSTLYCLEANFILES += eh_test_2 eh_test_2.sects
eh_test_r.o: eh_test_a.o eh_test_b.o gcctestdir/ld
	gcctestdir/ld -r -o $@ eh_test_a.o eh_test_b.o
eh_test_2: eh_test_r.o gcctestdir/ld
	$(CXXLINK_S) -Bgcctestdir/ -Wl,--eh-frame-hdr eh_test_r.o
eh_test_2.sects: eh_test_2
	$(TEST_READELF) -SW $< >$@ 2>/dev/null

if HAVE_STATIC
check_PROGRAMS += basic_static_test
basic_static_test: basic_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -static basic_test.o
endif

basic_pic_test.o: basic_test.cc
	$(CXXCOMPILE) -O0 -c -fpic -o $@ $<
basic_pic_test: basic_pic_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ basic_pic_test.o

if HAVE_STATIC
check_PROGRAMS += basic_static_pic_test
basic_static_pic_test: basic_pic_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -static basic_pic_test.o
endif

check_PROGRAMS += basic_pie_test
basic_pie_test.o: basic_test.cc
	$(CXXCOMPILE) -O0 -c -fpie -o $@ $<
basic_pie_test: basic_pie_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -pie basic_pie_test.o

check_PROGRAMS += constructor_test
constructor_test_SOURCES = constructor_test.cc
constructor_test_DEPENDENCIES = gcctestdir/ld
constructor_test_LDFLAGS = -Bgcctestdir/
constructor_test_LDADD =

if HAVE_STATIC
check_PROGRAMS += constructor_static_test
constructor_static_test_SOURCES = $(constructor_test_SOURCES)
constructor_static_test_DEPENDENCIES = $(constructor_test_DEPENDENCIES)
constructor_static_test_LDFLAGS = $(constructor_test_LDFLAGS) -static
constructor_static_test_LDADD = $(constructor_test_LDADD)
endif

check_PROGRAMS += two_file_test
check_PROGRAMS += two_file_pic_test
two_file_test_SOURCES = \
	two_file_test_1.cc \
	two_file_test_1b.cc \
	two_file_test_2.cc \
	two_file_test_main.cc \
	two_file_test.h
two_file_test_DEPENDENCIES = gcctestdir/ld
two_file_test_LDFLAGS = -Bgcctestdir/
two_file_test_LDADD =

if HAVE_STATIC
check_PROGRAMS += two_file_static_test
two_file_static_test_SOURCES = $(two_file_test_SOURCES)
two_file_static_test_DEPENDENCIES = $(two_file_test_DEPENDENCIES)
two_file_static_test_LDFLAGS = $(two_file_test_LDFLAGS) -static
two_file_static_test_LDADD = $(two_file_test_LDADD)
endif

two_file_pic_test_SOURCES = two_file_test_main.cc
two_file_pic_test_DEPENDENCIES = \
	gcctestdir/ld two_file_test_1_pic.o two_file_test_1b_pic.o two_file_test_2_pic.o
two_file_pic_test_LDFLAGS = -Bgcctestdir/
two_file_pic_test_LDADD = two_file_test_1_pic.o two_file_test_1b_pic.o two_file_test_2_pic.o


check_PROGRAMS += two_file_shared_1_test
check_PROGRAMS += two_file_shared_2_test
check_PROGRAMS += two_file_shared_1_pic_2_test
check_PROGRAMS += two_file_shared_2_pic_1_test
check_PROGRAMS += two_file_same_shared_test
check_PROGRAMS += two_file_separate_shared_12_test
check_PROGRAMS += two_file_separate_shared_21_test
two_file_test_1_pic.o: two_file_test_1.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
two_file_test_1b_pic.o: two_file_test_1b.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
two_file_test_2_pic.o: two_file_test_2.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
two_file_shared_1.so: two_file_test_1_pic.o two_file_test_1b_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared two_file_test_1_pic.o two_file_test_1b_pic.o
two_file_shared_2.so: two_file_test_2_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared two_file_test_2_pic.o
two_file_shared.so: two_file_test_1_pic.o two_file_test_1b_pic.o two_file_test_2_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared two_file_test_1_pic.o two_file_test_1b_pic.o two_file_test_2_pic.o

two_file_shared_1_test_SOURCES = two_file_test_2.cc two_file_test_main.cc
two_file_shared_1_test_DEPENDENCIES = gcctestdir/ld two_file_shared_1.so
two_file_shared_1_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_shared_1_test_LDADD = two_file_shared_1.so

two_file_shared_2_test_SOURCES = two_file_test_1.cc two_file_test_1b.cc two_file_test_main.cc
two_file_shared_2_test_DEPENDENCIES = gcctestdir/ld two_file_shared_2.so
two_file_shared_2_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_shared_2_test_LDADD = two_file_shared_2.so

two_file_shared_1_pic_2_test_SOURCES = two_file_test_main.cc
two_file_shared_1_pic_2_test_DEPENDENCIES = \
	gcctestdir/ld two_file_shared_2.so two_file_test_1_pic.o two_file_test_1b_pic.o
two_file_shared_1_pic_2_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_shared_1_pic_2_test_LDADD = two_file_test_1_pic.o two_file_test_1b_pic.o two_file_shared_2.so

two_file_shared_2_pic_1_test_SOURCES = two_file_test_main.cc
two_file_shared_2_pic_1_test_DEPENDENCIES = \
	gcctestdir/ld two_file_shared_1.so two_file_test_2_pic.o
two_file_shared_2_pic_1_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_shared_2_pic_1_test_LDADD = two_file_test_2_pic.o two_file_shared_1.so

two_file_same_shared_test_SOURCES = two_file_test_main.cc
two_file_same_shared_test_DEPENDENCIES = gcctestdir/ld two_file_shared.so
two_file_same_shared_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_same_shared_test_LDADD = two_file_shared.so

two_file_separate_shared_12_test_SOURCES = two_file_test_main.cc
two_file_separate_shared_12_test_DEPENDENCIES = \
	gcctestdir/ld two_file_shared_1.so two_file_shared_2.so
two_file_separate_shared_12_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_separate_shared_12_test_LDADD = \
	two_file_shared_1.so two_file_shared_2.so

two_file_separate_shared_21_test_SOURCES = two_file_test_main.cc
two_file_separate_shared_21_test_DEPENDENCIES = \
	gcctestdir/ld two_file_shared_1.so two_file_shared_2.so
two_file_separate_shared_21_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_separate_shared_21_test_LDADD = \
	two_file_shared_2.so two_file_shared_1.so

check_PROGRAMS += two_file_relocatable_test
two_file_relocatable_test_SOURCES = two_file_test_main.cc
two_file_relocatable_test_DEPENDENCIES = \
	gcctestdir/ld two_file_relocatable.o
two_file_relocatable_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_relocatable_test_LDADD = two_file_relocatable.o
two_file_relocatable.o: gcctestdir/ld two_file_test_1.o two_file_test_1b.o two_file_test_2.o
	gcctestdir/ld -r -o $@ two_file_test_1.o two_file_test_1b.o two_file_test_2.o

check_PROGRAMS += two_file_pie_test
two_file_test_1_pie.o: two_file_test_1.cc
	$(CXXCOMPILE) -c -fpie -o $@ $<
two_file_test_1b_pie.o: two_file_test_1b.cc
	$(CXXCOMPILE) -c -fpie -o $@ $<
two_file_test_2_pie.o: two_file_test_2.cc
	$(CXXCOMPILE) -c -fpie -o $@ $<
two_file_test_main_pie.o: two_file_test_main.cc
	$(CXXCOMPILE) -c -fpie -o $@ $<
two_file_pie_test: two_file_test_1_pie.o two_file_test_1b_pie.o \
		two_file_test_2_pie.o two_file_test_main_pie.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -pie two_file_test_1_pie.o two_file_test_1b_pie.o two_file_test_2_pie.o two_file_test_main_pie.o

check_PROGRAMS += pie_copyrelocs_test
pie_copyrelocs_test_SOURCES = pie_copyrelocs_test.cc
pie_copyrelocs_test_DEPENDENCIES = gcctestdir/ld pie_copyrelocs_shared_test.so
pie_copyrelocs_test_CXXFLAGS = -fno-exceptions -fno-asynchronous-unwind-tables
pie_copyrelocs_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,. -pie
pie_copyrelocs_test_LDADD = pie_copyrelocs_shared_test.so
pie_copyrelocs_shared_test.o: pie_copyrelocs_shared_test.cc
	$(CXXCOMPILE) -O2 -fpic -c -o $@ $<
pie_copyrelocs_shared_test.so: pie_copyrelocs_shared_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared pie_copyrelocs_shared_test.o

check_PROGRAMS += weak_unresolved_symbols_test
weak_unresolved_symbols_test_SOURCES = weak_unresolved_symbols_test.cc
weak_unresolved_symbols_test_CXXFLAGS = -fPIE
weak_unresolved_symbols_test_LDFLAGS = -Bgcctestdir/ -pie -Wl,--weak-unresolved-symbols

check_SCRIPTS += two_file_shared.sh
check_DATA += two_file_shared.dbg
MOSTLYCLEANFILES += two_file_shared.dbg
two_file_shared.dbg: two_file_shared.so
	$(TEST_READELF) -w $< >$@ 2>/dev/null

# The nonpic tests will fail on platforms which can not put non-PIC
# code into shared libraries, so we just don't run them in that case.
if FN_PTRS_IN_SO_WITHOUT_PIC

check_PROGRAMS += two_file_shared_1_nonpic_test
check_PROGRAMS += two_file_shared_2_nonpic_test
check_PROGRAMS += two_file_same_shared_nonpic_test
check_PROGRAMS += two_file_separate_shared_12_nonpic_test
check_PROGRAMS += two_file_separate_shared_21_nonpic_test
check_PROGRAMS += two_file_mixed_shared_test
check_PROGRAMS += two_file_mixed_2_shared_test
two_file_shared_1_nonpic.so: two_file_test_1.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared two_file_test_1.o two_file_test_1b.o -Wl,-z,notext
two_file_shared_2_nonpic.so: two_file_test_2.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared two_file_test_2.o
two_file_shared_nonpic.so: two_file_test_1.o two_file_test_1b.o two_file_test_2.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared two_file_test_1.o two_file_test_1b.o two_file_test_2.o -Wl,-z,notext
two_file_shared_mixed.so: two_file_test_1_pic.o two_file_test_1b_pic.o two_file_test_2.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared two_file_test_1_pic.o two_file_test_1b_pic.o two_file_test_2.o -Wl,-z,notext
two_file_shared_mixed_1.so: two_file_test_1.o two_file_test_1b_pic.o two_file_shared_2.so gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared two_file_test_1.o two_file_test_1b_pic.o two_file_shared_2.so -Wl,-z,notext

two_file_shared_1_nonpic_test_SOURCES = \
	two_file_test_2.cc two_file_test_main.cc
two_file_shared_1_nonpic_test_DEPENDENCIES = \
	gcctestdir/ld two_file_shared_1_nonpic.so
two_file_shared_1_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_shared_1_nonpic_test_LDADD = two_file_shared_1_nonpic.so

two_file_shared_2_nonpic_test_SOURCES = \
	two_file_test_1.cc two_file_test_1b.cc two_file_test_main.cc
two_file_shared_2_nonpic_test_DEPENDENCIES = \
	gcctestdir/ld two_file_shared_2_nonpic.so
two_file_shared_2_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_shared_2_nonpic_test_LDADD = two_file_shared_2_nonpic.so

two_file_same_shared_nonpic_test_SOURCES = two_file_test_main.cc
two_file_same_shared_nonpic_test_DEPENDENCIES = \
	gcctestdir/ld two_file_shared_nonpic.so
two_file_same_shared_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_same_shared_nonpic_test_LDADD = two_file_shared_nonpic.so

two_file_separate_shared_12_nonpic_test_SOURCES = two_file_test_main.cc
two_file_separate_shared_12_nonpic_test_DEPENDENCIES = \
	gcctestdir/ld two_file_shared_1_nonpic.so two_file_shared_2_nonpic.so
two_file_separate_shared_12_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_separate_shared_12_nonpic_test_LDADD = \
	two_file_shared_1_nonpic.so two_file_shared_2_nonpic.so

two_file_separate_shared_21_nonpic_test_SOURCES = two_file_test_main.cc
two_file_separate_shared_21_nonpic_test_DEPENDENCIES = \
	gcctestdir/ld two_file_shared_1_nonpic.so two_file_shared_2_nonpic.so
two_file_separate_shared_21_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_separate_shared_21_nonpic_test_LDADD = \
	two_file_shared_2_nonpic.so two_file_shared_1_nonpic.so

two_file_mixed_shared_test_SOURCES = two_file_test_main.cc
two_file_mixed_shared_test_DEPENDENCIES = gcctestdir/ld two_file_shared_mixed.so
two_file_mixed_shared_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_mixed_shared_test_LDADD = two_file_shared_mixed.so

two_file_mixed_2_shared_test_SOURCES = two_file_test_main.cc
two_file_mixed_2_shared_test_DEPENDENCIES = gcctestdir/ld two_file_shared_mixed_1.so two_file_shared_2.so
two_file_mixed_2_shared_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
two_file_mixed_2_shared_test_LDADD = two_file_shared_mixed_1.so two_file_shared_2.so

check_PROGRAMS += two_file_mixed_pie_test
two_file_mixed_pie_test: two_file_test_1.o two_file_test_1b_pie.o \
		two_file_test_main_pie.o two_file_shared_2.so gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,-R,. -pie two_file_test_1.o two_file_test_1b_pie.o two_file_test_main_pie.o two_file_shared_2.so

endif FN_PTRS_IN_SO_WITHOUT_PIC

check_PROGRAMS += two_file_strip_test
two_file_strip_test: two_file_test
	$(TEST_STRIP) -o two_file_strip_test two_file_test

check_PROGRAMS += two_file_same_shared_strip_test
two_file_same_shared_strip_test_SOURCES = two_file_test_main.cc
two_file_same_shared_strip_test_DEPENDENCIES = \
	gcctestdir/ld two_file_shared_strip.so
two_file_same_shared_strip_test_LDFLAGS = -Bgcctestdir/ -Wl,-R.
two_file_same_shared_strip_test_LDADD = two_file_shared_strip.so
two_file_shared_strip.so: two_file_shared.so
	$(TEST_STRIP) -S -o two_file_shared_strip.so two_file_shared.so

check_PROGRAMS += common_test_1
common_test_1_SOURCES = common_test_1.c
common_test_1_DEPENDENCIES = gcctestdir/ld
common_test_1_LDFLAGS = -Bgcctestdir/
common_test_1_LDADD =

check_PROGRAMS += common_test_2
common_test_2_SOURCES = common_test_1.c
common_test_2_DEPENDENCIES = common_test_2.so common_test_3.so gcctestdir/ld
common_test_2_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
common_test_2_LDADD = common_test_2.so common_test_3.so
common_test_2_pic.o: common_test_2.c
	$(COMPILE) -c -fpic -o $@ $<
common_test_2.so: common_test_2_pic.o common_test_3.so gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared common_test_2_pic.o common_test_3.so
common_test_3_pic.o: common_test_3.c
	$(COMPILE) -c -fpic -o $@ $<
common_test_3.so: common_test_3_pic.o ver_test_2.script gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared common_test_3_pic.o -Wl,--version-script,$(srcdir)/ver_test_2.script

check_PROGRAMS += exception_test
check_PROGRAMS += exception_shared_1_test
check_PROGRAMS += exception_shared_2_test
check_PROGRAMS += exception_same_shared_test
check_PROGRAMS += exception_separate_shared_12_test
check_PROGRAMS += exception_separate_shared_21_test
exception_test_1_pic.o: exception_test_1.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
exception_test_2_pic.o: exception_test_2.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
exception_shared_1.so: exception_test_1_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared exception_test_1_pic.o
exception_shared_2.so: exception_test_2_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared exception_test_2_pic.o
exception_shared.so: exception_test_1_pic.o exception_test_2_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared exception_test_1_pic.o exception_test_2_pic.o

exception_test_SOURCES = \
	exception_test_main.cc \
	exception_test_1.cc \
	exception_test_2.cc \
	exception_test.h
exception_test_DEPENDENCIES = gcctestdir/ld
exception_test_LDFLAGS = -Bgcctestdir/
exception_test_LDADD =

if HAVE_STATIC
check_PROGRAMS += exception_static_test
exception_static_test_SOURCES = $(exception_test_SOURCES)
exception_static_test_DEPENDENCIES = $(exception_test_DEPENDENCIES)
exception_static_test_LDFLAGS = $(exception_test_LDFLAGS) -static
exception_static_test_LDADD = $(exception_test_LDADD)
endif

exception_shared_1_test_SOURCES = exception_test_2.cc exception_test_main.cc
exception_shared_1_test_DEPENDENCIES = gcctestdir/ld exception_shared_1.so
exception_shared_1_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
exception_shared_1_test_LDADD = exception_shared_1.so

exception_shared_2_test_SOURCES = exception_test_1.cc exception_test_main.cc
exception_shared_2_test_DEPENDENCIES = gcctestdir/ld exception_shared_2.so
exception_shared_2_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
exception_shared_2_test_LDADD = exception_shared_2.so

exception_same_shared_test_SOURCES = exception_test_main.cc
exception_same_shared_test_DEPENDENCIES = gcctestdir/ld exception_shared.so
exception_same_shared_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
exception_same_shared_test_LDADD = exception_shared.so

exception_separate_shared_12_test_SOURCES = exception_test_main.cc
exception_separate_shared_12_test_DEPENDENCIES = \
	gcctestdir/ld exception_shared_1.so exception_shared_2.so
exception_separate_shared_12_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,. \
	-Wl,--no-as-needed
exception_separate_shared_12_test_LDADD = \
	exception_shared_1.so exception_shared_2.so

exception_separate_shared_21_test_SOURCES = exception_test_main.cc
exception_separate_shared_21_test_DEPENDENCIES = \
	gcctestdir/ld exception_shared_1.so exception_shared_2.so
exception_separate_shared_21_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,. \
	-Wl,--no-as-needed
exception_separate_shared_21_test_LDADD = \
	exception_shared_2.so exception_shared_1.so


check_PROGRAMS += weak_test
weak_test_SOURCES = weak_test.cc
weak_test_DEPENDENCIES = gcctestdir/ld
weak_test_LDFLAGS = -Bgcctestdir/
weak_test_LDADD =

check_PROGRAMS += weak_undef_test
MOSTLYCLEANFILES += alt/weak_undef_lib.so
weak_undef_test_SOURCES = weak_undef_test.cc
weak_undef_test_DEPENDENCIES = gcctestdir/ld weak_undef_lib.so alt/weak_undef_lib.so
weak_undef_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,alt
weak_undef_test_LDADD = -L . weak_undef_lib.so
weak_undef_file1.o: weak_undef_file1.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
weak_undef_file2.o: weak_undef_file2.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
weak_undef_lib.so: weak_undef_file1.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared weak_undef_file1.o
alt/weak_undef_lib.so: weak_undef_file2.o gcctestdir/ld
	test -d alt || mkdir -p alt
	$(CXXLINK) -Bgcctestdir/ -shared weak_undef_file2.o

check_PROGRAMS += weak_undef_test_2
weak_undef_test_2_SOURCES = weak_undef_test_2.cc
weak_undef_test_2_DEPENDENCIES = gcctestdir/ld libweak_undef_2.a
weak_undef_test_2_LDFLAGS = -Bgcctestdir/ -u weak_undef_2
weak_undef_test_2_LDADD = -L . -lweak_undef_2
MOSTLYCLEANFILES += libweak_undef_2.a
libweak_undef_2.a: weak_undef_file3.o weak_undef_file4.o
	$(TEST_AR) rc $@ $^
weak_undef_file3.o: weak_undef_file3.cc
	$(CXXCOMPILE) -c -o $@ $<
weak_undef_file4.o: weak_undef_file4.cc
	$(CXXCOMPILE) -c -o $@ $<

if FN_PTRS_IN_SO_WITHOUT_PIC
check_PROGRAMS += weak_undef_nonpic_test
MOSTLYCLEANFILES += alt/weak_undef_lib_nonpic.so
weak_undef_nonpic_test_SOURCES = weak_undef_test.cc
weak_undef_nonpic_test_DEPENDENCIES = gcctestdir/ld weak_undef_lib_nonpic.so alt/weak_undef_lib_nonpic.so
weak_undef_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,alt
weak_undef_nonpic_test_LDADD = -L . weak_undef_lib_nonpic.so
weak_undef_file1_nonpic.o: weak_undef_file1.cc
	$(CXXCOMPILE) -c -o $@ $<
weak_undef_file2_nonpic.o: weak_undef_file2.cc
	$(CXXCOMPILE) -c -o $@ $<
weak_undef_lib_nonpic.so: weak_undef_file1_nonpic.o
	$(CXXLINK) -Bgcctestdir/ -shared weak_undef_file1_nonpic.o -Wl,-z,notext
alt/weak_undef_lib_nonpic.so: weak_undef_file2_nonpic.o
	test -d alt || mkdir -p alt
	$(CXXLINK) -Bgcctestdir/ -shared weak_undef_file2_nonpic.o -Wl,-z,notext
endif FN_PTRS_IN_SO_WITHOUT_PIC


check_PROGRAMS += weak_alias_test
weak_alias_test_SOURCES = weak_alias_test_main.cc
weak_alias_test_DEPENDENCIES = \
	gcctestdir/ld weak_alias_test_1.so weak_alias_test_2.so \
	weak_alias_test_3.o weak_alias_test_4.so weak_alias_test_5.so
weak_alias_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
weak_alias_test_LDADD = \
	weak_alias_test_1.so weak_alias_test_2.so weak_alias_test_3.o \
	weak_alias_test_4.so weak_alias_test_5.so
weak_alias_test_1_pic.o: weak_alias_test_1.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
weak_alias_test_1.so: weak_alias_test_1_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared weak_alias_test_1_pic.o
weak_alias_test_2_pic.o: weak_alias_test_2.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
weak_alias_test_2.so: weak_alias_test_2_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared weak_alias_test_2_pic.o
weak_alias_test_3.o: weak_alias_test_3.cc
	$(CXXCOMPILE) -c -o $@ $<
weak_alias_test_4_pic.o: weak_alias_test_4.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
weak_alias_test_4.so: weak_alias_test_4_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared weak_alias_test_4_pic.o
weak_alias_test_5_pic.o: weak_alias_test_5.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
weak_alias_test_5.so: weak_alias_test_5_pic.o $(srcdir)/weak_alias_test.script gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared weak_alias_test_5_pic.o \
		-Wl,--version-script,$(srcdir)/weak_alias_test.script

check_SCRIPTS += weak_plt.sh
check_PROGRAMS += weak_plt
check_DATA += weak_plt_shared.so
weak_plt_main_pic.o: weak_plt_main.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
weak_plt: weak_plt_main_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ weak_plt_main_pic.o
weak_plt_shared_pic.o: weak_plt_shared.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
weak_plt_shared.so: weak_plt_shared_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared weak_plt_shared_pic.o

check_PROGRAMS += copy_test
copy_test_SOURCES = copy_test.cc
copy_test_DEPENDENCIES = gcctestdir/ld copy_test_1.so copy_test_2.so
copy_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
copy_test_LDADD = copy_test_1.so copy_test_2.so
copy_test_1_pic.o: copy_test_1.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
copy_test_1.so: gcctestdir/ld copy_test_1_pic.o
	$(CXXLINK) -Bgcctestdir/ -shared copy_test_1_pic.o
copy_test_2_pic.o: copy_test_2.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
copy_test_2.so: gcctestdir/ld copy_test_2_pic.o
	$(CXXLINK) -Bgcctestdir/ -shared copy_test_2_pic.o

check_PROGRAMS += copy_test_relro
copy_test_relro_SOURCES = copy_test_relro.cc
copy_test_relro_DEPENDENCIES = gcctestdir/ld copy_test_relro_1.so
copy_test_relro_LDFLAGS = -Bgcctestdir/ -Wl,-R,. -Wl,-z,relro
copy_test_relro_LDADD = copy_test_relro_1.so
copy_test_relro_1_pic.o: copy_test_relro_1.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
copy_test_relro_1.so: gcctestdir/ld copy_test_relro_1_pic.o
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,-z,relro copy_test_relro_1_pic.o

if !DEFAULT_TARGET_POWERPC
check_SCRIPTS += copy_test_protected.sh
check_DATA += copy_test_protected.err
MOSTLYCLEANFILES += copy_test_protected.err
copy_test_protected.err: copy_test_protected.o copy_test_2.so gcctestdir/ld
	@echo $(CXXLINK) -Bgcctestdir/ -o copy_test_protected copy_test_protected.o copy_test_2.so -Wl,-R,. "2>$@"
	@if $(CXXLINK) -Bgcctestdir/ -o copy_test_protected copy_test_protected.o copy_test_2.so -Wl,-R,. 2>$@; \
	then \
	  echo 1>&2 "Link of copy_test_protected should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi
endif

if TLS

check_PROGRAMS += tls_test
check_PROGRAMS += tls_pic_test
check_PROGRAMS += tls_pie_test
check_PROGRAMS += tls_pie_pic_test
check_PROGRAMS += tls_shared_test
check_PROGRAMS += tls_shared_ie_test
check_PROGRAMS += tls_shared_gd_to_ie_test
tls_test_pic.o: tls_test.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
tls_test_file2_pic.o: tls_test_file2.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
tls_test_c_pic.o: tls_test_c.c
	$(COMPILE) -c -fpic $(TLS_TEST_C_CFLAGS) -o $@ $<
tls_test_shared.so: tls_test_pic.o tls_test_file2_pic.o tls_test_c_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared tls_test_pic.o tls_test_file2_pic.o tls_test_c_pic.o -Wl,-z,defs
tls_test_shared2.so: tls_test_file2_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared tls_test_file2_pic.o

tls_test_pic_ie.o: tls_test.cc
	$(CXXCOMPILE) -c -fpic -ftls-model=initial-exec -o $@ $<
tls_test_file2_pic_ie.o: tls_test_file2.cc
	$(CXXCOMPILE) -c -fpic -ftls-model=initial-exec -o $@ $<
tls_test_c_pic_ie.o: tls_test_c.c
	$(COMPILE) -c -fpic -ftls-model=initial-exec $(TLS_TEST_C_CFLAGS) -o $@ $<
tls_test_ie_shared.so: tls_test_pic_ie.o tls_test_file2_pic_ie.o tls_test_c_pic_ie.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared tls_test_pic_ie.o tls_test_file2_pic_ie.o tls_test_c_pic_ie.o

tls_test_SOURCES = tls_test.cc tls_test_file2.cc tls_test_main.cc tls_test.h
tls_test_DEPENDENCIES = gcctestdir/ld tls_test_c.o
tls_test_LDFLAGS = -Bgcctestdir/
tls_test_LDADD = tls_test_c.o -lpthread
tls_test_c.o: tls_test_c.c
	$(COMPILE) -c $(TLS_TEST_C_CFLAGS) -o $@ $<

tls_pic_test_SOURCES = tls_test_main.cc
tls_pic_test_DEPENDENCIES = gcctestdir/ld tls_test_pic.o tls_test_file2_pic.o \
	tls_test_c_pic.o
tls_pic_test_LDFLAGS = -Bgcctestdir/
tls_pic_test_LDADD = tls_test_pic.o tls_test_file2_pic.o tls_test_c_pic.o \
	-lpthread

tls_test_main_pie.o: tls_test_main.cc tls_test.h
	$(CXXCOMPILE) -c -fpie -o $@ $<
tls_test_pie.o: tls_test.cc tls_test.h
	$(CXXCOMPILE) -c -fpie -o $@ $<
tls_test_file2_pie.o: tls_test_file2.cc tls_test.h
	$(CXXCOMPILE) -c -fpie -o $@ $<
tls_test_c_pie.o: tls_test_c.c
	$(COMPILE) -c -fpic $(TLS_TEST_C_CFLAGS) -o $@ $<
tls_pie_test: tls_test_main_pie.o tls_test_pie.o tls_test_file2_pie.o \
		tls_test_c_pie.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -pie tls_test_main_pie.o tls_test_pie.o tls_test_file2_pie.o tls_test_c_pie.o -lpthread

check_SCRIPTS += tls_pie_test.sh
check_DATA += tls_pie_test.stdout
tls_pie_test.stdout: tls_pie_test
	$(TEST_READELF) -rW $< > $@ 2>/dev/null

tls_pie_pic_test: tls_test_main_pie.o tls_test_pic.o tls_test_file2_pic.o \
		tls_test_c_pic.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -pie tls_test_main_pie.o tls_test_pic.o tls_test_file2_pic.o tls_test_c_pic.o -lpthread

tls_shared_test_SOURCES = tls_test_main.cc
tls_shared_test_DEPENDENCIES = gcctestdir/ld tls_test_shared.so
tls_shared_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
tls_shared_test_LDADD = tls_test_shared.so -lpthread

tls_shared_ie_test_SOURCES = tls_test_main.cc
tls_shared_ie_test_DEPENDENCIES = gcctestdir/ld tls_test_ie_shared.so
tls_shared_ie_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
tls_shared_ie_test_LDADD = tls_test_ie_shared.so -lpthread

tls_shared_gd_to_ie_test_SOURCES = tls_test_main.cc
tls_shared_gd_to_ie_test_DEPENDENCIES = gcctestdir/ld tls_test_pic.o \
	tls_test_c_pic.o tls_test_shared2.so
tls_shared_gd_to_ie_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
tls_shared_gd_to_ie_test_LDADD = tls_test_pic.o tls_test_c_pic.o \
	tls_test_shared2.so -lpthread

if TLS_GNU2_DIALECT

check_PROGRAMS += tls_shared_gnu2_gd_to_ie_test

tls_test_gnu2.o: tls_test.cc
	$(CXXCOMPILE) -c -fpic -mtls-dialect=gnu2 -o $@ $<
tls_test_file2_gnu2.o: tls_test_file2.cc
	$(CXXCOMPILE) -c -fpic -mtls-dialect=gnu2 -o $@ $<
tls_test_c_gnu2.o: tls_test_c.c
	$(COMPILE) -c -fpic -mtls-dialect=gnu2 $(TLS_TEST_C_CFLAGS) -o $@ $<
tls_test_gnu2_shared2.so: tls_test_file2_gnu2.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared tls_test_file2_gnu2.o

tls_shared_gnu2_gd_to_ie_test_SOURCES = tls_test_main.cc
tls_shared_gnu2_gd_to_ie_test_DEPENDENCIES = gcctestdir/ld tls_test_gnu2.o \
	tls_test_c_gnu2.o tls_test_gnu2_shared2.so
tls_shared_gnu2_gd_to_ie_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
tls_shared_gnu2_gd_to_ie_test_LDADD = tls_test_gnu2.o tls_test_c_gnu2.o \
	tls_test_gnu2_shared2.so -lpthread

if TLS_DESCRIPTORS

check_PROGRAMS += tls_shared_gnu2_test

tls_test_gnu2_shared.so: tls_test_gnu2.o tls_test_file2_gnu2.o tls_test_c_gnu2.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared tls_test_gnu2.o tls_test_file2_gnu2.o tls_test_c_gnu2.o

tls_shared_gnu2_test_SOURCES = tls_test_main.cc
tls_shared_gnu2_test_DEPENDENCIES = gcctestdir/ld tls_test_gnu2_shared.so
tls_shared_gnu2_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
tls_shared_gnu2_test_LDADD = tls_test_gnu2_shared.so -lpthread

endif TLS_DESCRIPTORS

endif TLS_GNU2_DIALECT

if HAVE_STATIC
if STATIC_TLS
check_PROGRAMS += tls_static_test
check_PROGRAMS += tls_static_pic_test

tls_static_test_SOURCES = $(tls_test_SOURCES)
tls_static_test_DEPENDENCIES = $(tls_test_DEPENDENCIES)
tls_static_test_LDFLAGS = $(tls_test_LDFLAGS) -static
tls_static_test_LDADD = $(tls_test_LDADD)

tls_static_pic_test_SOURCES = $(tls_pic_test_SOURCES)
tls_static_pic_test_DEPENDENCIES = $(tls_pic_test_DEPENDENCIES)
tls_static_pic_test_LDFLAGS = $(tls_pic_test_LDFLAGS) -static
tls_static_pic_test_LDADD = $(tls_pic_test_LDADD)
endif
endif

if FN_PTRS_IN_SO_WITHOUT_PIC
check_PROGRAMS += tls_shared_nonpic_test
tls_test_shared_nonpic.so: tls_test.o tls_test_file2.o tls_test_c.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared tls_test.o tls_test_file2.o tls_test_c.o -Wl,-z,notext

tls_shared_nonpic_test_SOURCES = tls_test_main.cc
tls_shared_nonpic_test_DEPENDENCIES = gcctestdir/ld tls_test_shared_nonpic.so
tls_shared_nonpic_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
tls_shared_nonpic_test_LDADD = tls_test_shared_nonpic.so -lpthread
endif FN_PTRS_IN_SO_WITHOUT_PIC

endif TLS

if DEFAULT_TARGET_X86_64

check_SCRIPTS += x86_64_mov_to_lea.sh
check_DATA += x86_64_mov_to_lea1.stdout x86_64_mov_to_lea2.stdout \
	x86_64_mov_to_lea3.stdout x86_64_mov_to_lea4.stdout \
	x86_64_mov_to_lea5.stdout x86_64_mov_to_lea6.stdout \
	x86_64_mov_to_lea7.stdout x86_64_mov_to_lea8.stdout \
	x86_64_mov_to_lea9.stdout x86_64_mov_to_lea10.stdout \
	x86_64_mov_to_lea11.stdout x86_64_mov_to_lea12.stdout \
	x86_64_mov_to_lea13.stdout x86_64_mov_to_lea14.stdout
MOSTLYCLEANFILES += x86_64_mov_to_lea1 x86_64_mov_to_lea2 \
	x86_64_mov_to_lea3 x86_64_mov_to_lea4 x86_64_mov_to_lea5 \
	x86_64_mov_to_lea6 x86_64_mov_to_lea7 x86_64_mov_to_lea8 \
	x86_64_mov_to_lea9 x86_64_mov_to_lea10 x86_64_mov_to_lea11 \
	x86_64_mov_to_lea12 x86_64_mov_to_lea13 x86_64_mov_to_lea14

x86_64_mov_to_lea1.o: x86_64_mov_to_lea1.s
	$(TEST_AS) --64 -o $@ $<
x86_64_mov_to_lea2.o: x86_64_mov_to_lea1.s
	$(TEST_AS) --x32 -o $@ $<
x86_64_mov_to_lea3.o: x86_64_mov_to_lea2.s
	$(TEST_AS) --x32 -o $@ $<
x86_64_mov_to_lea4.o: x86_64_mov_to_lea2.s
	$(TEST_AS) --64 -o $@ $<
x86_64_mov_to_lea5.o: x86_64_mov_to_lea3.s
	$(TEST_AS) --x32 -mrelax-relocations=yes -o $@ $<
x86_64_mov_to_lea6.o: x86_64_mov_to_lea3.s
	$(TEST_AS) --64 -mrelax-relocations=yes -o $@ $<
x86_64_mov_to_lea7.o: x86_64_mov_to_lea4.s
	$(TEST_AS) --x32 -o $@ $<
x86_64_mov_to_lea8.o: x86_64_mov_to_lea4.s
	$(TEST_AS) --64 -o $@ $<
x86_64_mov_to_lea1: x86_64_mov_to_lea1.o ../ld-new
	../ld-new -Bsymbolic -shared  -melf_x86_64  -o $@ $<
x86_64_mov_to_lea2: x86_64_mov_to_lea1.o ../ld-new
	../ld-new -pie -melf_x86_64  -o $@ $<
x86_64_mov_to_lea3: x86_64_mov_to_lea1.o ../ld-new
	../ld-new -melf_x86_64  -o $@ $<
x86_64_mov_to_lea4: x86_64_mov_to_lea2.o ../ld-new
	../ld-new -Bsymbolic -shared  -melf32_x86_64  -o $@ $<
x86_64_mov_to_lea5: x86_64_mov_to_lea2.o ../ld-new
	../ld-new -pie -melf32_x86_64  -o $@ $<
x86_64_mov_to_lea6: x86_64_mov_to_lea2.o ../ld-new
	../ld-new -melf32_x86_64  -o $@ $<
x86_64_mov_to_lea7: x86_64_mov_to_lea3.o ../ld-new
	../ld-new -melf32_x86_64 -pie -o $@ $<
x86_64_mov_to_lea8: x86_64_mov_to_lea4.o ../ld-new
	../ld-new -melf_x86_64 -pie -o $@ $<
x86_64_mov_to_lea9: x86_64_mov_to_lea5.o ../ld-new
	../ld-new -melf32_x86_64  -o $@ $<
x86_64_mov_to_lea10: x86_64_mov_to_lea6.o ../ld-new
	../ld-new -melf_x86_64  -o $@ $<
x86_64_mov_to_lea11: x86_64_mov_to_lea2.o ../ld-new
	../ld-new -melf32_x86_64 -shared  -o $@ $<
x86_64_mov_to_lea12: x86_64_mov_to_lea1.o ../ld-new
	../ld-new -melf_x86_64 -shared  -o $@ $<
x86_64_mov_to_lea13: x86_64_mov_to_lea7.o ../ld-new
	../ld-new -melf32_x86_64 -shared  -o $@ $<
x86_64_mov_to_lea14: x86_64_mov_to_lea8.o ../ld-new
	../ld-new -melf_x86_64 -shared  -o $@ $<
x86_64_mov_to_lea1.stdout: x86_64_mov_to_lea1
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea2.stdout: x86_64_mov_to_lea2
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea3.stdout: x86_64_mov_to_lea3
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea4.stdout: x86_64_mov_to_lea4
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea5.stdout: x86_64_mov_to_lea5
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea6.stdout: x86_64_mov_to_lea6
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea7.stdout: x86_64_mov_to_lea7
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea8.stdout: x86_64_mov_to_lea8
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea9.stdout: x86_64_mov_to_lea9
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea10.stdout: x86_64_mov_to_lea10
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea11.stdout: x86_64_mov_to_lea11
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea12.stdout: x86_64_mov_to_lea12
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea13.stdout: x86_64_mov_to_lea13
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_mov_to_lea14.stdout: x86_64_mov_to_lea14
	$(TEST_OBJDUMP) -dw $< > $@

check_SCRIPTS += x86_64_indirect_call_to_direct.sh
check_DATA += x86_64_indirect_call_to_direct1.stdout \
	x86_64_indirect_jump_to_direct1.stdout
MOSTLYCLEANFILES += x86_64_indirect_call_to_direct1 \
	x86_64_indirect_jump_to_direct1

x86_64_indirect_call_to_direct1.o: x86_64_indirect_call_to_direct1.s
	$(TEST_AS) --64 -mrelax-relocations=yes -o $@ $<
x86_64_indirect_call_to_direct1: x86_64_indirect_call_to_direct1.o gcctestdir/ld
	gcctestdir/ld -o $@ $<
x86_64_indirect_call_to_direct1.stdout: x86_64_indirect_call_to_direct1
	$(TEST_OBJDUMP) -dw $< > $@
x86_64_indirect_jump_to_direct1.o: x86_64_indirect_jump_to_direct1.s
	$(TEST_AS) --64 -mrelax-relocations=yes -o $@ $<
x86_64_indirect_jump_to_direct1: x86_64_indirect_jump_to_direct1.o gcctestdir/ld
	gcctestdir/ld -o $@ $<
x86_64_indirect_jump_to_direct1.stdout: x86_64_indirect_jump_to_direct1
	$(TEST_OBJDUMP) -dw $< > $@

check_SCRIPTS += x86_64_overflow_pc32.sh
check_DATA += x86_64_overflow_pc32.err
MOSTLYCLEANFILES += x86_64_overflow_pc32.err
x86_64_overflow_pc32.o: x86_64_overflow_pc32.s
	$(TEST_AS) -o $@ $<
x86_64_overflow_pc32.err: x86_64_overflow_pc32.o gcctestdir/ld
	@echo gcctestdir/ld -e bar -Tdata=0x81000000 -o x86_64_overflow_pc32 x86_64_overflow_pc32.o "2>$@"
	@if gcctestdir/ld -e bar -Tdata=0x81000000 -o x86_64_overflow_pc32 x86_64_overflow_pc32.o 2>$@; \
	then \
	  echo 1>&2 "Link of x86_64_overflow_pc32 should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi

check_PROGRAMS += pr17704a_test
pr17704a_test.o: pr17704a_test.s
	$(TEST_AS) --64  -o $@ $<
pr17704a_test: pr17704a_test.o gcctestdir/ld
	gcctestdir/ld --icf=all -o $@ $<

check_SCRIPTS += x32_overflow_pc32.sh
check_DATA += x32_overflow_pc32.err
MOSTLYCLEANFILES += x32_overflow_pc32.err
x32_overflow_pc32.o: x86_64_overflow_pc32.s
	$(TEST_AS) --x32 -o $@ $<
x32_overflow_pc32.err: x32_overflow_pc32.o gcctestdir/ld
	@echo gcctestdir/ld -e bar -Tdata=0x81000000 -o x32_overflow_pc32 x32_overflow_pc32.o "2>$@"
	@if gcctestdir/ld -e bar -Tdata=0x81000000 -o x32_overflow_pc32 x32_overflow_pc32.o 2>$@; \
	then \
	  echo 1>&2 "Link of x32_overflow_pc32 should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi

endif DEFAULT_TARGET_X86_64

if DEFAULT_TARGET_X86_64_OR_X32

check_PROGRAMS += pr20216a_test
pr20216a_test_SOURCES = pr20216_main.c pr20216_def.c
pr20216a_test_DEPENDENCIES = pr20216_gd.o pr20216_ld.o gcctestdir/ld gcctestdir/as
pr20216a_test_CFLAGS = -Bgcctestdir/ -fPIE
pr20216a_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
pr20216a_test_LDADD = pr20216_gd.o pr20216_ld.o

check_PROGRAMS += pr20216b_test
pr20216b_test_SOURCES = pr20216_main.c pr20216_def.c
pr20216b_test_DEPENDENCIES = pr20216_gd.o pr20216_ld.o gcctestdir/ld gcctestdir/as
pr20216b_test_CFLAGS = -Bgcctestdir/ -fPIE
pr20216b_test_LDFLAGS = -pie -Bgcctestdir/ -Wl,-R,.
pr20216b_test_LDADD = pr20216_gd.o pr20216_ld.o

check_PROGRAMS += pr20216c_test
pr20216c_test_SOURCES = pr20216_main.c pr20216_def.c
pr20216c_test_DEPENDENCIES = pr20216_gd.o pr20216_ld.o gcctestdir/ld gcctestdir/as
pr20216c_test_CFLAGS = -Bgcctestdir/ -fPIE
pr20216c_test_LDFLAGS = -static -Bgcctestdir/ -Wl,-R,.
pr20216c_test_LDADD = pr20216_gd.o pr20216_ld.o

check_PROGRAMS += pr20216d_test
pr20216d_test_SOURCES = pr20216_main.c pr20216_def.c
pr20216d_test_DEPENDENCIES = pr20216a.so gcctestdir/ld gcctestdir/as
pr20216d_test_CFLAGS = -Bgcctestdir/ -fPIE
pr20216d_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
pr20216d_test_LDADD = pr20216a.so

check_PROGRAMS += pr20216e_test
pr20216e_test_SOURCES = pr20216_main.c
pr20216e_test_DEPENDENCIES = pr20216_gd.o pr20216_ld.o pr20216b.so gcctestdir/ld gcctestdir/as
pr20216e_test_CFLAGS = -Bgcctestdir/ -fPIE
pr20216e_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
pr20216e_test_LDADD = pr20216_gd.o pr20216_ld.o pr20216b.so

MOSTLYCLEANFILES += pr20216a.so pr20216b.so

pr20216a.so: pr20216_gd.o pr20216_ld.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared pr20216_gd.o pr20216_ld.o

pr20216b.so: pr20216_def.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared pr20216_def.o

pr20216_gd.o: pr20216_gd.S gcctestdir/as
	$(COMPILE) -Bgcctestdir/ -c -o $@ $<

pr20216_ld.o: pr20216_ld.S gcctestdir/as
	$(COMPILE) -Bgcctestdir/ -c -o $@ $<

endif DEFAULT_TARGET_X86_64_OR_X32

if DEFAULT_TARGET_I386

check_SCRIPTS += i386_mov_to_lea.sh
check_DATA += i386_mov_to_lea1.stdout  i386_mov_to_lea2.stdout \
	i386_mov_to_lea3.stdout  i386_mov_to_lea4.stdout \
	i386_mov_to_lea5.stdout i386_mov_to_lea6.stdout \
	i386_mov_to_lea7.stdout i386_mov_to_lea8.stdout
MOSTLYCLEANFILES += i386_mov_to_lea1 i386_mov_to_lea2 i386_mov_to_lea3 \
	i386_mov_to_lea4 i386_mov_to_lea5 i386_mov_to_lea6 \
	i386_mov_to_lea7 i386_mov_to_lea8

i386_mov_to_lea1.o: i386_mov_to_lea1.s
	$(TEST_AS) --32 -o $@ $<
i386_mov_to_lea2.o: i386_mov_to_lea2.s
	$(TEST_AS) --32 -o $@ $<
i386_mov_to_lea3.o: i386_mov_to_lea3.s
	$(TEST_AS) --32 -o $@ $<
i386_mov_to_lea4.o: i386_mov_to_lea4.s
	$(TEST_AS) --32 -o $@ $<
i386_mov_to_lea5.o: i386_mov_to_lea5.s
	$(TEST_AS) --32 -o $@ $<
i386_mov_to_lea1: i386_mov_to_lea1.o ../ld-new
	../ld-new -Bsymbolic -shared -melf_i386  -o $@ $<
i386_mov_to_lea2: i386_mov_to_lea1.o ../ld-new
	../ld-new  -pie -melf_i386  -o $@ $<
i386_mov_to_lea3: i386_mov_to_lea1.o ../ld-new
	../ld-new -melf_i386  -o $@ $<
i386_mov_to_lea4: i386_mov_to_lea1.o ../ld-new
	../ld-new -melf_i386 -shared  -o $@ $<
i386_mov_to_lea5: i386_mov_to_lea2.o ../ld-new
	../ld-new -melf_i386 -shared  -o $@ $<
i386_mov_to_lea6: i386_mov_to_lea3.o ../ld-new
	../ld-new -melf_i386 -shared  -o $@ $<
i386_mov_to_lea7: i386_mov_to_lea4.o ../ld-new
	../ld-new -melf_i386 -shared  -o $@ $<
i386_mov_to_lea8: i386_mov_to_lea5.o ../ld-new
	../ld-new -melf_i386 -shared  -o $@ $<
i386_mov_to_lea1.stdout: i386_mov_to_lea1
	$(TEST_OBJDUMP) -dw $< > $@
i386_mov_to_lea2.stdout: i386_mov_to_lea2
	$(TEST_OBJDUMP) -dw $< > $@
i386_mov_to_lea3.stdout: i386_mov_to_lea3
	$(TEST_OBJDUMP) -dw $< > $@
i386_mov_to_lea4.stdout: i386_mov_to_lea4
	$(TEST_OBJDUMP) -dw $< > $@
i386_mov_to_lea5.stdout: i386_mov_to_lea5
	$(TEST_OBJDUMP) -dw $< > $@
i386_mov_to_lea6.stdout: i386_mov_to_lea6
	$(TEST_OBJDUMP) -dw $< > $@
i386_mov_to_lea7.stdout: i386_mov_to_lea7
	$(TEST_OBJDUMP) -dw $< > $@
i386_mov_to_lea8.stdout: i386_mov_to_lea8
	$(TEST_OBJDUMP) -dw $< > $@

check_PROGRAMS += pr20308a_test
pr20308a_test_SOURCES = pr20308_main.c pr20308_def.c
pr20308a_test_DEPENDENCIES = pr20308_gd.o pr20308_ld.o gcctestdir/ld gcctestdir/as
pr20308a_test_CFLAGS = -Bgcctestdir/ -fPIE
pr20308a_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
pr20308a_test_LDADD = pr20308_gd.o pr20308_ld.o

check_PROGRAMS += pr20308b_test
pr20308b_test_SOURCES = pr20308_main.c pr20308_def.c
pr20308b_test_DEPENDENCIES = pr20308_gd.o pr20308_ld.o gcctestdir/ld gcctestdir/as
pr20308b_test_CFLAGS = -Bgcctestdir/ -fPIE
pr20308b_test_LDFLAGS = -pie -Bgcctestdir/ -Wl,-R,.
pr20308b_test_LDADD = pr20308_gd.o pr20308_ld.o

check_PROGRAMS += pr20308c_test
pr20308c_test_SOURCES = pr20308_main.c pr20308_def.c
pr20308c_test_DEPENDENCIES = pr20308_gd.o pr20308_ld.o gcctestdir/ld gcctestdir/as
pr20308c_test_CFLAGS = -Bgcctestdir/ -fPIE
pr20308c_test_LDFLAGS = -static -Bgcctestdir/ -Wl,-R,.
pr20308c_test_LDADD = pr20308_gd.o pr20308_ld.o

check_PROGRAMS += pr20308d_test
pr20308d_test_SOURCES = pr20308_main.c pr20308_def.c
pr20308d_test_DEPENDENCIES = pr20308a.so gcctestdir/ld gcctestdir/as
pr20308d_test_CFLAGS = -Bgcctestdir/ -fPIE
pr20308d_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
pr20308d_test_LDADD = pr20308a.so

check_PROGRAMS += pr20308e_test
pr20308e_test_SOURCES = pr20308_main.c
pr20308e_test_DEPENDENCIES = pr20308_gd.o pr20308_ld.o pr20308b.so gcctestdir/ld gcctestdir/as
pr20308e_test_CFLAGS = -Bgcctestdir/ -fPIE
pr20308e_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
pr20308e_test_LDADD = pr20308_gd.o pr20308_ld.o pr20308b.so

MOSTLYCLEANFILES += pr20308a.so pr20308b.so

pr20308a.so: pr20308_gd.o pr20308_ld.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared pr20308_gd.o pr20308_ld.o

pr20308b.so: pr20308_def.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared pr20308_def.o

pr20308_gd.o: pr20308_gd.S gcctestdir/as
	$(COMPILE) -Bgcctestdir/ -c -o $@ $<

pr20308_ld.o: pr20308_ld.S gcctestdir/as
	$(COMPILE) -Bgcctestdir/ -c -o $@ $<

endif DEFAULT_TARGET_I386

check_PROGRAMS += many_sections_test
many_sections_test_SOURCES = many_sections_test.cc
many_sections_test_DEPENDENCIES = gcctestdir/ld
many_sections_test_LDFLAGS = -Bgcctestdir/ -rdynamic
many_sections_test_LDADD =

BUILT_SOURCES += many_sections_define.h
MOSTLYCLEANFILES += many_sections_define.h
many_sections_define.h:
	(for i in `seq 1 70000`; do \
	   echo "int var_$$i __attribute__((section(\"section_$$i\"))) = $$i;"; \
	 done) > $@.tmp
	mv -f $@.tmp $@

BUILT_SOURCES += many_sections_check.h
MOSTLYCLEANFILES += many_sections_check.h
many_sections_check.h:
	(for i in `seq 1 1000 70000`; do \
	   echo "assert(var_$$i == $$i);"; \
	 done) > $@.tmp
	mv -f $@.tmp $@

check_PROGRAMS += many_sections_r_test
many_sections_r_test.o: many_sections_test.o gcctestdir/ld
	gcctestdir/ld -r -o $@ many_sections_test.o
many_sections_r_test: many_sections_r_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ many_sections_r_test.o $(LIBS)

check_SCRIPTS += file_in_many_sections_test.sh
check_DATA += file_in_many_sections.stdout
MOSTLYCLEANFILES += file_in_many_sections
file_in_many_sections.o: file_in_many_sections.c many_sections_define.h
	$(COMPILE) -c -fdata-sections -o $@ $(srcdir)/file_in_many_sections.c
file_in_many_sections: file_in_many_sections.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ file_in_many_sections.o -Wl,--gc-sections
file_in_many_sections.stdout: file_in_many_sections
	$(TEST_READELF) -s $< > $@

check_PROGRAMS += initpri1
initpri1_SOURCES = initpri1.c
initpri1_DEPENDENCIES = gcctestdir/ld
initpri1_LDFLAGS = -Bgcctestdir/
initpri1_LDADD =

check_PROGRAMS += initpri2
initpri2_SOURCES = initpri2.c
initpri2_DEPENDENCIES = gcctestdir/ld
initpri2_LDFLAGS = -Bgcctestdir/ -Wl,--ctors-in-init-array
initpri2_LDADD =

check_PROGRAMS += initpri3a
initpri3a_SOURCES = initpri3.c
initpri3a_DEPENDENCIES = gcctestdir/ld
initpri3a_LDFLAGS = -Bgcctestdir/
initpri3a_LDADD =

# This test fails on targets not using .ctors and .dtors sections (e.g. ARM
# EABI). Given that gcc is moving towards using .init_array in all cases,
# this test is commented out.  A better fix would be checking whether gcc
# uses .ctors or .init_array sections in configure.

# check_PROGRAMS += initpri3b
# initpri3b_SOURCES = initpri3.c
# initpri3b_DEPENDENCIES = gcctestdir/ld
# initpri3b_LDFLAGS = -Bgcctestdir/ -Wl,--no-ctors-in-init-array
# initpri3b_LDADD =

# Test --detect-odr-violations
check_SCRIPTS += debug_msg.sh

# Create the data files that debug_msg.sh analyzes.
check_DATA += debug_msg.err
MOSTLYCLEANFILES += debug_msg.err
debug_msg.o: debug_msg.cc
	$(CXXCOMPILE) -O0 -g -c -w -o $@ $(srcdir)/debug_msg.cc
odr_violation1.o: odr_violation1.cc
	$(CXXCOMPILE) -O0 -g -c -w -o $@ $(srcdir)/odr_violation1.cc
# Compile with different optimization flags to check that rearranged
# instructions don't cause a false positive.
odr_violation2.o: odr_violation2.cc
	$(CXXCOMPILE) -O2 -g -c -w -o $@ $(srcdir)/odr_violation2.cc
debug_msg.err: debug_msg.o odr_violation1.o odr_violation2.o gcctestdir/ld
	@echo $(CXXLINK) -Bgcctestdir/ -Wl,--detect-odr-violations -o debug_msg debug_msg.o odr_violation1.o odr_violation2.o "2>$@"
	@if $(CXXLINK) -Bgcctestdir/ -Wl,--detect-odr-violations -o debug_msg debug_msg.o odr_violation1.o odr_violation2.o 2>$@; \
	then \
	  echo 1>&2 "Link of debug_msg should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi

# Test error message when a vtable is undefined.
check_SCRIPTS += missing_key_func.sh
check_DATA += missing_key_func.err
MOSTLYCLEANFILES += missing_key_func.err
missing_key_func.o: missing_key_func.cc
	$(CXXCOMPILE) -O0 -g -c -o $@ $(srcdir)/missing_key_func.cc
missing_key_func.err: missing_key_func.o gcctestdir/ld
	@echo $(CXXLINK) -Bgcctestdir/ -o missing_key_func missing_key_func.o "2>$@"
	@if $(CXXLINK) -Bgcctestdir/ -o missing_key_func missing_key_func.o 2>$@; \
	then \
	  echo 1>&2 "Link of missing_key_func should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi

# Check that --detect-odr-violations works with compressed debug sections.
check_DATA += debug_msg_cdebug.err
MOSTLYCLEANFILES += debug_msg_cdebug.err
debug_msg_cdebug.o: debug_msg.cc gcctestdir/as
	$(CXXCOMPILE) -Bgcctestdir/ -O0 -g -Wa,--compress-debug-sections -c -w -o $@ $(srcdir)/debug_msg.cc
odr_violation1_cdebug.o: odr_violation1.cc gcctestdir/as
	$(CXXCOMPILE) -Bgcctestdir/ -O0 -g -Wa,--compress-debug-sections -c -w -o $@ $(srcdir)/odr_violation1.cc
odr_violation2_cdebug.o: odr_violation2.cc gcctestdir/as
	$(CXXCOMPILE) -Bgcctestdir/ -O2 -g -Wa,--compress-debug-sections -c -w -o $@ $(srcdir)/odr_violation2.cc
debug_msg_cdebug.err: debug_msg_cdebug.o odr_violation1_cdebug.o odr_violation2_cdebug.o gcctestdir/ld
	@echo $(CXXLINK) -Bgcctestdir/ -Wl,--detect-odr-violations -o debug_msg_cdebug debug_msg_cdebug.o odr_violation1_cdebug.o odr_violation2_cdebug.o "2>$@"
	@if $(CXXLINK) -Bgcctestdir/ -Wl,--detect-odr-violations -o debug_msg_cdebug debug_msg_cdebug.o odr_violation1_cdebug.o odr_violation2_cdebug.o 2>$@; \
	then \
	  echo 1>&2 "Link of debug_msg_cdebug should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi
check_DATA += debug_msg_cdebug_gabi.err
MOSTLYCLEANFILES += debug_msg_cdebug_gabi.err
debug_msg_cdebug_gabi.o: debug_msg.cc gcctestdir/as
	$(CXXCOMPILE) -Bgcctestdir/ -O0 -g -Wa,--compress-debug-sections=zlib-gabi -c -w -o $@ $(srcdir)/debug_msg.cc
odr_violation1_cdebug_gabi.o: odr_violation1.cc gcctestdir/as
	$(CXXCOMPILE) -Bgcctestdir/ -O0 -g -Wa,--compress-debug-sections=zlib-gabi -c -w -o $@ $(srcdir)/odr_violation1.cc
odr_violation2_cdebug_gabi.o: odr_violation2.cc gcctestdir/as
	$(CXXCOMPILE) -Bgcctestdir/ -O2 -g -Wa,--compress-debug-sections=zlib-gabi -c -w -o $@ $(srcdir)/odr_violation2.cc
debug_msg_cdebug_gabi.err: debug_msg_cdebug_gabi.o odr_violation1_cdebug_gabi.o odr_violation2_cdebug_gabi.o gcctestdir/ld
	@echo $(CXXLINK) -Bgcctestdir/ -Wl,--detect-odr-violations -o debug_msg_cdebug debug_msg_cdebug_gabi.o odr_violation1_cdebug_gabi.o odr_violation2_cdebug_gabi.o "2>$@"
	@if $(CXXLINK) -Bgcctestdir/ -Wl,--detect-odr-violations -o debug_msg_cdebug_gabi debug_msg_cdebug_gabi.o odr_violation1_cdebug_gabi.o odr_violation2_cdebug_gabi.o 2>$@; \
	then \
	  echo 1>&2 "Link of debug_msg_cdebug_gabi should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi

# See if we can also detect problems when we're linking .so's, not .o's.
check_DATA += debug_msg_so.err
MOSTLYCLEANFILES += debug_msg_so.err
debug_msg.so: debug_msg.cc gcctestdir/ld
	$(CXXCOMPILE) -Bgcctestdir/ -O0 -g -shared -fPIC -w -o $@ $(srcdir)/debug_msg.cc
odr_violation1.so: odr_violation1.cc gcctestdir/ld
	$(CXXCOMPILE) -Bgcctestdir/ -O0 -g -shared -fPIC -w -o $@ $(srcdir)/odr_violation1.cc
odr_violation2.so: odr_violation2.cc gcctestdir/ld
	$(CXXCOMPILE) -Bgcctestdir/ -O2 -g -shared -fPIC -w -o $@ $(srcdir)/odr_violation2.cc
debug_msg_so.err: debug_msg.so odr_violation1.so odr_violation2.so gcctestdir/ld
	@echo $(CXXLINK_S) -Bgcctestdir/ -Wl,--detect-odr-violations -o debug_msg_so debug_msg.so odr_violation1.so odr_violation2.so "2>$@"
	@if $(CXXLINK_S) -Bgcctestdir/ -Wl,--detect-odr-violations -o debug_msg_so debug_msg.so odr_violation1.so odr_violation2.so 2>$@; \
	then \
	  echo 1>&2 "Link of debug_msg_so should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi

# We also want to make sure we do something reasonable when there's no
# debug info available.  For the best test, we use .so's.
check_DATA += debug_msg_ndebug.err
MOSTLYCLEANFILES += debug_msg_ndebug.err
debug_msg_ndebug.so: debug_msg.cc gcctestdir/ld
	$(CXXCOMPILE) -Bgcctestdir/ -O0 -g0 -shared -fPIC -w -o $@ $(srcdir)/debug_msg.cc
odr_violation1_ndebug.so: odr_violation1.cc gcctestdir/ld
	$(CXXCOMPILE) -Bgcctestdir/ -O0 -g0 -shared -fPIC -w -o $@ $(srcdir)/odr_violation1.cc
odr_violation2_ndebug.so: odr_violation2.cc gcctestdir/ld
	$(CXXCOMPILE) -Bgcctestdir/ -O2 -g0 -shared -fPIC -w -o $@ $(srcdir)/odr_violation2.cc
debug_msg_ndebug.err: debug_msg_ndebug.so odr_violation1_ndebug.so odr_violation2_ndebug.so gcctestdir/ld
	@echo $(CXXLINK_S) -Bgcctestdir/ -Wl,--detect-odr-violations -o debug_msg_ndebug debug_msg_ndebug.so odr_violation1_ndebug.so odr_violation2_ndebug.so -shared-libgcc -Bdynamic -lstdc++ "2>$@"
	@if $(CXXLINK_S) -Bgcctestdir/ -Wl,--detect-odr-violations -o debug_msg_ndebug debug_msg_ndebug.so odr_violation1_ndebug.so odr_violation2_ndebug.so -shared-libgcc -Bdynamic -lstdc++ 2>$@; \
	then \
	  echo 1>&2 "Link of debug_msg_ndebug should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi


# Similar to --detect-odr-violations: check for undefined symbols in .so's
check_SCRIPTS += undef_symbol.sh
check_DATA += undef_symbol.err
MOSTLYCLEANFILES += undef_symbol.err
undef_symbol.o: undef_symbol.cc
	$(CXXCOMPILE) -O0 -g -c -fPIC $<
undef_symbol.so: undef_symbol.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared undef_symbol.o
undef_symbol.err: undef_symbol_main.o undef_symbol.so gcctestdir/ld
	@echo $(CXXLINK) -Bgcctestdir/ -o undef_symbol_test undef_symbol_main.o undef_symbol.so "2>$@"
	@if $(CXXLINK) -Bgcctestdir/ -o undef_symbol_test undef_symbol_main.o undef_symbol.so 2>$@; \
	then \
	  echo 1>&2 "Link of undef_symbol_test should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi


# Test -o when emitting to a special file (such as something in /dev).
check_PROGRAMS += flagstest_o_specialfile
flagstest_o_specialfile: flagstest_debug.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -o /dev/stdout $< 2>&1 | cat > $@
	chmod a+x $@
	test -s $@

# Test --compress-debug-sections.
check_PROGRAMS += flagstest_compress_debug_sections_none
check_DATA += flagstest_compress_debug_sections_none.stdout
flagstest_compress_debug_sections_none: flagstest_debug.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -o $@ $< -Wl,--compress-debug-sections=none
	test -s $@

# Dump DWARF debug sections.
flagstest_compress_debug_sections_none.stdout: flagstest_compress_debug_sections_none
	$(TEST_READELF) -w $< > $@.tmp
	mv -f $@.tmp $@

check_PROGRAMS += flagstest_compress_debug_sections
check_DATA += flagstest_compress_debug_sections.stdout \
	      flagstest_compress_debug_sections.cmp \
	      flagstest_compress_debug_sections.check
MOSTLYCLEANFILES += flagstest_compress_debug_sections.check \
		    flagstest_compress_debug_sections.cmp
flagstest_compress_debug_sections: flagstest_debug.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -o $@ $< -Wl,--compress-debug-sections=zlib
	test -s $@

# Test --compress-debug-sections with --build-id=tree.
check_PROGRAMS += flagstest_compress_debug_sections_and_build_id_tree
flagstest_compress_debug_sections_and_build_id_tree: flagstest_debug.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -o $@ $< -Wl,--compress-debug-sections=zlib \
		-Wl,--build-id=tree \
		-Wl,--build-id-chunk-size-for-treehash=4096 \
		-Wl,--build-id-min-file-size-for-treehash=0
	test -s $@

# Dump compressed DWARF debug sections.
flagstest_compress_debug_sections.stdout: flagstest_compress_debug_sections
	$(TEST_READELF) -w $< | sed -e "s/.zdebug_/.debug_/" > $@.tmp
	mv -f $@.tmp $@

# Check there are compressed DWARF .debug_* sections.
flagstest_compress_debug_sections.check: flagstest_compress_debug_sections
	$(TEST_READELF) -SW $< | egrep ".debug_.* C *" > $@.tmp
	mv -f $@.tmp $@

# Compare DWARF debug info.
flagstest_compress_debug_sections.cmp: flagstest_compress_debug_sections.stdout \
	flagstest_compress_debug_sections_none.stdout
	cmp flagstest_compress_debug_sections.stdout \
		flagstest_compress_debug_sections_none.stdout > $@.tmp
	mv -f $@.tmp $@

check_PROGRAMS += flagstest_compress_debug_sections_gnu
check_DATA += flagstest_compress_debug_sections_gnu.stdout \
	      flagstest_compress_debug_sections_gnu.cmp \
	      flagstest_compress_debug_sections_gnu.check
MOSTLYCLEANFILES += flagstest_compress_debug_sections_gnu.check \
		    flagstest_compress_debug_sections_gnu.cmp
flagstest_compress_debug_sections_gnu: flagstest_debug.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -o $@ $< -Wl,--compress-debug-sections=zlib-gnu
	test -s $@

# Dump compressed DWARF debug sections.
flagstest_compress_debug_sections_gnu.stdout: flagstest_compress_debug_sections_gnu
	$(TEST_READELF) -w $< | sed -e "s/.zdebug_/.debug_/" > $@.tmp
	mv -f $@.tmp $@

# Check there are compressed DWARF .zdebug_* sections.
flagstest_compress_debug_sections_gnu.check: flagstest_compress_debug_sections_gnu
	$(TEST_READELF) -SW $< | grep ".zdebug_" > $@.tmp
	mv -f $@.tmp $@

# Compare DWARF debug info.
flagstest_compress_debug_sections_gnu.cmp: flagstest_compress_debug_sections_gnu.stdout \
	flagstest_compress_debug_sections_none.stdout
	cmp flagstest_compress_debug_sections_gnu.stdout \
		flagstest_compress_debug_sections_none.stdout > $@.tmp
	mv -f $@.tmp $@

check_PROGRAMS += flagstest_compress_debug_sections_gabi
check_DATA += flagstest_compress_debug_sections_gabi.stdout \
	      flagstest_compress_debug_sections_gabi.cmp \
	      flagstest_compress_debug_sections_gabi.check
MOSTLYCLEANFILES += flagstest_compress_debug_sections_gabi.cmp \
		    flagstest_compress_debug_sections_gabi.check
flagstest_compress_debug_sections_gabi: flagstest_debug.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -o $@ $< -Wl,--compress-debug-sections=zlib-gabi
	test -s $@

# Dump compressed DWARF debug sections.
flagstest_compress_debug_sections_gabi.stdout: flagstest_compress_debug_sections_gabi
	$(TEST_READELF) -w $< > $@.tmp
	mv -f $@.tmp $@

# Check there are compressed DWARF .debug_* sections.
flagstest_compress_debug_sections_gabi.check: flagstest_compress_debug_sections_gabi
	$(TEST_READELF) -tW $< | grep "COMPRESSED" > $@.tmp
	mv -f $@.tmp $@

# Compare DWARF debug info.
flagstest_compress_debug_sections_gabi.cmp: flagstest_compress_debug_sections_gabi.stdout \
	flagstest_compress_debug_sections_none.stdout
	cmp flagstest_compress_debug_sections_gabi.stdout \
		flagstest_compress_debug_sections_none.stdout > $@.tmp
	mv -f $@.tmp $@

# The specialfile output has a tricky case when we also compress debug
# sections, because it requires output-file resizing.
check_PROGRAMS += flagstest_o_specialfile_and_compress_debug_sections
flagstest_o_specialfile_and_compress_debug_sections: flagstest_debug.o \
		gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -o /dev/stdout $< -Wl,--compress-debug-sections=zlib 2>&1 | cat > $@
	chmod a+x $@
	test -s $@

check_SCRIPTS += pr18689.sh
check_DATA += pr18689.stdout
MOSTLYCLEANFILES += pr18689a.o pr18689b.o

pr18689.stdout: pr18689b.o
	$(TEST_READELF) -SW $< > $@

pr18689a.o: pr18689.o ../ld-new
	../ld-new -r -o $@ $<

pr18689b.o: pr18689a.o ../ld-new
	../ld-new -r -o $@ $<

pr18689.o: pr18689.c gcctestdir/as
	$(COMPILE) -Bgcctestdir/ -ggdb3 -g -Wa,--compress-debug-sections=zlib-gabi -c -w -o $@ $(srcdir)/pr18689.c

# Test -TText and -Tdata.
check_PROGRAMS += flagstest_o_ttext_1
flagstest_o_ttext_1: flagstest_debug.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -o $@ $< -Wl,-Ttext,0x400000 -Wl,-Tdata,0x800000

# This version won't be runnable, because there is no way to put the
# PT_PHDR segment at file offset 0.  We just make sure that we can
# build it without error.
check_DATA += flagstest_o_ttext_2
MOSTLYCLEANFILES += flagstest_o_ttext_2
flagstest_o_ttext_2: flagstest_debug.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -o $@ $< -Wl,-Ttext,0x400010 -Wl,-Tdata,0x800010

# Test symbol versioning.
check_PROGRAMS += ver_test
ver_test_SOURCES = ver_test_main.cc
ver_test_DEPENDENCIES = gcctestdir/ld ver_test_1.so ver_test_2.so ver_test_4.so
ver_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ver_test_LDADD = ver_test_1.so ver_test_2.so ver_test_4.so
ver_test_1.so: ver_test_1.o ver_test_2.so ver_test_3.o ver_test_4.so gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared ver_test_1.o ver_test_2.so ver_test_3.o ver_test_4.so
ver_test_2.so: ver_test_2.o $(srcdir)/ver_test_2.script ver_test_4.so gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,--version-script,$(srcdir)/ver_test_2.script -Wl,-R,. ver_test_2.o ver_test_4.so
ver_test_4.so: ver_test_4.o $(srcdir)/ver_test_4.script gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,--version-script,$(srcdir)/ver_test_4.script ver_test_4.o
ver_test_1.o: ver_test_1.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
ver_test_2.o: ver_test_2.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
ver_test_3.o: ver_test_3.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
ver_test_4.o: ver_test_4.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<

check_SCRIPTS += ver_test_1.sh
check_DATA += ver_test_1.syms
ver_test_1.syms: ver_test_1.so
	$(TEST_READELF) -s $< >$@ 2>/dev/null

check_PROGRAMS += ver_test_2
ver_test_2_SOURCES = ver_test_main_2.cc
ver_test_2_DEPENDENCIES = gcctestdir/ld ver_test_4.so ver_test_2.so
ver_test_2_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ver_test_2_LDADD = ver_test_4.so ver_test_2.so

check_SCRIPTS += ver_test_2.sh
check_DATA += ver_test_2.syms
ver_test_2.syms: ver_test_2
	$(TEST_READELF) -s $< >$@ 2>/dev/null

check_SCRIPTS += ver_test_4.sh
check_DATA += ver_test_4.syms
ver_test_4.syms: ver_test_4.so
	$(TEST_READELF) -s $< >$@ 2>/dev/null

ver_test_5.so: ver_test_5.o $(srcdir)/ver_test_5.script ver_test_4.so gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,--version-script,$(srcdir)/ver_test_5.script ver_test_5.o ver_test_4.so
ver_test_5.o: ver_test_5.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
check_SCRIPTS += ver_test_5.sh
check_DATA += ver_test_5.syms
ver_test_5.syms: ver_test_5.so
	$(TEST_READELF) -s $< >$@ 2>/dev/null

check_PROGRAMS += ver_test_6
ver_test_6_SOURCES = ver_test_6.c
ver_test_6_DEPENDENCIES = gcctestdir/ld ver_test_2.so
ver_test_6_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ver_test_6_LDADD = ver_test_2.so

ver_test_7.so: ver_test_4.o $(srcdir)/ver_test_4.script ver_test_7.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,--version-script,$(srcdir)/ver_test_4.script ver_test_4.o ver_test_7.o
ver_test_7.o: ver_test_7.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
check_SCRIPTS += ver_test_7.sh
check_DATA += ver_test_7.syms
ver_test_7.syms: ver_test_7.so
	$(TEST_READELF) -s $< >$@ 2>/dev/null

check_PROGRAMS += ver_test_8
ver_test_8_SOURCES = two_file_test_main.cc
ver_test_8_DEPENDENCIES = gcctestdir/ld ver_test_8_1.so ver_test_8_2.so
ver_test_8_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ver_test_8_LDADD = ver_test_8_1.so ver_test_8_2.so
ver_test_8_1.so: two_file_test_1_pic.o two_file_test_1b_pic.o ver_test_8_2.so gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared two_file_test_1_pic.o two_file_test_1b_pic.o ver_test_8_2.so
ver_test_8_2.so: two_file_test_2_pic.o $(srcdir)/ver_test_8.script gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,--version-script,$(srcdir)/ver_test_8.script two_file_test_2_pic.o

check_SCRIPTS += ver_test_8.sh
check_DATA += ver_test_8_2.so.syms
ver_test_8_2.so.syms: ver_test_8_2.so
	$(TEST_READELF) -s $< >$@ 2>/dev/null

check_PROGRAMS += ver_test_9
ver_test_9_SOURCES = ver_test_main.cc
ver_test_9_DEPENDENCIES = gcctestdir/ld ver_test_9.so
ver_test_9_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ver_test_9_LDADD = ver_test_9.so
ver_test_9.so: ver_test_9.o ver_test_4.so ver_test_5.so gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,-R,. ver_test_9.o ver_test_5.so ver_test_4.so
ver_test_9.o: ver_test_9.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<

check_SCRIPTS += ver_test_10.sh
check_DATA += ver_test_10.syms
ver_test_10.syms: ver_test_10.so
	$(TEST_READELF) -s $< >$@ 2>/dev/null
ver_test_10.so: gcctestdir/ld ver_test_2.o ver_test_10.script
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,--version-script,$(srcdir)/ver_test_10.script ver_test_2.o

check_PROGRAMS += ver_test_11
MOSTLYCLEANFILES += ver_test_11.a
ver_test_11_SOURCES = ver_test_main_2.cc
ver_test_11_DEPENDENCIES = gcctestdir/ld ver_test_11.a
ver_test_11_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ver_test_11_LDADD = ver_test_11.a
ver_test_11.a: ver_test_1.o ver_test_2.o ver_test_4.o
	$(TEST_AR) rc $@ $^

check_PROGRAMS += ver_test_12
ver_test_12_SOURCES = ver_test_main_2.cc
ver_test_12_DEPENDENCIES = gcctestdir/ld ver_test_12.o
ver_test_12_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ver_test_12_LDADD = ver_test_12.o
ver_test_12.o: gcctestdir/ld ver_test_1.o ver_test_2.o ver_test_4.o
	gcctestdir/ld -r -o $@ ver_test_1.o ver_test_2.o ver_test_4.o

check_SCRIPTS += ver_test_13.sh
check_DATA += ver_test_13.syms
ver_test_13.syms: ver_test_13.so
	$(TEST_READELF) -s $< >$@ 2>/dev/null
ver_test_13.so: gcctestdir/ld ver_test_13.o ver_test_13.script
	$(LINK) -Bgcctestdir/ -shared -Wl,--version-script,$(srcdir)/ver_test_13.script ver_test_13.o
ver_test_13.o: ver_test_13.c
	$(COMPILE) -c -fpic -o $@ $<

check_PROGRAMS += protected_1
protected_1_SOURCES = \
	protected_main_1.cc protected_main_2.cc protected_main_3.cc
protected_1_DEPENDENCIES = gcctestdir/ld protected_1.so
protected_1_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
protected_1_LDADD = protected_1.so

protected_1.so: gcctestdir/ld protected_1_pic.o protected_2_pic.o protected_3_pic.o
	$(CXXLINK) -Bgcctestdir/ -shared protected_1_pic.o protected_2_pic.o protected_3_pic.o
protected_1_pic.o: protected_1.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
protected_2_pic.o: protected_2.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
protected_3_pic.o: protected_3.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<

check_PROGRAMS += protected_2
protected_2_SOURCES = protected_main_1.cc protected_3.cc
protected_2_DEPENDENCIES = gcctestdir/ld protected_1.so
protected_2_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
protected_2_LDADD = protected_1.so

check_DATA += protected_3.err
MOSTLYCLEANFILES += protected_3.err
protected_4_pic.o: protected_4.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
protected_3.err: protected_4_pic.o gcctestdir/ld
	@echo $(CXXLINK) -Bgcctestdir/ -shared -o protected_4.so protected_4_pic.o "2>$@"
	@if $(CXXLINK) -Bgcctestdir/ -shared -o protected_4.so protected_4_pic.o 2>$@; then \
	  echo 1>&2 "Link of protected_4.so should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi

check_PROGRAMS += relro_test
check_SCRIPTS += relro_test.sh
check_DATA += relro_test.stdout
relro_test_SOURCES = relro_test_main.cc
relro_test_DEPENDENCIES = gcctestdir/ld relro_test.so
relro_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
relro_test_LDADD = relro_test.so
relro_test.so: gcctestdir/ld relro_test_pic.o
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,-z,relro relro_test_pic.o
relro_test_pic.o: relro_test.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<
relro_test.stdout: relro_test.so
	$(TEST_READELF) -SlW relro_test.so > relro_test.stdout

check_PROGRAMS += relro_now_test
relro_now_test_SOURCES = relro_test_main.cc
relro_now_test_DEPENDENCIES = gcctestdir/ld relro_now_test.so
relro_now_test_LDFLAGS = -Bgcctestdir -Wl,-R,. -Wl,-z,relro -Wl,-z,now
relro_now_test_LDADD = relro_now_test.so
relro_now_test.so: gcctestdir/ld relro_test_pic.o
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,-z,relro -Wl,-z,now relro_test_pic.o

check_PROGRAMS += relro_strip_test
relro_strip_test_SOURCES = relro_test_main.cc
relro_strip_test_DEPENDENCIES = gcctestdir/ld relro_strip_test.so
relro_strip_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
relro_strip_test_LDADD = relro_strip_test.so
relro_strip_test.so: relro_test.so
	$(TEST_STRIP) -o $@ $<

check_PROGRAMS += relro_script_test
relro_script_test_SOURCES = relro_test_main.cc
relro_script_test_DEPENDENCIES = gcctestdir/ld relro_script_test.so
relro_script_test_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
relro_script_test_LDADD = relro_script_test.so
relro_script_test.so: gcctestdir/ld relro_script_test.t relro_test_pic.o
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,-z,relro -Wl,-T,$(srcdir)/relro_script_test.t relro_test_pic.o

check_PROGRAMS += script_test_1
script_test_1_SOURCES = script_test_1a.cc script_test_1b.cc
script_test_1_DEPENDENCIES = gcctestdir/ld script_test_1.t
script_test_1_LDFLAGS = -Bgcctestdir/ -Wl,-R,. -Wl,-T,$(srcdir)/script_test_1.t
script_test_1_LDADD =

check_PROGRAMS += script_test_2
script_test_2_SOURCES = script_test_2.cc script_test_2a.cc script_test_2b.cc
script_test_2_DEPENDENCIES = gcctestdir/ld script_test_2.t
script_test_2_LDFLAGS = -Bgcctestdir/ -Wl,-R,. -Wl,-T,$(srcdir)/script_test_2.t
script_test_2_LDADD =

check_PROGRAMS += justsyms
justsyms_SOURCES = justsyms_1.cc
justsyms_DEPENDENCIES = gcctestdir/ld justsyms_2r.o
justsyms_LDFLAGS = -Bgcctestdir/ -Wl,-R,justsyms_2r.o
justsyms_LDADD =
justsyms_2.o: justsyms_2.cc
	$(CXXCOMPILE) -c -o $@ $<
justsyms_2r.o: justsyms_2.o gcctestdir/ld $(srcdir)/justsyms.t
	gcctestdir/ld -o $@ -r -T $(srcdir)/justsyms.t justsyms_2.o

check_PROGRAMS += justsyms_exec
justsyms_exec_SOURCES = justsyms_exec.c
justsyms_exec_DEPENDENCIES = gcctestdir/ld justsyms_lib
justsyms_exec_LDFLAGS = -Bgcctestdir/ -Wl,-R,justsyms_lib
justsyms_exec_LDADD =
MOSTLYCLEANFILES += justsyms_lib
justsyms_lib.o: justsyms_lib.c
	$(COMPILE) -c -o $@ $<
justsyms_lib: justsyms_lib.o gcctestdir/ld
	gcctestdir/ld -o $@ -Ttext=0x1000200 -Tdata=0x2000000 -e exported_func justsyms_lib.o

check_PROGRAMS += binary_test
MOSTLYCLEANFILES += binary.txt
binary_test_SOURCES = binary_test.cc
binary_test_DEPENDENCIES = gcctestdir/ld binary.txt
binary_test_LDFLAGS = -Bgcctestdir/ -Wl,--format,binary,binary.txt,--format,elf
binary_test_LDADD =
# Copy the file to the build directory to avoid worrying about the
# full pathname in the generated symbols.
binary.txt: $(srcdir)/binary.in
	rm -f $@
	$(LN_S) $< $@

check_SCRIPTS += ver_matching_test.sh
check_DATA += ver_matching_test.stdout
MOSTLYCLEANFILES += ver_matching_test.stdout
ver_matching_def.so: ver_matching_def_pic.o $(srcdir)/version_script.map gcctestdir/ld
	$(CXXLINK) -O0 -Bgcctestdir/ -shared ver_matching_def_pic.o -Wl,--version-script=$(srcdir)/version_script.map
ver_matching_def_pic.o: ver_matching_def.cc
	$(CXXCOMPILE) -O0 -c -fpic -o $@ $<
ver_matching_test.stdout: ver_matching_def.so
	$(TEST_OBJDUMP) -T ver_matching_def.so | $(TEST_CXXFILT) > ver_matching_test.stdout

check_PROGRAMS += script_test_3
check_SCRIPTS += script_test_3.sh
check_DATA += script_test_3.stdout
MOSTLYCLEANFILES += script_test_3.stdout
script_test_3: basic_test.o gcctestdir/ld script_test_3.t
	$(CXXLINK) -Bgcctestdir/ basic_test.o -Wl,-T,$(srcdir)/script_test_3.t
script_test_3.stdout: script_test_3
	$(TEST_READELF) -SlW script_test_3 > script_test_3.stdout

check_PROGRAMS += tls_phdrs_script_test
tls_phdrs_script_test_SOURCES = $(tls_test_SOURCES)
tls_phdrs_script_test_DEPENDENCIES = $(tls_test_DEPENDENCIES) $(srcdir)/script_test_3.t
tls_phdrs_script_test_LDFLAGS = $(tls_test_LDFLAGS) -Wl,-T,$(srcdir)/script_test_3.t
tls_phdrs_script_test_LDADD = $(tls_test_LDADD)

check_SCRIPTS += script_test_4.sh
check_DATA += script_test_4.stdout
MOSTLYCLEANFILES += script_test_4
script_test_4: basic_test.o gcctestdir/ld $(srcdir)/script_test_4.t
	$(CXXLINK) -Bgcctestdir/ basic_test.o -Wl,-T,$(srcdir)/script_test_4.t
script_test_4.stdout: script_test_4
	$(TEST_READELF) -SlW script_test_4 > script_test_4.stdout

check_PROGRAMS += tls_script_test
tls_script_test_SOURCES = $(tls_test_SOURCES)
tls_script_test_DEPENDENCIES = $(tls_test_DEPENDENCIES) $(srcdir)/script_test_4.t
tls_script_test_LDFLAGS = $(tls_test_LDFLAGS) -Wl,-T,$(srcdir)/script_test_4.t
tls_script_test_LDADD = $(tls_test_LDADD)

check_SCRIPTS += script_test_5.sh
check_DATA += script_test_5.stdout
MOSTLYCLEANFILES += script_test_5
script_test_5: script_test_5.o gcctestdir/ld $(srcdir)/script_test_5.t
	$(CXXLINK) -Bgcctestdir/ script_test_5.o -Wl,-T,$(srcdir)/script_test_5.t
script_test_5.stdout: script_test_5
	$(TEST_READELF) -SW script_test_5 > script_test_5.stdout

check_SCRIPTS += script_test_6.sh
check_DATA += script_test_6.stdout
MOSTLYCLEANFILES += script_test_6
script_test_6: basic_test.o gcctestdir/ld $(srcdir)/script_test_6.t
	$(CXXLINK) -Bgcctestdir/ basic_test.o -Wl,-T,$(srcdir)/script_test_6.t \
	-Wl,-Ttext=0x10001000 -Wl,-Tdata=0x10200000 -Wl,-Tbss=0x10400000
script_test_6.stdout: script_test_6
	$(TEST_READELF) -SlW script_test_6 > script_test_6.stdout

check_SCRIPTS += script_test_7.sh
check_DATA += script_test_7.stdout
MOSTLYCLEANFILES += script_test_7
script_test_7: basic_test.o gcctestdir/ld $(srcdir)/script_test_7.t
	$(CXXLINK) -Bgcctestdir/ basic_test.o -Wl,-T,$(srcdir)/script_test_7.t
script_test_7.stdout: script_test_7
	$(TEST_READELF) -SlW script_test_7 > script_test_7.stdout

check_SCRIPTS += script_test_8.sh
check_DATA += script_test_8.stdout
MOSTLYCLEANFILES += script_test_8
script_test_8: basic_test.o gcctestdir/ld $(srcdir)/script_test_7.t
	$(CXXLINK) -Bgcctestdir/ basic_test.o -Wl,-T,$(srcdir)/script_test_7.t \
	-Wl,-Ttext=0x20001000 -Wl,-Tdata=0x20200000 -Wl,-Tbss=0x20400000
script_test_8.stdout: script_test_8
	$(TEST_READELF) -SlW script_test_8 > script_test_8.stdout

check_SCRIPTS += script_test_9.sh
check_DATA += script_test_9.stdout
MOSTLYCLEANFILES += script_test_9
script_test_9.o: script_test_9.cc
	$(CXXCOMPILE) -O0 -c -o $@ $<
script_test_9: gcctestdir/ld $(srcdir)/script_test_9.t script_test_9.o
	$(CXXLINK) -Bgcctestdir/ script_test_9.o -Wl,-T,$(srcdir)/script_test_9.t
script_test_9.stdout: script_test_9
	$(TEST_READELF) -lW script_test_9 > script_test_9.stdout

# Test scripts with a relocatable link.
# The -g option is necessary to trigger a bug where a section
# declared in a script file is assigned a non-zero starting address.
check_PROGRAMS += script_test_11
script_test_11: gcctestdir/ld script_test_11_r.o
	$(LINK) -Bgcctestdir/ script_test_11_r.o
script_test_11_r.o: gcctestdir/ld $(srcdir)/script_test_11.t script_test_11a.o script_test_11b.o
	gcctestdir/ld -r -o $@ -T $(srcdir)/script_test_11.t script_test_11a.o script_test_11b.o
script_test_11a.o: script_test_11a.c
	$(COMPILE) -c -g -o $@ $<
script_test_11b.o: script_test_11b.c
	$(COMPILE) -c -g -o $@ $<

# Test difference between "*(a b)" and "*(a) *(b)" in input section spec.
check_PROGRAMS += script_test_12
script_test_12: gcctestdir/ld $(srcdir)/script_test_12.t script_test_12a.o script_test_12b.o
	$(LINK) -Bgcctestdir/ -Wl,-T,$(srcdir)/script_test_12.t script_test_12a.o script_test_12b.o

check_PROGRAMS += script_test_12i
script_test_12i: gcctestdir/ld $(srcdir)/script_test_12i.t script_test_12a.o script_test_12b.o
	$(LINK) -Bgcctestdir/ -Wl,-T,$(srcdir)/script_test_12i.t script_test_12a.o script_test_12b.o
script_test_12a.o: script_test_12a.c
	$(COMPILE) -O0 -c -o $@ $<
script_test_12b.o: script_test_12b.c
	$(COMPILE) -O0 -c -o $@ $<

# Test for ordering internally created sections with a linker script.
check_SCRIPTS += script_test_13.sh
check_DATA += script_test_13.stdout
MOSTLYCLEANFILES += script_test_13
script_test_13.o: script_test_13.c
	$(COMPILE) -O0 -c -fPIC -o $@ $<
script_test_13: $(srcdir)/script_test_13.t script_test_13.o gcctestdir/ld
	gcctestdir/ld -shared -o $@ script_test_13.o -T $(srcdir)/script_test_13.t
script_test_13.stdout: script_test_13
	$(TEST_READELF) -SW script_test_13 > $@

# Test for SORT_BY_INIT_PRIORITY.
check_SCRIPTS += script_test_14.sh
check_DATA += script_test_14.stdout
MOSTLYCLEANFILES += script_test_14
script_test_14.o: script_test_14.s
	$(TEST_AS) -o $@ $<
script_test_14: $(srcdir)/script_test_14.t script_test_14.o gcctestdir/ld
	gcctestdir/ld -o $@ script_test_14.o -T $(srcdir)/script_test_14.t
script_test_14.stdout: script_test_14
	$(TEST_OBJDUMP) -s script_test_14 > $@

# Test BSS section placement at end of segment.
check_SCRIPTS += script_test_15a.sh
check_DATA += script_test_15a.stdout
MOSTLYCLEANFILES += script_test_15a
script_test_15a: $(srcdir)/script_test_15a.t script_test_15.o gcctestdir/ld
	gcctestdir/ld -o $@ script_test_15.o -T $(srcdir)/script_test_15a.t
script_test_15a.stdout: script_test_15a
	$(TEST_READELF) -lSW script_test_15a > $@

# Test BSS section placement in middle of segment.
check_SCRIPTS += script_test_15b.sh
check_DATA += script_test_15b.stdout
MOSTLYCLEANFILES += script_test_15b
script_test_15b: $(srcdir)/script_test_15b.t script_test_15.o gcctestdir/ld
	gcctestdir/ld -o $@ script_test_15.o -T $(srcdir)/script_test_15b.t
script_test_15b.stdout: script_test_15b
	$(TEST_READELF) -lSW script_test_15b > $@

# Test orphan BSS section placement.
check_SCRIPTS += script_test_15c.sh
check_DATA += script_test_15c.stdout
MOSTLYCLEANFILES += script_test_15c
script_test_15c: $(srcdir)/script_test_15c.t script_test_15.o gcctestdir/ld
	gcctestdir/ld -o $@ script_test_15.o -T $(srcdir)/script_test_15c.t
script_test_15c.stdout: script_test_15c
	$(TEST_READELF) -lSW script_test_15c > $@

# Test --dynamic-list, --dynamic-list-data, --dynamic-list-cpp-new,
# and --dynamic-list-cpp-typeinfo

check_SCRIPTS += dynamic_list.sh
check_DATA += dynamic_list.stdout
MOSTLYCLEANFILES += dynamic_list dynamic_list.stdout
dynamic_list: basic_test.o gcctestdir/ld $(srcdir)/dynamic_list.t
	$(CXXLINK) -Bgcctestdir/ basic_test.o \
	  -Wl,--dynamic-list $(srcdir)/dynamic_list.t \
	  -Wl,--dynamic-list-data \
	  -Wl,--dynamic-list-cpp-new \
	  -Wl,--dynamic-list-cpp-typeinfo
dynamic_list.stdout: dynamic_list
	$(TEST_READELF) -W --dyn-syms dynamic_list > dynamic_list.stdout

check_PROGRAMS += dynamic_list_2
dynamic_list_2_SOURCES = dynamic_list_2.cc
dynamic_list_2_DEPENDENCIES = gcctestdir/ld dynamic_list_lib1.so dynamic_list_lib2.so
dynamic_list_2_LDFLAGS = -Bgcctestdir/ -L. -Wl,-R,. -Wl,--no-as-needed
dynamic_list_2_LDADD = dynamic_list_lib1.so dynamic_list_lib2.so

dynamic_list_lib1.so: gcctestdir/ld dynamic_list_lib1.o
	$(CXXLINK) -Bgcctestdir/ -shared dynamic_list_lib1.o
dynamic_list_lib1.o: dynamic_list_lib1.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<

dynamic_list_lib2.so: gcctestdir/ld dynamic_list_lib2.o $(srcdir)/dynamic_list_2.t
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,-Bsymbolic-functions -Wl,--dynamic-list,$(srcdir)/dynamic_list_2.t dynamic_list_lib2.o
dynamic_list_lib2.o: dynamic_list_lib2.cc
	$(CXXCOMPILE) -c -fpic -o $@ $<

check_PROGRAMS += thin_archive_test_1
MOSTLYCLEANFILES += libthin1.a libthin3.a libthinall.a \
	alt/thin_archive_test_2.o alt/thin_archive_test_4.o \
	alt/libthin2.a alt/libthin4.a
thin_archive_test_1_SOURCES = thin_archive_main.cc
thin_archive_test_1_DEPENDENCIES = gcctestdir/ld libthin1.a alt/libthin2.a
thin_archive_test_1_LDFLAGS = -Bgcctestdir/ -Lalt
thin_archive_test_1_LDADD = libthin1.a -lthin2

check_PROGRAMS += thin_archive_test_2
thin_archive_test_2_SOURCES = thin_archive_main.cc
thin_archive_test_2_DEPENDENCIES = gcctestdir/ld libthinall.a
thin_archive_test_2_LDFLAGS = -Bgcctestdir/ -L.
thin_archive_test_2_LDADD = -lthinall

libthin1.a: thin_archive_test_1.o alt/thin_archive_test_2.o
	rm -f $@
	$(TEST_AR) crT $@ $^
alt/libthin2.a: thin_archive_test_3.o alt/thin_archive_test_4.o
	rm -f $@
	$(TEST_AR) crT $@ $^
libthin3.a: thin_archive_test_1.o alt/thin_archive_test_4.o
	rm -f $@
	$(TEST_AR) crT $@ $^
alt/libthin4.a: alt/thin_archive_test_2.o thin_archive_test_3.o
	rm -f $@
	$(TEST_AR) crT $@ $^
libthinall.a: libthin3.a alt/libthin4.a
	rm -f $@
	$(TEST_AR) crT $@ $^
alt/thin_archive_test_2.o: thin_archive_test_2.cc
	test -d alt || mkdir -p alt
	$(CXXCOMPILE) -c -o $@ $<
alt/thin_archive_test_4.o: thin_archive_test_4.cc
	test -d alt || mkdir -p alt
	$(CXXCOMPILE) -c -o $@ $<

if PLUGINS

check_PROGRAMS += plugin_test_1
check_SCRIPTS += plugin_test_1.sh
check_DATA += plugin_test_1.err
MOSTLYCLEANFILES += plugin_test_1.err
plugin_test_1: two_file_test_main.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2.o.syms empty.o.syms gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so",--plugin-opt,"_Z4f13iv" two_file_test_main.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2.o.syms empty.o.syms 2>plugin_test_1.err
plugin_test_1.err: plugin_test_1
	@touch plugin_test_1.err

check_PROGRAMS += plugin_test_2
check_SCRIPTS += plugin_test_2.sh
check_DATA += plugin_test_2.err
MOSTLYCLEANFILES += plugin_test_2.err
plugin_test_2: two_file_test_main.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_shared_2.so gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,-R,.,--plugin,"./plugin_test.so" two_file_test_main.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_shared_2.so 2>plugin_test_2.err
plugin_test_2.err: plugin_test_2
	@touch plugin_test_2.err

check_PROGRAMS += plugin_test_3
check_SCRIPTS += plugin_test_3.sh
check_DATA += plugin_test_3.err
MOSTLYCLEANFILES += plugin_test_3.err
plugin_test_3: two_file_test_main.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2.o.syms empty.o.syms gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--export-dynamic -Wl,--no-demangle,--plugin,"./plugin_test.so",--plugin-opt,"_Z4f13iv" two_file_test_main.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2.o.syms empty.o.syms 2>plugin_test_3.err
plugin_test_3.err: plugin_test_3
	@touch plugin_test_3.err

check_PROGRAMS += plugin_test_4
check_SCRIPTS += plugin_test_4.sh
check_DATA += plugin_test_4.err
MOSTLYCLEANFILES += plugin_test_4.a plugin_test_4.err
plugin_test_4: two_file_test_main.o plugin_test_4.a gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so",--plugin-opt,"_Z4f13iv" two_file_test_main.o -Wl,--whole-archive,plugin_test_4.a,--no-whole-archive 2>plugin_test_4.err
plugin_test_4.err: plugin_test_4
	@touch plugin_test_4.err

plugin_test_4.a: two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2.o.syms
	$(TEST_AR) cr $@ $^

check_PROGRAMS += plugin_test_5
plugin_test_5: two_file_test_main.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2.o.syms unused.o.syms gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so",--plugin-opt,"_Z4f13iv",--gc-sections two_file_test_main.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2.o.syms unused.o.syms

check_PROGRAMS += plugin_test_6
check_SCRIPTS += plugin_test_6.sh
check_DATA += plugin_test_6.err
MOSTLYCLEANFILES += plugin_test_6.err
plugin_test_6: plugin_common_test_1.o.syms plugin_common_test_2.o.syms gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so" plugin_common_test_1.o.syms plugin_common_test_2.o.syms 2>plugin_test_6.err
plugin_test_6.err: plugin_test_6
	@touch plugin_test_6.err

check_PROGRAMS += plugin_test_7
check_SCRIPTS += plugin_test_7.sh
check_DATA += plugin_test_7.err plugin_test_7.o.syms
MOSTLYCLEANFILES += plugin_test_7.err
plugin_test_7: plugin_test_7_1.o plugin_test_7_1.o.syms plugin_test_7_2.o gcctestdir/ld plugin_test.so
	$(LINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so",--gc-sections,--print-gc-sections plugin_test_7_1.o.syms plugin_test_7_2.o 2>plugin_test_7.err
plugin_test_7.o.syms: plugin_test_7
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
plugin_test_7_1.o: plugin_test_7_1.c
	$(COMPILE) -DLTO -O0 -c -ffunction-sections -fdata-sections -o $@ $<
plugin_test_7_1_orig.o: plugin_test_7_1.c
	$(COMPILE) -O0 -c -ffunction-sections -fdata-sections -o $@ $<
plugin_test_7_1.o.syms: plugin_test_7_1_orig.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
plugin_test_7_2.o: plugin_test_7_2.c
	$(COMPILE) -O0 -c -ffunction-sections -fdata-sections -o $@ $<
plugin_test_7.err: plugin_test_7

# Test plugins with -r.
check_PROGRAMS += plugin_test_8
plugin_test_8.o: two_file_test_main.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2.o ../ld-new plugin_test.so
	../ld-new -r -o $@ --no-demangle --plugin "./plugin_test.so" two_file_test_main.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2.o
plugin_test_8: plugin_test_8.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle plugin_test_8.o

# Test that symbols known in the IR file but not in the replacement file
# produce an unresolved symbol error.
check_DATA += plugin_test_9.err
MOSTLYCLEANFILES += plugin_test_9.err
plugin_test_9.err: two_file_test_main.o two_file_test_1c.o.syms two_file_test_2.o.syms gcctestdir/ld plugin_test.so
	@echo $(CXXLINK) -Bgcctestdir/ -o plugin_test_9 -Wl,--no-demangle,--plugin,"./plugin_test.so" two_file_test_main.o two_file_test_1c.o.syms two_file_test_2.o.syms "2>$@"
	@if $(CXXLINK) -Bgcctestdir/ -o plugin_test_9 -Wl,--no-demangle,--plugin,"./plugin_test.so" two_file_test_main.o two_file_test_1c.o.syms two_file_test_2.o.syms 2>$@; then \
	  echo 1>&2 "Link of plugin_test_9 should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi
# Make a .syms file that claims to define the symbol _Z4t16av.
two_file_test_1c.o.syms: two_file_test_1.o.syms two_file_test_1c.o
	cp two_file_test_1.o.syms $@.tmp
	grep "_Z4t16av" two_file_test_1b.o.syms >> $@.tmp
	mv -f $@.tmp $@
# Make a copy of two_file_test_1.o, which does not define the symbol _Z4t16av.
MOSTLYCLEANFILES += two_file_test_1c.o
two_file_test_1c.o: two_file_test_1.o
	cp two_file_test_1.o $@

# As above, but check COMDAT case, where a non-IR file contains a duplicate
# of a COMDAT group in an IR file.
check_DATA += plugin_test_9b.err
MOSTLYCLEANFILES += plugin_test_9b.err
plugin_test_9b.err: plugin_test_9b_ir.o.syms plugin_test_9b_ir.o plugin_test_9b_elf.o gcctestdir/ld plugin_test.so
	@echo $(CXXLINK) -Bgcctestdir/ -o plugin_test_9b -Wl,--no-demangle,--plugin,"./plugin_test.so",--plugin-opt,"_ZN1A5printEv" plugin_test_9b_ir.o plugin_test_9b_elf.o "2>$@"
	@if $(CXXLINK) -Bgcctestdir/ -o plugin_test_9b -Wl,--no-demangle,--plugin,"./plugin_test.so",--plugin-opt,"_ZN1A5printEv" plugin_test_9b_ir.o plugin_test_9b_elf.o 2>$@; then \
	  echo 1>&2 "Link of plugin_test_9b should have failed"; \
	  rm -f $@; \
	  exit 1; \
	fi
# Make a .syms file that claims to define a method in class A in a COMDAT group.
# The real plugin_test_9b_ir.o will be compiled without the -D, and will not
# define any methods in class A.
plugin_test_9b_ir.o.syms: plugin_test_9b_ir_witha.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
plugin_test_9b_ir_witha.o: plugin_test_9b_ir.cc
	$(CXXCOMPILE) -c -DUSE_CLASS_A -o $@ $<

check_PROGRAMS += plugin_test_10
check_SCRIPTS += plugin_test_10.sh
check_DATA += plugin_test_10.sections
MOSTLYCLEANFILES += plugin_test_10.sections
plugin_test_10: plugin_common_test_1.o.syms plugin_common_test_2.o  gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so" plugin_common_test_1.o.syms plugin_common_test_2.o
plugin_test_10.sections: plugin_test_10
	$(TEST_READELF) -SW $< >$@ 2>/dev/null

check_PROGRAMS += plugin_test_11
check_SCRIPTS += plugin_test_11.sh
check_DATA += plugin_test_11.err
MOSTLYCLEANFILES += plugin_test_11.err plugin_test_thin.a
PLUGIN_TEST_11_SYMS = two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2.o.syms
plugin_test_11: two_file_test_main.o plugin_test_thin.a gcctestdir/ld plugin_test.so $(PLUGIN_TEST_11_SYMS)
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so",--plugin-opt,"_Z4f13iv" two_file_test_main.o plugin_test_thin.a 2>plugin_test_11.err
plugin_test_11.err: plugin_test_11
	@touch plugin_test_11.err
plugin_test_thin.a: two_file_test_1.o two_file_test_1b.o two_file_test_2.o
	rm -f $@
	$(TEST_AR) crT $@ $^


check_PROGRAMS += plugin_test_wrap_symbols
check_SCRIPTS += plugin_test_wrap_symbols.sh
check_DATA += plugin_test_wrap_symbols.err
MOSTLYCLEANFILES += plugin_test_wrap_symbols.err
plugin_test_wrap_symbols_1.o: plugin_test_wrap_symbols_1.cc
	$(COMPILE) -c -o $@ $<
plugin_test_wrap_symbols_2.o: plugin_test_wrap_symbols_2.cc
	$(COMPILE) -c -o $@ $<
plugin_test_wrap_symbols: plugin_test_wrap_symbols_1.o plugin_test_wrap_symbols_2.o gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--plugin,"./plugin_test.so" -Wl,--wrap=hello,--wrap=jello plugin_test_wrap_symbols_1.o plugin_test_wrap_symbols_2.o 2>plugin_test_wrap_symbols.err
plugin_test_wrap_symbols.err: plugin_test_wrap_symbols
	@touch plugin_test_wrap_symbols.err

check_PROGRAMS += plugin_test_start_lib
check_SCRIPTS += plugin_test_start_lib.sh
check_DATA += plugin_test_start_lib.err
MOSTLYCLEANFILES += plugin_test_start_lib.err
plugin_test_start_lib: unused.o plugin_start_lib_test.o plugin_start_lib_test_2.syms gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so" plugin_start_lib_test.o \
		-Wl,--start-lib plugin_start_lib_test_2.syms -Wl,--end-lib 2>plugin_test_start_lib.err
plugin_test_start_lib.err: plugin_test_start_lib
	@touch plugin_test_start_lib.err

check_PROGRAMS += plugin_test_defsym
check_SCRIPTS += plugin_test_defsym.sh
check_DATA += plugin_test_defsym.err
MOSTLYCLEANFILES += plugin_test_defsym.err
plugin_test_defsym.syms: plugin_test_defsym.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
plugin_test_defsym.o: plugin_test_defsym.c
	$(COMPILE) -c -o $@ $<
plugin_test_defsym: plugin_test_defsym.o plugin_test_defsym.syms gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so" -Wl,--defsym,bar=foo plugin_test_defsym.syms 2>plugin_test_defsym.err
plugin_test_defsym.err: plugin_test_defsym
	@touch plugin_test_defsym.err

plugin_start_lib_test_2.syms: plugin_start_lib_test_2.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null

plugin_test.so: plugin_test.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared plugin_test.o
plugin_test.o: plugin_test.c
	$(COMPILE) -O0 -c -fpic -o $@ $<

two_file_test_main.o.syms: two_file_test_main.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
two_file_test_1.o.syms: two_file_test_1.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
two_file_test_1b.o.syms: two_file_test_1b.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
two_file_test_2.o.syms: two_file_test_2.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
plugin_common_test_1.o.syms: plugin_common_test_1.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
plugin_common_test_2.o.syms: plugin_common_test_2.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null

empty.o.syms:
	@echo "" >$@
	@echo "Symbol table" >>$@

if TLS

check_PROGRAMS += plugin_test_tls
check_SCRIPTS += plugin_test_tls.sh
check_DATA += plugin_test_tls.err
MOSTLYCLEANFILES += plugin_test_tls.err
plugin_test_tls: two_file_test_tls.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2_tls.o.syms gcctestdir/ld plugin_test.so
	$(CXXLINK) -Bgcctestdir/ -Wl,--no-demangle,--plugin,"./plugin_test.so",--plugin-opt,"_Z4f13iv" two_file_test_tls.o two_file_test_1.o.syms two_file_test_1b.o.syms two_file_test_2_tls.o.syms 2>plugin_test_tls.err
plugin_test_tls.err: plugin_test_tls
	@touch plugin_test_tls.err

two_file_test_2_tls.o.syms: two_file_test_2_tls.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null

endif TLS

MOSTLYCLEANFILES += unused.c
unused.o.syms: unused.o
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
	@echo "     1: 00000000     4 FUNC    GLOBAL DEFAULT    1 UNUSED" >>$@
unused.o: unused.c
	$(COMPILE) -c -o $@ $<
unused.c:
	@cp /dev/null $@

check_SCRIPTS += plugin_final_layout.sh
check_DATA += plugin_final_layout.stdout plugin_final_layout_readelf.stdout
MOSTLYCLEANFILES += plugin_final_layout
plugin_final_layout.o: plugin_final_layout.cc
	$(CXXCOMPILE) -O0 -c -ffunction-sections  -fdata-sections -g -o $@ $<
plugin_final_layout: plugin_final_layout.o plugin_section_order.so gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--plugin,"./plugin_section_order.so" plugin_final_layout.o
plugin_final_layout.stdout: plugin_final_layout
	$(TEST_NM) -n --synthetic plugin_final_layout > plugin_final_layout.stdout
plugin_final_layout_readelf.stdout: plugin_final_layout
	$(TEST_READELF) -Wl plugin_final_layout > plugin_final_layout_readelf.stdout

plugin_section_order.so: plugin_section_order.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared plugin_section_order.o
plugin_section_order.o: plugin_section_order.c
	$(COMPILE) -O0 -c -fpic -o $@ $<

check_SCRIPTS += plugin_layout_with_alignment.sh
check_DATA += plugin_layout_with_alignment.stdout
MOSTLYCLEANFILES += plugin_layout_with_alignment
plugin_layout_with_alignment.o: plugin_layout_with_alignment.c
	$(COMPILE) -O0 -c -ffunction-sections  -fdata-sections -g -o $@ $<
plugin_layout_with_alignment: plugin_layout_with_alignment.o plugin_section_alignment.so gcctestdir/ld
	$(LINK) -Bgcctestdir/ -Wl,--plugin,"./plugin_section_alignment.so" plugin_layout_with_alignment.o
plugin_layout_with_alignment.stdout: plugin_layout_with_alignment
	$(TEST_NM) -n --synthetic plugin_layout_with_alignment > plugin_layout_with_alignment.stdout

plugin_section_alignment.so: plugin_section_alignment.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -shared plugin_section_alignment.o
plugin_section_alignment.o: plugin_section_alignment.cc
	$(CXXCOMPILE) -O0 -c -fpic -o $@ $<

endif PLUGINS

check_PROGRAMS += exclude_libs_test
check_SCRIPTS += exclude_libs_test.sh
check_DATA += exclude_libs_test.syms
MOSTLYCLEANFILES += exclude_libs_test.syms libexclude_libs_test_1.a \
        libexclude_libs_test_2.a alt/libexclude_libs_test_3.a
exclude_libs_test_SOURCES = exclude_libs_test.c
exclude_libs_test_DEPENDENCIES = gcctestdir/ld libexclude_libs_test_1.a \
	libexclude_libs_test_2.a alt/libexclude_libs_test_3.a
exclude_libs_test_LDFLAGS = -Bgcctestdir/ -L. -Lalt \
	-Wl,--exclude-libs,dummy:libexclude_libs_test_1 \
	-Wl,--exclude-libs,libexclude_libs_test_3
exclude_libs_test_LDADD = -lexclude_libs_test_1 -lexclude_libs_test_2 \
	alt/libexclude_libs_test_3.a
exclude_libs_test.syms: exclude_libs_test
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
libexclude_libs_test_1.a: exclude_libs_test_1.o
	$(TEST_AR) rc $@ $^
libexclude_libs_test_2.a: exclude_libs_test_2.o
	$(TEST_AR) rc $@ $^
alt/libexclude_libs_test_3.a: exclude_libs_test_3.o
	test -d alt || mkdir -p alt
	$(TEST_AR) rc $@ $^

check_PROGRAMS += local_labels_test
local_labels_test.o: ver_test_6.c
	$(COMPILE) -g -c -Wa,-L -o $@ $<
local_labels_test: local_labels_test.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ local_labels_test.o

check_PROGRAMS += discard_locals_test
check_SCRIPTS += discard_locals_test.sh
check_DATA += discard_locals_test.syms \
	discard_locals_relocatable_test1.syms \
	discard_locals_relocatable_test2.syms
MOSTLYCLEANFILES += discard_locals_test.syms \
	discard_locals_relocatable_test1.syms \
	discard_locals_relocatable_test2.syms \
	discard_locals_relocatable_test1.out \
	discard_locals_relocatable_test2.out
discard_locals_test_SOURCES = discard_locals_test.c
discard_locals_test_LDFLAGS = -Bgcctestdir/ -Wl,--discard-locals
discard_locals_test.syms: discard_locals_test
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
# '-Wa,-L' is required to preserve the local label used for testing.
discard_locals_test.o: discard_locals_test.c
	$(COMPILE) -c -Wa,-L -o $@ $<

discard_locals_relocatable_test1.syms: discard_locals_relocatable_test1.out
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
discard_locals_relocatable_test.o: discard_locals_relocatable_test.c
	$(COMPILE) -c -Wa,-L -fPIC -o $@ $<
discard_locals_relocatable_test1.out: discard_locals_relocatable_test.o ../ld-new
	../ld-new --discard-locals -relocatable -o $@ $<

discard_locals_relocatable_test2.syms: discard_locals_relocatable_test2.out
	$(TEST_READELF) -sW $< >$@ 2>/dev/null
discard_locals_relocatable_test2.out: discard_locals_relocatable_test.o ../ld-new
	../ld-new --discard-all -relocatable -o $@ $<

if MCMODEL_MEDIUM
check_PROGRAMS += large
large_SOURCES = large.c
large_CFLAGS = -mcmodel=medium
large_DEPENDENCIES = gcctestdir/ld
large_LDFLAGS = -Bgcctestdir/
large_LDADD =
endif MCMODEL_MEDIUM

# Test that hidden and internal symbols in the main program cannot be
# referenced by a shared library.
check_SCRIPTS += hidden_test.sh
check_DATA += hidden_test.err
MOSTLYCLEANFILES += hidden_test hidden_test.err hidden_test.syms
libhidden.so: hidden_test_1.c gcctestdir/ld
	$(COMPILE) -Bgcctestdir/ -g -shared -fPIC -w -o $@ $(srcdir)/hidden_test_1.c
hidden_test: hidden_test_main.o libhidden.so gcctestdir/ld
	$(LINK) -Bgcctestdir/ -Wl,-R,. hidden_test_main.o libhidden.so 2>hidden_test.err
hidden_test.syms: hidden_test
	$(TEST_NM) -D hidden_test > $@
hidden_test.err: hidden_test
	@touch hidden_test.err

# Test -retain-symbols-file.
check_SCRIPTS += retain_symbols_file_test.sh
check_DATA += retain_symbols_file_test.stdout
MOSTLYCLEANFILES += retain_symbols_file_test retain_symbols_file_test.in \
                    retain_symbols_file_test.stdout
retain_symbols_file_test.so: basic_pic_test.o gcctestdir/ld
	echo 'main' > retain_symbols_file_test.in
	echo 't1' >> retain_symbols_file_test.in
	echo '_ZNK4t20a3getEv' >> retain_symbols_file_test.in
	echo '_Z3t18v' >> retain_symbols_file_test.in
	echo '__tcf_0' >> retain_symbols_file_test.in
	$(CXXLINK) -Bgcctestdir/ -shared -Wl,-retain-symbols-file,retain_symbols_file_test.in basic_pic_test.o
retain_symbols_file_test.stdout: retain_symbols_file_test.so
	$(TEST_NM) -C retain_symbols_file_test.so > $@


# Test that if the output file already exists and is empty,
# it will get execute permission.
check_PROGRAMS += permission_test
permission_test: basic_test.o gcctestdir/ld
	umask 022; \
	rm -f $@; \
	touch $@; \
	chmod 600 $@; \
	$(CXXLINK) -Bgcctestdir/ basic_test.o

# Check -l:foo.a
check_PROGRAMS += searched_file_test
MOSTLYCLEANFILES += searched_file_test searched_file_test_lib.o \
                    alt/searched_file_test_lib.a
searched_file_test_SOURCES = searched_file_test.cc
searched_file_test_DEPENDENCIES = gcctestdir/ld alt/searched_file_test_lib.a
searched_file_test_LDFLAGS = -Bgcctestdir/ -Lalt
searched_file_test_LDADD = -l:searched_file_test_lib.a
searched_file_test_lib.o: searched_file_test_lib.cc
	$(CXXCOMPILE) -c -o $@ $<
alt/searched_file_test_lib.a: searched_file_test_lib.o
	test -d alt || mkdir -p alt
	$(TEST_AR) rc $@ $^

# Test that no .gnu.version sections are created when
# symbol versioning is not used.
check_SCRIPTS += no_version_test.sh
check_DATA += no_version_test.stdout
MOSTLYCLEANFILES += libno_version_test.so no_version_test.stdout
# We invoke the linker directly since gcc may include additional objects that
# uses symbol versioning.
libno_version_test.so: no_version_test.o gcctestdir/ld
	gcctestdir/ld -shared -o $@ no_version_test.o
no_version_test.o: no_version_test.c
	$(COMPILE) -o $@ -c -fPIC $<
no_version_test.stdout: libno_version_test.so
	$(TEST_OBJDUMP) -h $< > $@

# Test STT_GNU_IFUNC symbols.
if IFUNC

ifuncmod1.o: ifuncmod1.c
	$(COMPILE) -c -fPIC -o $@ $<
ifuncmod1.so: ifuncmod1.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared ifuncmod1.o

ifuncdep1.o: ifuncmod1.c
	$(COMPILE) -c -o $@ $<

ifuncmain1pic.o: ifuncmain1.c
	$(COMPILE) -c -fPIC -o $@ $<
ifuncmain1pie.o: ifuncmain1.c
	$(COMPILE) -c -fPIE -o $@ $<

if HAVE_STATIC
if IFUNC_STATIC
check_PROGRAMS += ifuncmain1static
ifuncmain1static_SOURCES = ifuncmain1.c
ifuncmain1static_DEPENDENCIES = gcctestdir/ld ifuncdep1.o
ifuncmain1static_LDFLAGS = -Bgcctestdir/ -static
ifuncmain1static_LDADD = ifuncdep1.o

check_PROGRAMS += ifuncmain1picstatic
ifuncmain1picstatic: ifuncmain1pic.o ifuncmod1.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -static ifuncmain1pic.o ifuncmod1.o

check_SCRIPTS += ifuncmod1.sh
check_DATA += ifuncmod1.so.stderr
ifuncmod1.so.stderr: ifuncmod1.so
	$(TEST_READELF) -s $< > /dev/null 2> $@
endif
endif

check_PROGRAMS += ifuncmain1
ifuncmain1_SOURCES = ifuncmain1.c
ifuncmain1_DEPENDENCIES = gcctestdir/ld ifuncmod1.so
ifuncmain1_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ifuncmain1_LDADD = ifuncmod1.so

check_PROGRAMS += ifuncmain1pic
ifuncmain1pic: ifuncmain1pic.o ifuncmod1.so gcctestdir/ld
	$(LINK) -Bgcctestdir/ ifuncmain1pic.o ifuncmod1.so -Wl,-R,.

check_PROGRAMS += ifuncmain1vis
ifuncmain1vis_SOURCES = ifuncmain1vis.c
ifuncmain1vis_DEPENDENCIES = gcctestdir/ld ifuncmod1.so
ifuncmain1vis_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ifuncmain1vis_LDADD = ifuncmod1.so

check_PROGRAMS += ifuncmain1vispic
ifuncmain1vispic.o: ifuncmain1vis.c
	$(COMPILE) -c -fPIC -o $@ $<
ifuncmain1vispic: ifuncmain1vispic.o ifuncmod1.so gcctestdir/ld
	$(LINK) -Bgcctestdir/ ifuncmain1pic.o ifuncmod1.so -Wl,-R,.

check_PROGRAMS += ifuncmain1staticpic
ifuncmain1staticpic: ifuncmain1pic.o ifuncmod1.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ ifuncmain1pic.o ifuncmod1.o

check_PROGRAMS += ifuncmain1pie
ifuncmain1pie: ifuncmain1pie.o ifuncmod1.so gcctestdir/ld
	$(LINK) -Bgcctestdir/ -pie ifuncmain1pie.o ifuncmod1.so -Wl,-R,.

check_PROGRAMS += ifuncmain1vispie
ifuncmain1vispie.o: ifuncmain1vis.c
	$(COMPILE) -c -fPIE -o $@ $<
ifuncmain1vispie: ifuncmain1vispie.o ifuncmod1.so gcctestdir/ld
	$(LINK) -Bgcctestdir/ -pie ifuncmain1vispie.o ifuncmod1.so -Wl,-R,.

check_PROGRAMS += ifuncmain1staticpie
ifuncmain1staticpie: ifuncmain1pie.o ifuncmod1.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -pie ifuncmain1pie.o ifuncmod1.o

ifuncmain2pic.o: ifuncmain2.c
	$(COMPILE) -c -fPIC -o $@ $<

ifuncdep2pic.o: ifuncdep2.c
	$(COMPILE) -c -fPIC -o $@ $<

if HAVE_STATIC
if IFUNC_STATIC
check_PROGRAMS += ifuncmain2static
ifuncmain2static_SOURCES = ifuncmain2.c ifuncdep2.c
ifuncmain2static_DEPENDENCIES = gcctestdir/ld
ifuncmain2static_LDFLAGS = -Bgcctestdir/ -static
ifuncmain2static_LDADD =

check_PROGRAMS += ifuncmain2picstatic
ifuncmain2picstatic: ifuncmain2pic.o ifuncdep2pic.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -static ifuncmain2pic.o ifuncdep2pic.o
endif
endif

check_PROGRAMS += ifuncmain2
ifuncmain2_SOURCES = ifuncmain2.c ifuncdep2.c
ifuncmain2_DEPENDENCIES = gcctestdir/ld
ifuncmain2_LDFLAGS = -Bgcctestdir/
ifuncmain2_LDADD =

check_PROGRAMS += ifuncmain2pic
ifuncmain2pic: ifuncmain2pic.o ifuncdep2pic.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ ifuncmain2pic.o ifuncdep2pic.o

ifuncmod3.o: ifuncmod3.c
	$(COMPILE) -c -fPIC -o $@ $<
ifuncmod3.so: ifuncmod3.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared ifuncmod3.o

check_PROGRAMS += ifuncmain3
ifuncmain3_SOURCES = ifuncmain3.c
ifuncmain3_DEPENDENCIES = gcctestdir/ld ifuncmod3.so
ifuncmain3_LDFLAGS = -Bgcctestdir/ -Wl,--export-dynamic -Wl,-R,.
ifuncmain3_LDADD = -ldl

ifuncmain4pic.o: ifuncmain4.c
	$(COMPILE) -c -fPIC -o $@ $<

if HAVE_STATIC
if IFUNC_STATIC
check_PROGRAMS += ifuncmain4static
ifuncmain4static_SOURCES = ifuncmain4.c
ifuncmain4static_DEPENDENCIES = gcctestdir/ld
ifuncmain4static_LDFLAGS = -Bgcctestdir/ -static
ifuncmain4static_LDADD =

check_PROGRAMS += ifuncmain4picstatic
ifuncmain4picstatic: ifuncmain4pic.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -static ifuncmain4pic.o
endif
endif

check_PROGRAMS += ifuncmain4
ifuncmain4_SOURCES = ifuncmain4.c
ifuncmain4_DEPENDENCIES = gcctestdir/ld
ifuncmain4_LDFLAGS = -Bgcctestdir/
ifuncmain4_LDADD =

ifuncmain5pic.o: ifuncmain5.c
	$(COMPILE) -c -fPIC -o $@ $<

ifuncmain5pie.o: ifuncmain5.c
	$(COMPILE) -c -fPIE -o $@ $<

ifuncmod5.o: ifuncmod5.c
	$(COMPILE) -c -fPIC -o $@ $<
ifuncmod5.so: ifuncmod5.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared ifuncmod5.o

ifuncdep5.o: ifuncmod5.c
	$(COMPILE) -c -o $@ $<

if HAVE_STATIC
if IFUNC_STATIC
check_PROGRAMS += ifuncmain5static
ifuncmain5static_SOURCES = ifuncmain5.c
ifuncmain5static_DEPENDENCIES = gcctestdir/ld ifuncdep5.o
ifuncmain5static_LDFLAGS = -Bgcctestdir/ -static
ifuncmain5static_LDADD = ifuncdep5.o

check_PROGRAMS += ifuncmain5picstatic
ifuncmain5picstatic: ifuncmain5pic.o ifuncmod5.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -static ifuncmain5pic.o ifuncmod5.o
endif
endif

check_PROGRAMS += ifuncmain5
ifuncmain5_SOURCES = ifuncmain5.c
ifuncmain5_DEPENDENCIES = gcctestdir/ld ifuncmod5.so
ifuncmain5_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ifuncmain5_LDADD = ifuncmod5.so

check_PROGRAMS += ifuncmain5pic
ifuncmain5pic: ifuncmain5pic.o ifuncmod5.so gcctestdir/ld
	$(LINK) -Bgcctestdir/ ifuncmain5pic.o ifuncmod5.so -Wl,-R,.

check_PROGRAMS += ifuncmain5staticpic
ifuncmain5staticpic: ifuncmain5pic.o ifuncmod5.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ ifuncmain5pic.o ifuncmod5.o

check_PROGRAMS += ifuncmain5pie
ifuncmain5pie: ifuncmain5pie.o ifuncmod5.so gcctestdir/ld
	$(LINK) -Bgcctestdir/ -pie ifuncmain5pie.o ifuncmod5.so -Wl,-R,.

ifuncmain6pie.o: ifuncmain6pie.c
	$(COMPILE) -c -fPIE -o $@ $<

ifuncmod6.o: ifuncmod6.c
	$(COMPILE) -c -fPIC -o $@ $<
ifuncmod6.so: ifuncmod6.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared ifuncmod6.o

check_PROGRAMS += ifuncmain6pie
ifuncmain6pie: ifuncmain6pie.o ifuncmod6.so gcctestdir/ld
	$(LINK) -Bgcctestdir/ -pie ifuncmain6pie.o ifuncmod6.so -Wl,-R,.

ifuncmain7pic.o: ifuncmain7.c
	$(COMPILE) -c -fPIC -o $@ $<

ifuncmain7pie.o: ifuncmain7.c
	$(COMPILE) -c -fPIE -o $@ $<

if HAVE_STATIC
if IFUNC_STATIC
check_PROGRAMS += ifuncmain7static
ifuncmain7static_SOURCES = ifuncmain7.c
ifuncmain7static_DEPENDENCIES = gcctestdir/ld
ifuncmain7static_LDFLAGS = -Bgcctestdir/ -static
ifuncmain7static_LDADD =

check_PROGRAMS += ifuncmain7picstatic
ifuncmain7picstatic: ifuncmain7pic.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -static ifuncmain7pic.o
endif
endif

check_PROGRAMS += ifuncmain7
ifuncmain7_SOURCES = ifuncmain7.c
ifuncmain7_DEPENDENCIES = gcctestdir/ld
ifuncmain7_LDFLAGS = -Bgcctestdir/
ifuncmain7_LDADD =

check_PROGRAMS += ifuncmain7pic
ifuncmain7pic: ifuncmain7pic.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ ifuncmain7pic.o

check_PROGRAMS += ifuncmain7pie
ifuncmain7pie: ifuncmain7pie.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -pie ifuncmain7pie.o

check_PROGRAMS += ifuncvar
ifuncvar1_pic.o: ifuncvar1.c
	$(COMPILE) -c -fPIC -o $@ $<
ifuncvar2_pic.o: ifuncvar2.c
	$(COMPILE) -c -fPIC -o $@ $<
ifuncvar.so: ifuncvar1_pic.o ifuncvar2_pic.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -shared ifuncvar1_pic.o ifuncvar2_pic.o
ifuncvar_SOURCES = ifuncvar3.c
ifuncvar_DEPENDENCIES = gcctestdir/ld ifuncvar.so
ifuncvar_LDFLAGS = -Bgcctestdir/ -Wl,-R,.
ifuncvar_LDADD = ifuncvar.so

endif IFUNC

# Test that strong reference to a weak symbol in a DSO remains strong.
check_SCRIPTS += strong_ref_weak_def.sh
check_DATA += strong_ref_weak_def.stdout
MOSTLYCLEANFILES += strong_ref_weak_def_1.so strong_ref_weak_def_2.so \
	strong_ref_weak_def.stdout
strong_ref_weak_def_2.o: strong_ref_weak_def_2.c
	$(COMPILE) -o $@ -c -fPIC $<
strong_ref_weak_def_2.so: strong_ref_weak_def_2.o gcctestdir/ld
	gcctestdir/ld -shared -o $@ strong_ref_weak_def_2.o
strong_ref_weak_def_1.o: strong_ref_weak_def_1.c
	$(COMPILE) -o $@ -c -fPIC $<
strong_ref_weak_def_1.so: strong_ref_weak_def_1.o strong_ref_weak_def_2.so \
	gcctestdir/ld
	gcctestdir/ld -shared -o $@ strong_ref_weak_def_1.o \
		strong_ref_weak_def_2.so
strong_ref_weak_def.stdout: strong_ref_weak_def_1.so
	$(TEST_READELF) -sWD $< > $@

# Test that a strong weak reference remains strong if there is another
# weak reference in a DSO.
check_SCRIPTS += dyn_weak_ref.sh
check_DATA += dyn_weak_ref.stdout
MOSTLYCLEANFILES += dyn_weak_ref_1.so dyn_weak_ref_2.so \
	dyn_weak_ref.stdout
dyn_weak_ref_2.o: dyn_weak_ref_2.c
	$(COMPILE) -o $@ -c -fPIC $<
dyn_weak_ref_2.so: dyn_weak_ref_2.o gcctestdir/ld
	gcctestdir/ld -shared -o $@ dyn_weak_ref_2.o
dyn_weak_ref_1.o: dyn_weak_ref_1.c
	$(COMPILE) -o $@ -c -fPIC $<
# We intentionally put dyn_weak_ref_2.so in front of dyn_weak_ref_1.o
# so that the weak ref there goes to gold's symbol table first.
dyn_weak_ref_1.so: dyn_weak_ref_1.o dyn_weak_ref_2.so gcctestdir/ld
	gcctestdir/ld -shared -o $@ dyn_weak_ref_2.so dyn_weak_ref_1.o
dyn_weak_ref.stdout: dyn_weak_ref_1.so
	$(TEST_READELF) -sWD $< > $@


# Test that --start-lib and --end-lib function correctly.
check_PROGRAMS += start_lib_test
MOSTLYCLEANFILES += libstart_lib_test.a
start_lib_test: start_lib_test_main.o libstart_lib_test.a start_lib_test_2.o start_lib_test_3.o \
	gcctestdir/ld
	$(LINK) -Bgcctestdir/ -o $@ start_lib_test_main.o -L. -lstart_lib_test \
		-Wl,--start-lib start_lib_test_2.o start_lib_test_3.o -Wl,--end-lib
libstart_lib_test.a: start_lib_test_1.o
	$(TEST_AR) rc $@ $^

# Test that MEMORY region support works.
check_SCRIPTS += memory_test.sh
check_DATA += memory_test.stdout
MOSTLYCLEANFILES += memory_test.stdout memory_test memory_test.o
memory_test.o: memory_test.s
	$(COMPILE) -o $@ -c $<
memory_test: memory_test.o gcctestdir/ld $(srcdir)/memory_test.t
	$(LINK) -Bgcctestdir/ -nostartfiles -nostdlib -Wl,-z,max-page-size=0x1000 -Wl,-z,common-page-size=0x1000 -Wl,-T,$(srcdir)/memory_test.t -o $@ memory_test.o
memory_test.stdout: memory_test
	$(TEST_READELF) -lWS  $< > $@

# Test INCLUDE directives in linker scripts.
# The binary isn't runnable, so we just check that we can build it without errors.
check_DATA += memory_test_2
MOSTLYCLEANFILES += memory_test_inc_1.t memory_test_inc_2.t memory_test_inc_3.t memory_test_2
memory_test_inc_1.t: $(srcdir)/memory_test_inc_1.t.src
	cp $< $@
memory_test_inc_2.t: $(srcdir)/memory_test_inc_2.t.src
	cp $< $@
memory_test_inc_3.t: $(srcdir)/memory_test_inc_3.t.src
	cp $< $@
memory_test_2: memory_test.o gcctestdir/ld $(srcdir)/memory_test.t memory_test_inc_1.t memory_test_inc_2.t memory_test_inc_3.t
	$(LINK) -Bgcctestdir/ -nostartfiles -nostdlib -Wl,-z,max-page-size=0x1000 -Wl,-z,common-page-size=0x1000 -Wl,-T,$(srcdir)/memory_test.t -o $@ memory_test.o

if HAVE_PUBNAMES

# Test that --gdb-index functions correctly without gcc-generated pubnames.
check_SCRIPTS += gdb_index_test_1.sh
check_DATA += gdb_index_test_1.stdout
MOSTLYCLEANFILES += gdb_index_test_1.stdout gdb_index_test_1
gdb_index_test.o: gdb_index_test.cc
	$(CXXCOMPILE) -O0 -g -gno-pubnames -c -o $@ $<
gdb_index_test_1: gdb_index_test.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--gdb-index $<
gdb_index_test_1.stdout: gdb_index_test_1
	$(TEST_READELF) --debug-dump=gdb_index $< > $@

# Test that --gdb-index functions correctly with compressed debug sections.
check_SCRIPTS += gdb_index_test_2.sh
check_DATA += gdb_index_test_2.stdout
MOSTLYCLEANFILES += gdb_index_test_2.stdout gdb_index_test_2 gdb_index_test_2_gabi
gdb_index_test_cdebug.o: gdb_index_test.cc
	$(CXXCOMPILE) -Bgcctestdir/ -O0 -g -Wa,--compress-debug-sections -c -o $@ $<
gdb_index_test_2: gdb_index_test_cdebug.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--gdb-index $<
gdb_index_test_2.stdout: gdb_index_test_2
	$(TEST_READELF) --debug-dump=gdb_index $< > $@
check_SCRIPTS += gdb_index_test_2_gabi.sh
check_DATA += gdb_index_test_2_gabi.stdout
MOSTLYCLEANFILES += gdb_index_test_2.stdout gdb_index_test_2
gdb_index_test_cdebug_gabi.o: gdb_index_test.cc
	$(CXXCOMPILE) -Bgcctestdir/ -O0 -g -Wa,--compress-debug-sections=zlib-gabi -c -o $@ $<
gdb_index_test_2_gabi: gdb_index_test_cdebug_gabi.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--gdb-index $<
gdb_index_test_2_gabi.stdout: gdb_index_test_2_gabi
	$(TEST_READELF) --debug-dump=gdb_index $< > $@

# Another simple C test (DW_AT_high_pc encoding) for --gdb-index.
check_SCRIPTS += gdb_index_test_3.sh
check_DATA += gdb_index_test_3.stdout
MOSTLYCLEANFILES += gdb_index_test_3.stdout gdb_index_test_3
gdb_index_test_3.o: gdb_index_test_3.c
	$(COMPILE) -O0 -g -c -o $@ $<
gdb_index_test_3: gdb_index_test_3.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -Wl,--gdb-index,--fatal-warnings $<
gdb_index_test_3.stdout: gdb_index_test_3
	$(TEST_READELF) --debug-dump=gdb_index $< > $@

# Test that --gdb-index functions correctly with gcc-generated pubnames.
check_SCRIPTS += gdb_index_test_4.sh
check_DATA += gdb_index_test_4.stdout
MOSTLYCLEANFILES += gdb_index_test_4.stdout gdb_index_test_4
gdb_index_test_pub.o: gdb_index_test.cc
	$(CXXCOMPILE) -O0 -g -gpubnames -c -o $@ $<
gdb_index_test_4: gdb_index_test_pub.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,--gdb-index $<
gdb_index_test_4.stdout: gdb_index_test_4
	$(TEST_READELF) --debug-dump=gdb_index $< > $@

endif HAVE_PUBNAMES

# Test that __ehdr_start is defined correctly.
check_PROGRAMS += ehdr_start_test_1
ehdr_start_test_1_SOURCES = ehdr_start_test.cc
ehdr_start_test_1_DEPENDENCIES = gcctestdir/ld
ehdr_start_test_1_CXXFLAGS =
ehdr_start_test_1_LDFLAGS = -Bgcctestdir/
ehdr_start_test_1_LDADD =

# Test that __ehdr_start is defined correctly with a weak reference.
check_PROGRAMS += ehdr_start_test_2
ehdr_start_test_2_SOURCES = ehdr_start_test.cc
ehdr_start_test_2_DEPENDENCIES = gcctestdir/ld
ehdr_start_test_2_CXXFLAGS = -DEHDR_START_WEAK
ehdr_start_test_2_LDFLAGS = -Bgcctestdir/
ehdr_start_test_2_LDADD =

# Test that __ehdr_start is defined correctly when used with a linker script.
check_PROGRAMS += ehdr_start_test_3
ehdr_start_test_3_SOURCES = ehdr_start_test.cc
ehdr_start_test_3_DEPENDENCIES = gcctestdir/ld $(srcdir)/ehdr_start_test.t
ehdr_start_test_3_CXXFLAGS = -DEHDR_START_WEAK
ehdr_start_test_3_LDFLAGS = -Bgcctestdir/ -Wl,-T,$(srcdir)/ehdr_start_test.t
ehdr_start_test_3_LDADD =

# Test that __ehdr_start is left undefined when the text segment is not
# appropriately aligned.
check_SCRIPTS += ehdr_start_test_4.sh
check_DATA += ehdr_start_test_4.syms
MOSTLYCLEANFILES += ehdr_start_test_4
ehdr_start_test_4.syms: ehdr_start_test_4
	$(TEST_NM) ehdr_start_test_4 > $@
ehdr_start_test_4: ehdr_start_test_4.o gcctestdir/ld
	$(CXXLINK) -Bgcctestdir/ -Wl,-Ttext=0x100100 $<
ehdr_start_test_4.o: ehdr_start_test.cc
	$(CXXCOMPILE) -c -DEHDR_START_WEAK -o $@ $<

# Test that __ehdr_start is not overridden when supplied by the user.
check_PROGRAMS += ehdr_start_test_5
ehdr_start_test_5_SOURCES = ehdr_start_test.cc ehdr_start_def.cc
ehdr_start_test_5_DEPENDENCIES = gcctestdir/ld
ehdr_start_test_5_CXXFLAGS = -DEHDR_START_USER_DEF
ehdr_start_test_5_LDFLAGS = -Bgcctestdir/
ehdr_start_test_5_LDADD =

# Test that the --defsym option copies the symbol type and visibility.
check_SCRIPTS += defsym_test.sh
check_DATA += defsym_test.syms
MOSTLYCLEANFILES += defsym_test defsym_test.syms
defsym_test.syms: defsym_test
	$(TEST_READELF) -sW $< > $@
defsym_test: defsym_test.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ -Wl,--defsym=bar=foo defsym_test.o
defsym_test.o: defsym_test.c
	$(COMPILE) -c -o $@ $<

# Test that the -d option (force common allocation) works correctly.
check_PROGRAMS += pr20976
pr20976: pr20976-d.o gcctestdir/ld
	$(LINK) -Bgcctestdir/ pr20976-d.o
pr20976-d.o: pr20976.o gcctestdir/ld
	gcctestdir/ld -r -d -o $@ pr20976.o

# End-to-end incremental linking tests.
# Incremental linking is currently supported only on the x86_64 target.

if DEFAULT_TARGET_X86_64

two_file_test_1_v1_ndebug.o: two_file_test_1_v1.cc
	$(CXXCOMPILE) -O0 -g0 -fno-exceptions -fno-asynchronous-unwind-tables -c -o $@ $<
two_file_test_1_ndebug.o: two_file_test_1.cc
	$(CXXCOMPILE) -O0 -g0 -fno-exceptions -fno-asynchronous-unwind-tables -c -o $@ $<
two_file_test_1b_ndebug.o: two_file_test_1b.cc
	$(CXXCOMPILE) -O0 -g0 -c -o $@ $<
two_file_test_2_ndebug.o: two_file_test_2.cc
	$(CXXCOMPILE) -O0 -g0 -c -o $@ $<
two_file_test_main_ndebug.o: two_file_test_main.cc
	$(CXXCOMPILE) -O0 -g0 -c -o $@ $<

check_PROGRAMS += incremental_test_2
MOSTLYCLEANFILES += two_file_test_tmp_2.o
incremental_test_2: two_file_test_1_v1_ndebug.o two_file_test_1_ndebug.o two_file_test_1b_ndebug.o \
		    two_file_test_2_ndebug.o two_file_test_main_ndebug.o gcctestdir/ld
	cp -f two_file_test_1_v1_ndebug.o two_file_test_tmp_2.o
	$(CXXLINK) -Wl,--incremental-full,--incremental-patch=100 -Wl,-z,norelro -Bgcctestdir/ two_file_test_tmp_2.o two_file_test_1b_ndebug.o two_file_test_2_ndebug.o two_file_test_main_ndebug.o
	@sleep 1
	cp -f two_file_test_1_ndebug.o two_file_test_tmp_2.o
	$(CXXLINK) -Wl,--incremental-update -Wl,-z,norelro -Bgcctestdir/ two_file_test_tmp_2.o two_file_test_1b_ndebug.o two_file_test_2_ndebug.o two_file_test_main_ndebug.o

check_PROGRAMS += incremental_test_3
MOSTLYCLEANFILES += two_file_test_tmp_3.o
incremental_test_3: two_file_test_1.o two_file_test_1b_v1.o two_file_test_1b.o \
		    two_file_test_2.o two_file_test_main.o gcctestdir/ld
	cp -f two_file_test_1b_v1.o two_file_test_tmp_3.o
	$(CXXLINK) -Wl,--incremental-full,--incremental-patch=100 -Wl,-z,norelro -Bgcctestdir/ two_file_test_1.o two_file_test_tmp_3.o two_file_test_2.o two_file_test_main.o
	@sleep 1
	cp -f two_file_test_1b.o two_file_test_tmp_3.o
	$(CXXLINK) -Wl,--incremental-update -Wl,-z,norelro -Bgcctestdir/ two_file_test_1.o two_file_test_tmp_3.o two_file_test_2.o two_file_test_main.o

check_PROGRAMS += incremental_test_4
MOSTLYCLEANFILES += incremental_test_4.base two_file_test_tmp_4.o
incremental_test_4: two_file_test_1.o two_file_test_1b.o two_file_test_2_v1.o \
		    two_file_test_2.o two_file_test_main.o gcctestdir/ld
	cp -f two_file_test_2_v1.o two_file_test_tmp_4.o
	$(CXXLINK) -Wl,--incremental-full,--incremental-patch=100 -Wl,-z,norelro -Bgcctestdir/ two_file_test_1.o two_file_test_1b.o two_file_test_tmp_4.o two_file_test_main.o
	mv -f incremental_test_4 incremental_test_4.base
	@sleep 1
	cp -f two_file_test_2.o two_file_test_tmp_4.o
	$(CXXLINK) -Wl,--incremental-update,--incremental-base=incremental_test_4.base -Wl,-z,norelro -Bgcctestdir/ two_file_test_1.o two_file_test_1b.o two_file_test_tmp_4.o two_file_test_main.o

check_PROGRAMS += incremental_test_5
MOSTLYCLEANFILES += two_file_test_5.a
incremental_test_5: two_file_test_1.o two_file_test_1b_v1.o two_file_test_1b.o \
		    two_file_test_2.o two_file_test_main.o gcctestdir/ld
	cp -f two_file_test_1b_v1.o two_file_test_tmp_5.o
	$(TEST_AR) rc two_file_test_5.a two_file_test_1.o two_file_test_tmp_5.o two_file_test_2.o
	$(CXXLINK) -Wl,--incremental-full,--incremental-patch=100 -Wl,-z,norelro -Bgcctestdir/ two_file_test_main.o two_file_test_5.a
	@sleep 1
	cp -f two_file_test_1b.o two_file_test_tmp_5.o
	$(TEST_AR) rc two_file_test_5.a two_file_test_1.o two_file_test_tmp_5.o two_file_test_2.o
	$(CXXLINK) -Wl,--incremental-update -Wl,-z,norelro -Bgcctestdir/ two_file_test_main.o two_file_test_5.a

# Test the --incremental-unchanged flag with an archive library.
# The second link should not update the library.
check_PROGRAMS += incremental_test_6
MOSTLYCLEANFILES += two_file_test_6.a
incremental_test_6: two_file_test_1.o two_file_test_1b_v1.o two_file_test_1b.o \
		    two_file_test_2.o two_file_test_main.o gcctestdir/ld
	cp -f two_file_test_1b.o two_file_test_tmp_6.o
	$(TEST_AR) rc two_file_test_6.a two_file_test_1.o two_file_test_tmp_6.o two_file_test_2.o
	$(CXXLINK) -Wl,--incremental-full,--incremental-patch=100 -Wl,-z,norelro -Bgcctestdir/ two_file_test_main.o two_file_test_6.a
	@sleep 1
	cp -f two_file_test_1b_v1.o two_file_test_tmp_6.o
	$(TEST_AR) rc two_file_test_6.a two_file_test_1.o two_file_test_tmp_6.o two_file_test_2.o
	$(CXXLINK) -Wl,--incremental-update -Wl,-z,norelro -Bgcctestdir/ two_file_test_main.o -Wl,--incremental-unchanged two_file_test_6.a -Wl,--incremental-unknown

check_PROGRAMS += incremental_copy_test
incremental_copy_test: copy_test_v1.o copy_test.o copy_test_1.so copy_test_2.so
	cp -f copy_test_v1.o copy_test_tmp.o
	$(CXXLINK) -Wl,--incremental-full,--incremental-patch=100 -Wl,-z,norelro -Bgcctestdir/ -Wl,-R,. -Wl,--no-as-needed copy_test_tmp.o copy_test_1.so copy_test_2.so
	@sleep 1
	cp -f copy_test.o copy_test_tmp.o
	$(CXXLINK) -Wl,--incremental-update -Wl,-z,norelro -Bgcctestdir/ -Wl,-R,. -Wl,--no-as-needed copy_test_tmp.o copy_test_1.so copy_test_2.so

check_PROGRAMS += incremental_common_test_1
incremental_common_test_1: common_test_1_v1.o common_test_1_v2.o gcctestdir/ld
	cp -f common_test_1_v1.o common_test_1_tmp.o
	$(CXXLINK) -Wl,--incremental-full,--incremental-patch=100 -Wl,-z,norelro -Bgcctestdir/ common_test_1_tmp.o
	@sleep 1
	cp -f common_test_1_v2.o common_test_1_tmp.o
	$(CXXLINK) -Wl,--incremental-update -Wl,-z,norelro -Bgcctestdir/ common_test_1_tmp.o

check_PROGRAMS += incremental_comdat_test_1
incremental_comdat_test_1: incr_comdat_test_1.o incr_comdat_test_2_v1.o incr_comdat_test_2_v2.o incr_comdat_test_2_v3.o gcctestdir/ld
	cp -f incr_comdat_test_2_v1.o incr_comdat_test_1_tmp.o
	$(CXXLINK) -Wl,--incremental-full,--incremental-patch=100 -Wl,-z,norelro -Bgcctestdir/ incr_comdat_test_1.o incr_comdat_test_1_tmp.o
	@sleep 1
	cp -f incr_comdat_test_2_v2.o incr_comdat_test_1_tmp.o
	$(CXXLINK) -Wl,--incremental-update -Wl,-z,norelro -Bgcctestdir/ incr_comdat_test_1.o incr_comdat_test_1_tmp.o
	@sleep 1
	cp -f incr_comdat_test_2_v3.o incr_comdat_test_1_tmp.o
	$(CXXLINK) -Wl,--incremental-update -Wl,-z,norelro -Bgcctestdir/ incr_comdat_test_1.o incr_comdat_test_1_tmp.o

endif DEFAULT_TARGET_X86_64

if DEFAULT_TARGET_X86_64
check_PROGRAMS += exception_x86_64_bnd_test
exception_x86_64_bnd_test_SOURCES = exception_test_main.cc
exception_x86_64_bnd_test_DEPENDENCIES = gcctestdir/ld exception_x86_64_bnd_1.o exception_x86_64_bnd_2.o
exception_x86_64_bnd_test_LDFLAGS = $(exception_test_LDFLAGS) -Wl,-z,bndplt
exception_x86_64_bnd_test_LDADD = exception_x86_64_bnd_1.o exception_x86_64_bnd_2.o
exception_x86_64_bnd_1.o: exception_test_1.cc gcctestdir/as
	$(CXXCOMPILE) -c -fpic -Bgcctestdir/ -Wa,-madd-bnd-prefix -o $@ $<
exception_x86_64_bnd_2.o: exception_test_2.cc gcctestdir/as
	$(CXXCOMPILE) -c -Bgcctestdir/ -Wa,-madd-bnd-prefix -o $@ $<
endif DEFAULT_TARGET_X86_64

endif GCC
endif NATIVE_LINKER

# These tests work with native and cross linkers.

if NATIVE_OR_CROSS_LINKER

# Test script section order.
check_SCRIPTS += script_test_10.sh
check_DATA += script_test_10.stdout
MOSTLYCLEANFILES += script_test_10
script_test_10.o: script_test_10.s
	$(TEST_AS) -o $@ $<
script_test_10: $(srcdir)/script_test_10.t script_test_10.o gcctestdir/ld
	gcctestdir/ld -o $@ script_test_10.o -T $(srcdir)/script_test_10.t
script_test_10.stdout: script_test_10
	$(TEST_READELF) -SW script_test_10 > $@

# These tests work with cross linkers only.

if DEFAULT_TARGET_I386

check_SCRIPTS += split_i386.sh
check_DATA += split_i386_1.stdout split_i386_2.stdout \
	split_i386_3.stdout split_i386_4.stdout split_i386_r.stdout
SPLIT_DEFSYMS = --defsym __morestack=0x100 --defsym __morestack_non_split=0x200
split_i386_1.o: split_i386_1.s
	$(TEST_AS) -o $@ $<
split_i386_2.o: split_i386_2.s
	$(TEST_AS) -o $@ $<
split_i386_3.o: split_i386_3.s
	$(TEST_AS) -o $@ $<
split_i386_4.o: split_i386_4.s
	$(TEST_AS) -o $@ $<
split_i386_n.o: split_i386_n.s
	$(TEST_AS) -o $@ $<
split_i386_1: split_i386_1.o split_i386_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_i386_1.o split_i386_n.o
split_i386_1.stdout: split_i386_1
	$(TEST_OBJDUMP) -d $< > $@
split_i386_2: split_i386_2.o split_i386_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_i386_2.o split_i386_n.o
split_i386_2.stdout: split_i386_2
	$(TEST_OBJDUMP) -d $< > $@
split_i386_3.stdout: split_i386_3.o split_i386_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o split_i386_3 split_i386_3.o split_i386_n.o > $@ 2>&1 || exit 0
split_i386_4: split_i386_4.o split_i386_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_i386_4.o split_i386_n.o
split_i386_4.stdout: split_i386_4
	$(TEST_OBJDUMP) -d $< > $@
split_i386_r.stdout: split_i386_1.o split_i386_n.o ../ld-new
	../ld-new -r split_i386_1.o split_i386_n.o -o split_i386_r > $@ 2>&1 || exit 0
MOSTLYCLEANFILES += split_i386_1 split_i386_2 split_i386_3 \
	split_i386_4 split_i386_r

endif DEFAULT_TARGET_I386

if DEFAULT_TARGET_X86_64

check_SCRIPTS += split_x86_64.sh
check_DATA += split_x86_64_1.stdout split_x86_64_2.stdout \
	split_x86_64_3.stdout split_x86_64_4.stdout split_x86_64_r.stdout
SPLIT_DEFSYMS = --defsym __morestack=0x100 --defsym __morestack_non_split=0x200
split_x86_64_1.o: split_x86_64_1.s
	$(TEST_AS) -o $@ $<
split_x86_64_2.o: split_x86_64_2.s
	$(TEST_AS) -o $@ $<
split_x86_64_3.o: split_x86_64_3.s
	$(TEST_AS) -o $@ $<
split_x86_64_4.o: split_x86_64_4.s
	$(TEST_AS) -o $@ $<
split_x86_64_n.o: split_x86_64_n.s
	$(TEST_AS) -o $@ $<
split_x86_64_1: split_x86_64_1.o split_x86_64_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_x86_64_1.o split_x86_64_n.o
split_x86_64_1.stdout: split_x86_64_1
	$(TEST_OBJDUMP) -d $< > $@
split_x86_64_2: split_x86_64_2.o split_x86_64_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_x86_64_2.o split_x86_64_n.o
split_x86_64_2.stdout: split_x86_64_2
	$(TEST_OBJDUMP) -d $< > $@
split_x86_64_3.stdout: split_x86_64_3.o split_x86_64_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o split_x86_64_3 split_x86_64_3.o split_x86_64_n.o > $@ 2>&1 || exit 0
split_x86_64_4: split_x86_64_4.o split_x86_64_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_x86_64_4.o split_x86_64_n.o
split_x86_64_4.stdout: split_x86_64_4
	$(TEST_OBJDUMP) -d $< > $@
split_x86_64_r.stdout: split_x86_64_1.o split_x86_64_n.o ../ld-new
	../ld-new -r split_x86_64_1.o split_x86_64_n.o -o split_x86_64_r > $@ 2>&1 || exit 0
MOSTLYCLEANFILES += split_x86_64_1 split_x86_64_2 split_x86_64_3 \
	split_x86_64_4 split_x86_64_r

check_SCRIPTS += bnd_plt_1.sh
check_DATA += bnd_plt_1.stdout
bnd_plt_1.o: bnd_plt_1.s
	$(TEST_AS) --64 -o $@ $<
bnd_plt_1.so: bnd_plt_1.o ../ld-new
	../ld-new -shared -z bndplt bnd_plt_1.o -o $@
bnd_plt_1.stdout: bnd_plt_1.so
	$(TEST_OBJDUMP) -dw $< > $@

check_SCRIPTS += bnd_ifunc_1.sh
check_DATA += bnd_ifunc_1.stdout
bnd_ifunc_1.o: bnd_ifunc_1.s
	$(TEST_AS) --64 -madd-bnd-prefix -o $@ $<
bnd_ifunc_1.so: bnd_ifunc_1.o ../ld-new
	../ld-new -shared -z bndplt bnd_ifunc_1.o -o $@
bnd_ifunc_1.stdout: bnd_ifunc_1.so
	$(TEST_OBJDUMP) -dw $< > $@

check_SCRIPTS += bnd_ifunc_2.sh
check_DATA += bnd_ifunc_2.stdout
bnd_ifunc_2.o: bnd_ifunc_2.s
	$(TEST_AS) --64 -madd-bnd-prefix -o $@ $<
bnd_ifunc_2.so: bnd_ifunc_2.o ../ld-new
	../ld-new -shared -z bndplt bnd_ifunc_2.o -o $@
bnd_ifunc_2.stdout: bnd_ifunc_2.so
	$(TEST_OBJDUMP) -dw $< > $@

endif DEFAULT_TARGET_X86_64

if DEFAULT_TARGET_X32

check_SCRIPTS += split_x32.sh
check_DATA += split_x32_1.stdout split_x32_2.stdout \
	split_x32_3.stdout split_x32_4.stdout split_x32_r.stdout
SPLIT_DEFSYMS = --defsym __morestack=0x100 --defsym __morestack_non_split=0x200
split_x32_1.o: split_x32_1.s
	$(TEST_AS) -o $@ $<
split_x32_2.o: split_x32_2.s
	$(TEST_AS) -o $@ $<
split_x32_3.o: split_x32_3.s
	$(TEST_AS) -o $@ $<
split_x32_4.o: split_x32_4.s
	$(TEST_AS) -o $@ $<
split_x32_n.o: split_x32_n.s
	$(TEST_AS) -o $@ $<
split_x32_1: split_x32_1.o split_x32_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_x32_1.o split_x32_n.o
split_x32_1.stdout: split_x32_1
	$(TEST_OBJDUMP) -d $< > $@
split_x32_2: split_x32_2.o split_x32_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_x32_2.o split_x32_n.o
split_x32_2.stdout: split_x32_2
	$(TEST_OBJDUMP) -d $< > $@
split_x32_3.stdout: split_x32_3.o split_x32_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o split_x32_3 split_x32_3.o split_x32_n.o > $@ 2>&1 || exit 0
split_x32_4: split_x32_4.o split_x32_n.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_x32_4.o split_x32_n.o
split_x32_4.stdout: split_x32_4
	$(TEST_OBJDUMP) -d $< > $@
split_x32_r.stdout: split_x32_1.o split_x32_n.o ../ld-new
	../ld-new -r split_x32_1.o split_x32_n.o -o split_x32_r > $@ 2>&1 || exit 0
MOSTLYCLEANFILES += split_x32_1 split_x32_2 split_x32_3 \
	split_x32_4 split_x32_r

endif DEFAULT_TARGET_X32

if DEFAULT_TARGET_ARM

check_SCRIPTS += arm_abs_global.sh
check_DATA += arm_abs_global.stdout
arm_abs_lib.o: arm_abs_lib.s
	$(TEST_AS) -march=armv7-a -o $@ $<
libarm_abs.so: arm_abs_lib.o ../ld-new
	../ld-new -shared -o $@ arm_abs_lib.o
arm_abs_global.o: arm_abs_global.s
	$(TEST_AS) -march=armv7-a -o $@ $<
arm_abs_global: arm_abs_global.o libarm_abs.so ../ld-new
	../ld-new -o $@ arm_abs_global.o -L. -larm_abs
arm_abs_global.stdout: arm_abs_global
	$(TEST_READELF) -r $< > $@

MOSTLYCLEANFILES += arm_abs_global

check_SCRIPTS += arm_branch_in_range.sh arm_branch_out_of_range.sh
check_DATA += arm_bl_in_range.stdout arm_bl_out_of_range.stdout \
	thumb_bl_in_range.stdout thumb_bl_out_of_range.stdout \
	thumb2_bl_in_range.stdout thumb2_bl_out_of_range.stdout \
	thumb_blx_in_range.stdout thumb_blx_out_of_range.stdout \
	thumb2_blx_in_range.stdout thumb2_blx_out_of_range.stdout \
	thumb_bl_out_of_range_local.stdout arm_thm_jump11.stdout \
	arm_thm_jump8.stdout

arm_bl_in_range.stdout: arm_bl_in_range
	$(TEST_OBJDUMP) -D $< > $@

arm_bl_in_range: arm_bl_in_range.o ../ld-new
	../ld-new -T $(srcdir)/arm_branch_range.t -o $@ $<

arm_bl_in_range.o: arm_bl_in_range.s
	$(TEST_AS) -o $@ $<

arm_bl_out_of_range.stdout: arm_bl_out_of_range
	$(TEST_OBJDUMP) -S $< > $@

arm_bl_out_of_range: arm_bl_out_of_range.o ../ld-new
	../ld-new -T $(srcdir)/arm_branch_range.t -o $@ $<

arm_bl_out_of_range.o: arm_bl_out_of_range.s
	$(TEST_AS) -o $@ $<

thumb_bl_in_range.stdout: thumb_bl_in_range
	$(TEST_OBJDUMP) -D $< > $@

thumb_bl_in_range: thumb_bl_in_range.o ../ld-new
	../ld-new --no-fix-arm1176 -T $(srcdir)/thumb_branch_range.t -o $@ $<

thumb_bl_in_range.o: thumb_bl_in_range.s
	$(TEST_AS) -o $@ -march=armv5te $<

thumb_bl_out_of_range.stdout: thumb_bl_out_of_range
	$(TEST_OBJDUMP) -D $< > $@

thumb_bl_out_of_range: thumb_bl_out_of_range.o ../ld-new
	../ld-new --no-fix-arm1176 -T $(srcdir)/thumb_branch_range.t -o $@ $<

thumb_bl_out_of_range.o: thumb_bl_out_of_range.s
	$(TEST_AS) -o $@ -march=armv5te $<

thumb2_bl_in_range.stdout: thumb2_bl_in_range
	$(TEST_OBJDUMP) -D $< > $@

thumb2_bl_in_range: thumb2_bl_in_range.o ../ld-new
	../ld-new -T $(srcdir)/thumb2_branch_range.t -o $@ $<

thumb2_bl_in_range.o: thumb_bl_in_range.s
	$(TEST_AS) -o $@ -march=armv7-a $<

thumb2_bl_out_of_range.stdout: thumb2_bl_out_of_range
	$(TEST_OBJDUMP) -D $< > $@

thumb2_bl_out_of_range: thumb2_bl_out_of_range.o ../ld-new
	../ld-new -T $(srcdir)/thumb2_branch_range.t -o $@ $<

thumb2_bl_out_of_range.o: thumb_bl_out_of_range.s
	$(TEST_AS) -o $@ -march=armv7-a $<

thumb_blx_in_range.stdout: thumb_blx_in_range
	$(TEST_OBJDUMP) -D $< > $@

thumb_blx_in_range: thumb_blx_in_range.o ../ld-new
	../ld-new --no-fix-arm1176 -T $(srcdir)/thumb_branch_range.t -o $@ $<

thumb_blx_in_range.o: thumb_blx_in_range.s
	$(TEST_AS) -o $@ -march=armv5te $<

thumb_blx_out_of_range.stdout: thumb_blx_out_of_range
	$(TEST_OBJDUMP) -D $< > $@

thumb_blx_out_of_range: thumb_blx_out_of_range.o ../ld-new
	../ld-new --no-fix-arm1176 -T $(srcdir)/thumb_branch_range.t -o $@ $<

thumb_blx_out_of_range.o: thumb_blx_out_of_range.s
	$(TEST_AS) -o $@ -march=armv5te $<

thumb2_blx_in_range.stdout: thumb2_blx_in_range
	$(TEST_OBJDUMP) -D $< > $@

thumb2_blx_in_range: thumb2_blx_in_range.o ../ld-new
	../ld-new -T $(srcdir)/thumb2_branch_range.t -o $@ $<

thumb2_blx_in_range.o: thumb_blx_in_range.s
	$(TEST_AS) -o $@ -march=armv7-a $<

thumb2_blx_out_of_range.stdout: thumb2_blx_out_of_range
	$(TEST_OBJDUMP) -D $< > $@

thumb2_blx_out_of_range: thumb2_blx_out_of_range.o ../ld-new
	../ld-new -T $(srcdir)/thumb2_branch_range.t -o $@ $<

thumb2_blx_out_of_range.o: thumb_blx_out_of_range.s
	$(TEST_AS) -o $@ -march=armv7-a $<

thumb_bl_out_of_range_local.stdout: thumb_bl_out_of_range_local
	$(TEST_OBJDUMP) -D $< > $@

thumb_bl_out_of_range_local: thumb_bl_out_of_range_local.o ../ld-new
	../ld-new --no-fix-arm1176 -T $(srcdir)/thumb_branch_range.t -o $@ $<

thumb_bl_out_of_range_local.o: thumb_bl_out_of_range_local.s
	$(TEST_AS) -o $@ -march=armv5te $<

arm_thm_jump11.stdout: arm_thm_jump11
	$(TEST_OBJDUMP) -D $< > $@

arm_thm_jump11: arm_thm_jump11.o ../ld-new
	../ld-new -T $(srcdir)/arm_thm_jump11.t -o $@ $<

arm_thm_jump11.o: arm_thm_jump11.s
	$(TEST_AS) -o $@ $<

arm_thm_jump8.stdout: arm_thm_jump8
	$(TEST_OBJDUMP) -D $< > $@

arm_thm_jump8: arm_thm_jump8.o ../ld-new
	../ld-new -T $(srcdir)/arm_thm_jump8.t -o $@ $<

arm_thm_jump8.o: arm_thm_jump8.s
	$(TEST_AS) -o $@ $<

MOSTLYCLEANFILES += arm_bl_in_range arm_bl_out_of_range thumb_bl_in_range \
	thumb_bl_out_of_range thumb2_bl_in_range thumb2_bl_out_of_range \
	thumb_blx_in_range thumb_blx_out_of_range thumb2_blx_in_range \
	thumb2_blx_out_of_range thumb_bl_out_of_range_local arm_thm_jump11 \
	arm_thm_jump8

check_SCRIPTS += arm_fix_v4bx.sh
check_DATA += arm_fix_v4bx.stdout arm_fix_v4bx_interworking.stdout \
	arm_no_fix_v4bx.stdout

arm_fix_v4bx.stdout: arm_fix_v4bx
	$(TEST_OBJDUMP) -D -j.text $< > $@

arm_fix_v4bx: arm_fix_v4bx.o ../ld-new
	../ld-new --no-fix-arm1176 --fix-v4bx -o $@ $<

arm_fix_v4bx.o: arm_fix_v4bx.s
	$(TEST_AS) -o $@ $<

arm_fix_v4bx_interworking.stdout: arm_fix_v4bx_interworking
	$(TEST_OBJDUMP) -D -j.text $< > $@

arm_fix_v4bx_interworking: arm_fix_v4bx.o ../ld-new
	../ld-new --no-fix-arm1176 --fix-v4bx-interworking -o $@ $<

arm_no_fix_v4bx.stdout: arm_no_fix_v4bx
	$(TEST_OBJDUMP) -D -j.text $< > $@

arm_no_fix_v4bx: arm_fix_v4bx.o ../ld-new
	../ld-new --no-fix-arm1176 -o $@ $<

MOSTLYCLEANFILES += arm_fix_v4bx arm_fix_v4bx_interworking arm_no_fix_v4bx

check_SCRIPTS += arm_attr_merge.sh
check_DATA += arm_attr_merge_6.stdout arm_attr_merge_6r.stdout \
	arm_attr_merge_7.stdout

arm_attr_merge_6.stdout: arm_attr_merge_6
	$(TEST_READELF) -A $< > $@

arm_attr_merge_6: arm_attr_merge_6a.o arm_attr_merge_6b.o ../ld-new
	../ld-new -o $@ arm_attr_merge_6a.o arm_attr_merge_6b.o

arm_attr_merge_6a.o: arm_attr_merge_6a.s
	$(TEST_AS) -o $@ $<

arm_attr_merge_6b.o: arm_attr_merge_6b.s
	$(TEST_AS) -o $@ $<

arm_attr_merge_6r.stdout: arm_attr_merge_6r
	$(TEST_READELF) -A $< > $@

arm_attr_merge_6r: arm_attr_merge_6b.o arm_attr_merge_6a.o ../ld-new
	../ld-new -o $@ arm_attr_merge_6b.o arm_attr_merge_6a.o

arm_attr_merge_7.stdout: arm_attr_merge_7
	$(TEST_READELF) -A $< > $@

arm_attr_merge_7: arm_attr_merge_7a.o arm_attr_merge_7b.o ../ld-new
	../ld-new -o $@ arm_attr_merge_7a.o arm_attr_merge_7b.o

arm_attr_merge_7a.o: arm_attr_merge_7a.s
	$(TEST_AS) -o $@ $<

arm_attr_merge_7b.o: arm_attr_merge_7b.s
	$(TEST_AS) -o $@ $<

MOSTLYCLEANFILES += arm_attr_merge_6 arm_attr_merge_6r arm_attr_merge_7

# ARM1176 workaround test.
check_SCRIPTS += arm_fix_1176.sh
check_DATA += arm_fix_1176_default_v6z.stdout arm_fix_1176_on_v6z.stdout \
	arm_fix_1176_off_v6z.stdout arm_fix_1176_default_v5te.stdout \
	arm_fix_1176_default_v7a.stdout arm_fix_1176_default_1156t2f_s.stdout

arm_fix_1176_default_v6z.stdout: arm_fix_1176_default_v6z
	$(TEST_OBJDUMP) -D -j.foo $< > $@

arm_fix_1176_default_v6z: arm_fix_1176_default_v6z.o ../ld-new
	../ld-new --section-start=.foo=0x2001014 -o $@ $<

arm_fix_1176_default_v6z.o: arm_fix_1176.s
	$(TEST_AS) -march=armv6z -o $@ $<

arm_fix_1176_on_v6z.stdout: arm_fix_1176_on_v6z
	$(TEST_OBJDUMP) -D -j.foo $< > $@

arm_fix_1176_on_v6z: arm_fix_1176_on_v6z.o ../ld-new
	../ld-new --section-start=.foo=0x2001014 --fix-arm1176 -o $@ $<

arm_fix_1176_on_v6z.o: arm_fix_1176.s
	$(TEST_AS) -march=armv6z -o $@ $<

arm_fix_1176_off_v6z.stdout: arm_fix_1176_off_v6z
	$(TEST_OBJDUMP) -D -j.foo $< > $@

arm_fix_1176_off_v6z: arm_fix_1176_off_v6z.o ../ld-new
	../ld-new --section-start=.foo=0x2001014 --no-fix-arm1176 -o $@ $<

arm_fix_1176_off_v6z.o: arm_fix_1176.s
	$(TEST_AS) -march=armv6z -o $@ $<

arm_fix_1176_default_v5te.stdout: arm_fix_1176_default_v5te
	$(TEST_OBJDUMP) -D -j.foo $< > $@

arm_fix_1176_default_v5te: arm_fix_1176_default_v5te.o ../ld-new
	../ld-new --section-start=.foo=0x2001014 -o $@ $<

arm_fix_1176_default_v5te.o: arm_fix_1176.s
	$(TEST_AS) -march=armv5te -o $@ $<

arm_fix_1176_default_v7a.stdout: arm_fix_1176_default_v7a
	$(TEST_OBJDUMP) -D -j.foo $< > $@

arm_fix_1176_default_v7a: arm_fix_1176_default_v7a.o ../ld-new
	../ld-new --section-start=.foo=0x2001014 -o $@ $<

arm_fix_1176_default_v7a.o: arm_fix_1176.s
	$(TEST_AS) -march=armv7-a -o $@ $<

arm_fix_1176_default_1156t2f_s.stdout: arm_fix_1176_default_1156t2f_s
	$(TEST_OBJDUMP) -D -j.foo $< > $@

arm_fix_1176_default_1156t2f_s: arm_fix_1176_default_1156t2f_s.o ../ld-new
	../ld-new --section-start=.foo=0x2001014 -o $@ $<

arm_fix_1176_default_1156t2f_s.o: arm_fix_1176.s
	$(TEST_AS) -mcpu=arm1156t2f-s -o $@ $<

MOSTLYCLEANFILES += arm_fix_1176_default_v6z arm_fix_1176_on_v6z arm_fix_1176_off_v6z \
	arm_fix_1176_default_v5te arm_fix_1176_default_v7a arm_fix_1176_default_1156t2f_s

# Cortex-A8 workaround test.

check_SCRIPTS += arm_cortex_a8.sh
check_DATA += arm_cortex_a8_b_cond.stdout arm_cortex_a8_b.stdout \
	arm_cortex_a8_bl.stdout arm_cortex_a8_blx.stdout \
	arm_cortex_a8_local.stdout arm_cortex_a8_local_reloc.stdout

arm_cortex_a8_b_cond.stdout: arm_cortex_a8_b_cond
	$(TEST_OBJDUMP) -D -j.text $< > $@

arm_cortex_a8_b_cond: arm_cortex_a8_b_cond.o ../ld-new
	../ld-new -o $@ $<

arm_cortex_a8_b_cond.o: arm_cortex_a8_b_cond.s
	$(TEST_AS) -o $@ $<

arm_cortex_a8_b.stdout: arm_cortex_a8_b
	$(TEST_OBJDUMP) -D -j.text $< > $@

arm_cortex_a8_b: arm_cortex_a8_b.o ../ld-new
	../ld-new --fix-cortex-a8 -o $@ $<

arm_cortex_a8_b.o: arm_cortex_a8_b.s
	$(TEST_AS) -o $@ $<

arm_cortex_a8_bl.stdout: arm_cortex_a8_bl
	$(TEST_OBJDUMP) -D -j.text $< > $@

arm_cortex_a8_bl: arm_cortex_a8_bl.o ../ld-new
	../ld-new -o $@ $<

arm_cortex_a8_bl.o: arm_cortex_a8_bl.s
	$(TEST_AS) -o $@ $<

arm_cortex_a8_blx.stdout: arm_cortex_a8_blx
	$(TEST_OBJDUMP) -D -j.text $< > $@

arm_cortex_a8_blx: arm_cortex_a8_blx.o ../ld-new
	../ld-new -o $@ $<

arm_cortex_a8_blx.o: arm_cortex_a8_blx.s
	$(TEST_AS) -o $@ $<

arm_cortex_a8_local.stdout: arm_cortex_a8_local
	$(TEST_OBJDUMP) -D -j.text $< > $@

arm_cortex_a8_local: arm_cortex_a8_local.o ../ld-new
	../ld-new -o $@ $<

arm_cortex_a8_local.o: arm_cortex_a8_local.s
	$(TEST_AS) -o $@ $<

arm_cortex_a8_local_reloc.stdout: arm_cortex_a8_local_reloc
	$(TEST_OBJDUMP) -D -j.text $< > $@

arm_cortex_a8_local_reloc: arm_cortex_a8_local_reloc.o ../ld-new
	../ld-new -o $@ $<

arm_cortex_a8_local_reloc.o: arm_cortex_a8_local_reloc.s
	$(TEST_AS) -o $@ $<

MOSTLYCLEANFILES += arm_cortex_a8_b_cond arm_cortex_a8_b arm_cortex_a8_bl \
	arm_cortex_a8_blx arm_cortex_a8_local arm_cortex_a8_local_reloc

check_SCRIPTS += arm_exidx_test.sh
check_DATA += arm_exidx_test.stdout

arm_exidx_test.stdout: arm_exidx_test.so
	$(TEST_READELF) -Sr $< > $@

arm_exidx_test.so: arm_exidx_test.o ../ld-new
	../ld-new -shared -o $@ $<

arm_exidx_test.o: arm_exidx_test.s
	$(TEST_AS) -o $@ $<

check_SCRIPTS += pr12826.sh
check_DATA += pr12826.stdout

pr12826.stdout: pr12826.so
	$(TEST_READELF) -A $< > $@

pr12826.so: pr12826_1.o pr12826_2.o ../ld-new
	../ld-new -shared -o $@ $<

pr12826_1.o: pr12826_1.s
	$(TEST_AS) -o $@ $<

pr12826_2.o: pr12826_2.s
	$(TEST_AS) -o $@ $<

check_SCRIPTS += arm_unaligned_reloc.sh
check_DATA += arm_unaligned_reloc.stdout arm_unaligned_reloc_r.stdout

arm_unaligned_reloc.stdout: arm_unaligned_reloc
	$(TEST_OBJDUMP) -D $< > $@

arm_unaligned_reloc_r.stdout: arm_unaligned_reloc_r
	$(TEST_OBJDUMP) -Dr $< > $@

arm_unaligned_reloc: arm_unaligned_reloc.o ../ld-new
	../ld-new -o $@ $<

arm_unaligned_reloc_r: arm_unaligned_reloc.o ../ld-new
	../ld-new -r -o $@ $<

arm_unaligned_reloc.o: arm_unaligned_reloc.s
	$(TEST_AS) -o $@ $<

MOSTLYCLEANFILES += arm_unaligned_reloc arm_unaligned_reloc_r

# Check ARM to ARM farcall veneers

check_SCRIPTS += arm_farcall_arm_arm.sh
check_DATA += arm_farcall_arm_arm.stdout

arm_farcall_arm_arm.stdout: arm_farcall_arm_arm
	$(TEST_OBJDUMP) -d $< > $@

arm_farcall_arm_arm: arm_farcall_arm_arm.o ../ld-new
	../ld-new --no-fix-arm1176 --section-start .text=0x1000 --section-start .foo=0x2001020 -o $@ $<

arm_farcall_arm_arm.o: arm_farcall_arm_arm.s
	$(TEST_AS) -o $@ $<

MOSTLYCLEANFILES += arm_farcall_arm_arm

# Check ARM to Thumb farcall veneers

check_SCRIPTS += arm_farcall_arm_thumb.sh
check_DATA += arm_farcall_arm_thumb.stdout arm_farcall_arm_thumb_5t.stdout

arm_farcall_arm_thumb.stdout: arm_farcall_arm_thumb
	$(TEST_OBJDUMP) -D $< > $@

arm_farcall_arm_thumb: arm_farcall_arm_thumb.o ../ld-new
	../ld-new --section-start .text=0x1000 --section-start .foo=0x2001014 -o $@ $<

arm_farcall_arm_thumb.o: arm_farcall_arm_thumb.s
	$(TEST_AS) -o $@ $<

arm_farcall_arm_thumb_5t.stdout: arm_farcall_arm_thumb_5t
	$(TEST_OBJDUMP) -D $< > $@

arm_farcall_arm_thumb_5t: arm_farcall_arm_thumb_5t.o ../ld-new
	../ld-new --no-fix-arm1176 --section-start .text=0x1000 --section-start .foo=0x2001014 -o $@ $<

arm_farcall_arm_thumb_5t.o: arm_farcall_arm_thumb.s
	$(TEST_AS) -march=armv5t -o $@ $<

MOSTLYCLEANFILES += arm_farcall_arm_thumb arm_farcall_arm_thumb_5t

# Check Thumb to Thumb farcall veneers

check_SCRIPTS += arm_farcall_thumb_thumb.sh
check_DATA += arm_farcall_thumb_thumb.stdout \
	      arm_farcall_thumb_thumb_5t.stdout \
	      arm_farcall_thumb_thumb_7m.stdout \
	      arm_farcall_thumb_thumb_6m.stdout

arm_farcall_thumb_thumb.stdout: arm_farcall_thumb_thumb
	$(TEST_OBJDUMP) -D $< > $@

arm_farcall_thumb_thumb: arm_farcall_thumb_thumb.o ../ld-new
	../ld-new --section-start .text=0x1000 --section-start .foo=0x2001014 -o $@ $<

arm_farcall_thumb_thumb.o: arm_farcall_thumb_thumb.s
	$(TEST_AS) -march=armv4t -o $@ $<

arm_farcall_thumb_thumb_5t.stdout: arm_farcall_thumb_thumb_5t
	$(TEST_OBJDUMP) -D $< > $@

arm_farcall_thumb_thumb_5t: arm_farcall_thumb_thumb_5t.o ../ld-new
	../ld-new --no-fix-arm1176 --section-start .text=0x1000 --section-start .foo=0x2001014 -o $@ $<

arm_farcall_thumb_thumb_5t.o: arm_farcall_thumb_thumb.s
	$(TEST_AS) -march=armv5t -o $@ $<

arm_farcall_thumb_thumb_7m.stdout: arm_farcall_thumb_thumb_7m
	$(TEST_OBJDUMP) -D $< > $@

arm_farcall_thumb_thumb_7m: arm_farcall_thumb_thumb_7m.o ../ld-new
	../ld-new --section-start .text=0x1000 --section-start .foo=0x2001014 -o $@ $<

arm_farcall_thumb_thumb_7m.o: arm_farcall_thumb_thumb.s
	$(TEST_AS) -march=armv7-m -o $@ $<

arm_farcall_thumb_thumb_6m.stdout: arm_farcall_thumb_thumb_6m
	$(TEST_OBJDUMP) -D $< > $@

arm_farcall_thumb_thumb_6m: arm_farcall_thumb_thumb_6m.o ../ld-new
	../ld-new --section-start .text=0x1000 --section-start .foo=0x2001014 -o $@ $<

arm_farcall_thumb_thumb_6m.o: arm_farcall_thumb_thumb.s
	$(TEST_AS) -march=armv6-m -o $@ $<

MOSTLYCLEANFILES += arm_farcall_thumb_thumb arm_farcall_thumb_thumb_5t \
		    arm_farcall_thumb_thumb_7m arm_farcall_thumb_thumb_6m

# Check Thumb to ARM farcall veneers

check_SCRIPTS += arm_farcall_thumb_arm.sh
check_DATA += arm_farcall_thumb_arm.stdout \
	      arm_farcall_thumb_arm_5t.stdout

arm_farcall_thumb_arm.stdout: arm_farcall_thumb_arm
	$(TEST_OBJDUMP) -D $< > $@

arm_farcall_thumb_arm: arm_farcall_thumb_arm.o ../ld-new
	../ld-new --section-start .text=0x1c01010 --section-start .foo=0x2001014 -o $@ $<

arm_farcall_thumb_arm.o: arm_farcall_thumb_arm.s
	$(TEST_AS) -o $@ $<

arm_farcall_thumb_arm_5t.stdout: arm_farcall_thumb_arm_5t
	$(TEST_OBJDUMP) -D $< > $@

arm_farcall_thumb_arm_5t: arm_farcall_thumb_arm_5t.o ../ld-new
	../ld-new --no-fix-arm1176 --section-start .text=0x1c01010 --section-start .foo=0x2001014 -o $@ $<

arm_farcall_thumb_arm_5t.o: arm_farcall_thumb_arm.s
	$(TEST_AS) -march=armv5t -o $@ $<

MOSTLYCLEANFILES += arm_farcall_thumb_arm arm_farcall_thumb_arm_5t

# Check handling of --target1-abs, --target1-rel and --target2 options

check_SCRIPTS += arm_target1_abs.sh arm_target1_rel.sh \
		 arm_target2_rel.sh arm_target2_abs.sh arm_target2_got_rel.sh
check_DATA += arm_target1_abs.stdout arm_target1_rel.stdout \
	      arm_target2_rel.stdout arm_target2_abs.stdout arm_target2_got_rel.stdout

arm_target1_abs.stdout: arm_target1_abs
	$(TEST_OBJDUMP) -s $< > $@

arm_target1_abs: arm_target1.o ../ld-new
	../ld-new --target1-abs --section-start .text=0x8000 -o $@ $<

arm_target1_rel.stdout: arm_target1_rel
	$(TEST_OBJDUMP) -s $< > $@

arm_target1_rel: arm_target1.o ../ld-new
	../ld-new --target1-rel --section-start .text=0x8000 -o $@ $<

arm_target1.o: arm_target1.s
	$(TEST_AS) -o $@ $<

arm_target2_rel.stdout: arm_target2_rel
	$(TEST_OBJDUMP) -s $< > $@

arm_target2_rel: arm_target2.o ../ld-new
	../ld-new --target2=rel --section-start .text=0x8000 -o $@ $<

arm_target2_abs.stdout: arm_target2_abs
	$(TEST_OBJDUMP) -s $< > $@

arm_target2_abs: arm_target2.o ../ld-new
	../ld-new --target2=abs --section-start .text=0x8000 -o $@ $<

arm_target2_got_rel.stdout: arm_target2_got_rel
	$(TEST_OBJDUMP) -s $< > $@

arm_target2_got_rel: arm_target2.o ../ld-new
	../ld-new --target2=got-rel --section-start .text=0x8000 --section-start .got=0x9000 -o $@ $<

arm_target2.o: arm_target2.s
	$(TEST_AS) -o $@ $<

MOSTLYCLEANFILES += arm_target1_abs arm_target1_rel \
		    arm_target2_rel arm_target2_abs arm_target2_got_rel

# The test demonstrates why the constructor of a target object should not access options.
check_DATA += arm_target_lazy_init
MOSTLYCLEANFILES += arm_target_lazy_init
arm_target_lazy_init: arm_target_lazy_init.o arm_target_lazy_init.t ../ld-new
	../ld-new -T $(srcdir)/arm_target_lazy_init.t -o $@ $<
arm_target_lazy_init.o: arm_target_lazy_init.s
	$(TEST_AS) -EL -o $@ $<

endif DEFAULT_TARGET_ARM

if DEFAULT_TARGET_AARCH64

check_SCRIPTS += aarch64_reloc_none.sh
check_DATA += aarch64_reloc_none.stdout
aarch64_reloc_none.o: aarch64_reloc_none.s
	$(TEST_AS) -o $@ $<
aarch64_reloc_none: aarch64_reloc_none.o ../ld-new
	../ld-new -o $@ aarch64_reloc_none.o --gc-sections
aarch64_reloc_none.stdout: aarch64_reloc_none
	$(TEST_NM) $< > $@

MOSTLYCLEANFILES += aarch64_reloc_none

check_SCRIPTS += aarch64_relocs.sh
check_DATA += aarch64_relocs.stdout
aarch64_globals.o: aarch64_globals.s
	$(TEST_AS) -o $@ $<
aarch64_relocs.o: aarch64_relocs.s
	$(TEST_AS) -o $@ $<
aarch64_relocs: aarch64_relocs.o aarch64_globals.o ../ld-new
	../ld-new -o $@ aarch64_relocs.o aarch64_globals.o -e0 --emit-relocs
aarch64_relocs.stdout: aarch64_relocs
	$(TEST_OBJDUMP) -dr $< > $@

MOSTLYCLEANFILES += aarch64_relocs

check_SCRIPTS += pr21430.sh
check_DATA += pr21430.stdout
pr21430.o: pr21430.s
	$(TEST_AS) -o $@ $<
pr21430: pr21430.o ../ld-new
	../ld-new -o $@ $<
pr21430.stdout: pr21430
	$(TEST_NM) -S $< > $@

MOSTLYCLEANFILES += pr21430

endif DEFAULT_TARGET_AARCH64

if DEFAULT_TARGET_S390

check_SCRIPTS += split_s390.sh
check_DATA += split_s390_z1.stdout split_s390_z2.stdout split_s390_z3.stdout \
	split_s390_z4.stdout split_s390_n1.stdout split_s390_n2.stdout \
	split_s390_a1.stdout split_s390_a2.stdout split_s390_z1_ns.stdout \
	split_s390_z2_ns.stdout split_s390_z3_ns.stdout split_s390_z4_ns.stdout \
	split_s390_n1_ns.stdout split_s390_n2_ns.stdout split_s390_r.stdout \
	split_s390x_z1.stdout split_s390x_z2.stdout split_s390x_z3.stdout \
	split_s390x_z4.stdout split_s390x_n1.stdout split_s390x_n2.stdout \
	split_s390x_a1.stdout split_s390x_a2.stdout split_s390x_z1_ns.stdout \
	split_s390x_z2_ns.stdout split_s390x_z3_ns.stdout \
	split_s390x_z4_ns.stdout split_s390x_n1_ns.stdout \
	split_s390x_n2_ns.stdout split_s390x_r.stdout
SPLIT_DEFSYMS = --defsym __morestack=0x100 --defsym __morestack_non_split=0x200
split_s390_1_z1.o: split_s390_1_z1.s
	$(TEST_AS) -m31 -o $@ $<
split_s390_1_z2.o: split_s390_1_z2.s
	$(TEST_AS) -m31 -o $@ $<
split_s390_1_z3.o: split_s390_1_z3.s
	$(TEST_AS) -m31 -o $@ $<
split_s390_1_z4.o: split_s390_1_z4.s
	$(TEST_AS) -m31 -o $@ $<
split_s390_1_n1.o: split_s390_1_n1.s
	$(TEST_AS) -m31 -o $@ $<
split_s390_1_n2.o: split_s390_1_n2.s
	$(TEST_AS) -m31 -o $@ $<
split_s390_1_a1.o: split_s390_1_a1.s
	$(TEST_AS) -m31 -o $@ $<
split_s390_1_a2.o: split_s390_1_a2.s
	$(TEST_AS) -m31 -o $@ $<
split_s390_2_s.o: split_s390_2_s.s
	$(TEST_AS) -m31 -o $@ $<
split_s390_2_ns.o: split_s390_2_ns.s
	$(TEST_AS) -m31 -o $@ $<
split_s390_z1: split_s390_1_z1.o split_s390_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_z1.o split_s390_2_s.o
split_s390_z1.stdout: split_s390_z1
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390_z2: split_s390_1_z2.o split_s390_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_z2.o split_s390_2_s.o
split_s390_z2.stdout: split_s390_z2
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390_z3: split_s390_1_z3.o split_s390_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_z3.o split_s390_2_s.o
split_s390_z3.stdout: split_s390_z3
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390_z4: split_s390_1_z4.o split_s390_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_z4.o split_s390_2_s.o
split_s390_z4.stdout: split_s390_z4
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390_n1: split_s390_1_n1.o split_s390_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_n1.o split_s390_2_s.o
split_s390_n1.stdout: split_s390_n1
	$(TEST_OBJDUMP) -d $< > $@
split_s390_n2: split_s390_1_n2.o split_s390_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_n2.o split_s390_2_s.o
split_s390_n2.stdout: split_s390_n2
	$(TEST_OBJDUMP) -d $< > $@
split_s390_z1_ns: split_s390_1_z1.o split_s390_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_z1.o split_s390_2_ns.o
split_s390_z1_ns.stdout: split_s390_z1_ns
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390_z2_ns: split_s390_1_z2.o split_s390_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_z2.o split_s390_2_ns.o
split_s390_z2_ns.stdout: split_s390_z2_ns
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390_z3_ns: split_s390_1_z3.o split_s390_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_z3.o split_s390_2_ns.o
split_s390_z3_ns.stdout: split_s390_z3_ns
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390_z4_ns: split_s390_1_z4.o split_s390_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_z4.o split_s390_2_ns.o
split_s390_z4_ns.stdout: split_s390_z4_ns
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390_n1_ns: split_s390_1_n1.o split_s390_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_n1.o split_s390_2_ns.o
split_s390_n1_ns.stdout: split_s390_n1_ns
	$(TEST_OBJDUMP) -d $< > $@
split_s390_n2_ns.stdout: split_s390_1_n2.o split_s390_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o split_s390_n2 split_s390_1_n2.o split_s390_2_ns.o > $@ 2>&1 || exit 0
split_s390_a1.stdout: split_s390_1_a1.o split_s390_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o split_s390_a1 split_s390_1_a1.o split_s390_2_ns.o > $@ 2>&1 || exit 0
split_s390_a2: split_s390_1_a2.o split_s390_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390_1_a2.o split_s390_2_ns.o
split_s390_a2.stdout: split_s390_a2
	$(TEST_OBJDUMP) -d $< > $@
split_s390_r.stdout: split_s390_1_z1.o split_s390_2_ns.o ../ld-new
	../ld-new -r split_s390_1_z1.o split_s390_2_ns.o -o split_s390_r > $@ 2>&1 || exit 0
split_s390x_1_z1.o: split_s390x_1_z1.s
	$(TEST_AS) -m64 -o $@ $<
split_s390x_1_z2.o: split_s390x_1_z2.s
	$(TEST_AS) -m64 -o $@ $<
split_s390x_1_z3.o: split_s390x_1_z3.s
	$(TEST_AS) -m64 -o $@ $<
split_s390x_1_z4.o: split_s390x_1_z4.s
	$(TEST_AS) -m64 -o $@ $<
split_s390x_1_n1.o: split_s390x_1_n1.s
	$(TEST_AS) -m64 -o $@ $<
split_s390x_1_n2.o: split_s390x_1_n2.s
	$(TEST_AS) -m64 -o $@ $<
split_s390x_1_a1.o: split_s390x_1_a1.s
	$(TEST_AS) -m64 -o $@ $<
split_s390x_1_a2.o: split_s390x_1_a2.s
	$(TEST_AS) -m64 -o $@ $<
split_s390x_2_s.o: split_s390x_2_s.s
	$(TEST_AS) -m64 -o $@ $<
split_s390x_2_ns.o: split_s390x_2_ns.s
	$(TEST_AS) -m64 -o $@ $<
split_s390x_z1: split_s390x_1_z1.o split_s390x_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_z1.o split_s390x_2_s.o
split_s390x_z1.stdout: split_s390x_z1
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390x_z2: split_s390x_1_z2.o split_s390x_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_z2.o split_s390x_2_s.o
split_s390x_z2.stdout: split_s390x_z2
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390x_z3: split_s390x_1_z3.o split_s390x_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_z3.o split_s390x_2_s.o
split_s390x_z3.stdout: split_s390x_z3
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390x_z4: split_s390x_1_z4.o split_s390x_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_z4.o split_s390x_2_s.o
split_s390x_z4.stdout: split_s390x_z4
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390x_n1: split_s390x_1_n1.o split_s390x_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_n1.o split_s390x_2_s.o
split_s390x_n1.stdout: split_s390x_n1
	$(TEST_OBJDUMP) -d $< > $@
split_s390x_n2: split_s390x_1_n2.o split_s390x_2_s.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_n2.o split_s390x_2_s.o
split_s390x_n2.stdout: split_s390x_n2
	$(TEST_OBJDUMP) -d $< > $@
split_s390x_z1_ns: split_s390x_1_z1.o split_s390x_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_z1.o split_s390x_2_ns.o
split_s390x_z1_ns.stdout: split_s390x_z1_ns
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390x_z2_ns: split_s390x_1_z2.o split_s390x_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_z2.o split_s390x_2_ns.o
split_s390x_z2_ns.stdout: split_s390x_z2_ns
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390x_z3_ns: split_s390x_1_z3.o split_s390x_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_z3.o split_s390x_2_ns.o
split_s390x_z3_ns.stdout: split_s390x_z3_ns
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390x_z4_ns: split_s390x_1_z4.o split_s390x_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_z4.o split_s390x_2_ns.o
split_s390x_z4_ns.stdout: split_s390x_z4_ns
	$(TEST_OBJDUMP) -j .rodata -j .text -D $< > $@
split_s390x_n1_ns: split_s390x_1_n1.o split_s390x_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_n1.o split_s390x_2_ns.o
split_s390x_n1_ns.stdout: split_s390x_n1_ns
	$(TEST_OBJDUMP) -d $< > $@
split_s390x_n2_ns.stdout: split_s390x_1_n2.o split_s390x_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o split_s390x_n2 split_s390x_1_n2.o split_s390x_2_ns.o > $@ 2>&1 || exit 0
split_s390x_a1.stdout: split_s390x_1_a1.o split_s390x_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o split_s390x_a1 split_s390x_1_a1.o split_s390x_2_ns.o > $@ 2>&1 || exit 0
split_s390x_a2: split_s390x_1_a2.o split_s390x_2_ns.o ../ld-new
	../ld-new $(SPLIT_DEFSYMS) -o $@ split_s390x_1_a2.o split_s390x_2_ns.o
split_s390x_a2.stdout: split_s390x_a2
	$(TEST_OBJDUMP) -d $< > $@
split_s390x_r.stdout: split_s390x_1_z1.o split_s390x_2_ns.o ../ld-new
	../ld-new -r split_s390x_1_z1.o split_s390x_2_ns.o -o split_s390x_r > $@ 2>&1 || exit 0
MOSTLYCLEANFILES += split_s390_z1 split_s390_z2 split_s390_z3 \
	split_s390_z4 split_s390_n1 split_s390_n2 split_s390_a1 \
	split_s390_a2 split_s390_z1_ns split_s390_z2_ns split_s390_z3_ns \
	split_s390_z4_ns split_s390_n1_ns split_s390_n2_ns split_s390_r \
	split_s390x_z1 split_s390x_z2 split_s390x_z3 split_s390x_z4 \
	split_s390x_n1 split_s390x_n2 split_s390x_a1 split_s390x_a2 \
	split_s390x_z1_ns split_s390x_z2_ns split_s390x_z3_ns \
	split_s390x_z4_ns split_s390x_n1_ns split_s390x_n2_ns split_s390x_r

endif DEFAULT_TARGET_S390

endif NATIVE_OR_CROSS_LINKER

# Tests for the dwp tool.
# We don't want to rely yet on GCC support for -gsplit-dwarf,
# so we use (for now) test cases in x86 assembly language,
# compiled from the dwp_test_*.cc sources.

if DEFAULT_TARGET_X86_64

dwp_test_main.o: dwp_test_main.s
	$(TEST_AS) -o $@ $<
dwp_test_1.o: dwp_test_1.s
	$(TEST_AS) -o $@ $<
dwp_test_1b.o: dwp_test_1b.s
	$(TEST_AS) -o $@ $<
dwp_test_2.o: dwp_test_2.s
	$(TEST_AS) -o $@ $<

dwp_test_main.dwo: dwp_test_main.o
	$(TEST_OBJCOPY) --extract-dwo $< $@
dwp_test_1.dwo: dwp_test_1.o
	$(TEST_OBJCOPY) --extract-dwo $< $@
dwp_test_1b.dwo: dwp_test_1b.o
	$(TEST_OBJCOPY) --extract-dwo $< $@
dwp_test_2.dwo: dwp_test_2.o
	$(TEST_OBJCOPY) --extract-dwo $< $@

MOSTLYCLEANFILES += *.dwo *.dwp
check_SCRIPTS += dwp_test_1.sh
check_DATA += dwp_test_1.stdout
dwp_test_1.stdout: dwp_test_1.dwp
	$(TEST_READELF) -wi $< > $@
dwp_test_1.dwp: ../dwp dwp_test_main.dwo dwp_test_1.dwo dwp_test_1b.dwo dwp_test_2.dwo
	../dwp -o $@ dwp_test_main.dwo dwp_test_1.dwo dwp_test_1b.dwo dwp_test_2.dwo

check_SCRIPTS += dwp_test_2.sh
check_DATA += dwp_test_2.stdout
dwp_test_2.stdout: dwp_test_2.dwp
	$(TEST_READELF) -wi $< > $@
dwp_test_2.dwp: ../dwp dwp_test_2a.dwp dwp_test_2b.dwp
	../dwp -o $@ dwp_test_2a.dwp dwp_test_2b.dwp
dwp_test_2a.dwp: ../dwp dwp_test_main.dwo dwp_test_1.dwo
	../dwp -o $@ dwp_test_main.dwo dwp_test_1.dwo
dwp_test_2b.dwp: ../dwp dwp_test_1b.dwo dwp_test_2.dwo
	../dwp -o $@ dwp_test_1b.dwo dwp_test_2.dwo

endif DEFAULT_TARGET_X86_64
