@@ -110,7 +110,7 @@ check_DATA = libbig-dynstr.debug
110
110
# - with libtool, it is difficult to control options
111
111
# - with libtool, it is not possible to compile convenience *dynamic* libraries :-(
112
112
check_PROGRAMS += libfoo.so libfoo-scoped.so libbar.so libbar-scoped.so libsimple.so libbuildid.so libtoomanystrtab.so \
113
- phdr-corruption.so
113
+ phdr-corruption.so many-syms-main libmany-syms.so
114
114
115
115
libbuildid_so_SOURCES = simple.c
116
116
libbuildid_so_LDFLAGS = $(LDFLAGS_sharedlib ) -Wl,--build-id
@@ -138,6 +138,14 @@ too_many_strtab_SOURCES = too-many-strtab.c too-many-strtab2.s
138
138
libtoomanystrtab_so_SOURCES = too-many-strtab.c too-many-strtab2.s
139
139
libtoomanystrtab_so_LDFLAGS = $(LDFLAGS_sharedlib )
140
140
141
+ many_syms_main_SOURCES = many-syms-main.c
142
+ many_syms_main_LDFLAGS = $(LDFLAGS_local )
143
+ many_syms_main_LDADD = -lmany-syms $(AM_LDADD )
144
+ many_syms_main_DEPENDENCIES = libmany-syms.so
145
+ many_syms_main_CFLAGS = -pie
146
+ libmany_syms_so_SOURCES = many-syms.c
147
+ libmany_syms_so_LDFLAGS = $(LDFLAGS_sharedlib )
148
+
141
149
no_rpath_SOURCES = no-rpath.c
142
150
# no -fpic for no-rpath.o
143
151
no_rpath_CFLAGS =
@@ -149,3 +157,12 @@ contiguous_note_sections_CFLAGS = -pie
149
157
phdr_corruption_so_SOURCES = void.c phdr-corruption.ld
150
158
phdr_corruption_so_LDFLAGS = -nostdlib -shared -Wl,-T$(srcdir ) /phdr-corruption.ld
151
159
phdr_corruption_so_CFLAGS =
160
+
161
+ many-syms.c :
162
+ i=1; while [ $$ i -le 2000 ]; do echo " void f$$ i() {};" ; i=$$ (( $$ i + 1 )) ; done > $@
163
+
164
+ many-syms-main.c :
165
+ echo " int main() {" > $@
166
+ i=1; while [ $$ i -le 2000 ]; do echo " void f$$ i(); f$$ i();" ; i=$$ (( $$ i + 1 )) ; done >> $@
167
+ echo " }" >> $@
168
+
0 commit comments