diff --git a/eglibc-2.15-shlib-make.patch b/eglibc-2.15-shlib-make.patch new file mode 100644 index 0000000..42f21a4 --- /dev/null +++ b/eglibc-2.15-shlib-make.patch @@ -0,0 +1,49 @@ +Index: eglibc-2.15/Makerules +=================================================================== +--- eglibc-2.15.orig/Makerules 2011-10-25 03:37:10.000000000 +0300 ++++ eglibc-2.15/Makerules 2013-07-16 14:35:52.581191695 +0300 +@@ -509,25 +509,19 @@ + else + # binutils only position loadable notes into the first page for binaries, + # not for shared objects +-$(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules +- $(LINK.o) -shared -Wl,-O1 \ +- -nostdlib -nostartfiles \ +- $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS.so) \ +- -Wl,--verbose 2>&1 | \ +- sed > $@T \ +- -e '/^=========/,/^=========/!d;/^=========/d' \ ++shlib-lds-hash = -e '/^=========/,/^=========/!d;/^=========/d' \ + $(if $(filter yes,$(have-hash-style)), \ + -e 's/^.*\.gnu\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \ + -e '/^[ ]*\.hash[ ]*:.*$$/{h;d;}' \ + -e '/DATA_SEGMENT_ALIGN/{H;g}' \ + , \ + -e 's/^.*\.hash[ ]*:.*$$/ .note.ABI-tag : { *(.note.ABI-tag) } &/' \ +- ) \ +- -e 's/^.*\*(\.dynbss).*$$/& \ ++ ) ++shlib-lds-dynbss = -e 's/^.*\*(\.dynbss).*$$/& \ + PROVIDE(__start___libc_freeres_ptrs = .); \ + *(__libc_freeres_ptrs) \ +- PROVIDE(__stop___libc_freeres_ptrs = .);/'\ +- -e 's@^.*\*(\.jcr).*$$@& \ ++ PROVIDE(__stop___libc_freeres_ptrs = .);/' ++shlib-lds-jcr = -e 's@^.*\*(\.jcr).*$$@& \ + PROVIDE(__start___libc_subfreeres = .);\ + __libc_subfreeres : { *(__libc_subfreeres) }\ + PROVIDE(__stop___libc_subfreeres = .);\ +@@ -538,6 +532,13 @@ + __libc_thread_subfreeres : { *(__libc_thread_subfreeres) }\ + PROVIDE(__stop___libc_thread_subfreeres = .);\ + /DISCARD/ : { *(.gnu.glibc-stub.*) }@' ++$(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules ++ $(LINK.o) -shared -Wl,-O1 \ ++ -nostdlib -nostartfiles \ ++ $(sysdep-LDFLAGS) $(config-LDFLAGS) $(LDFLAGS.so) \ ++ -Wl,--verbose 2>&1 | \ ++ sed > $@T \ ++ $(shlib-lds-hash) $(shlib-lds-dynbss) $(shlib-lds-jcr) + test -s $@T + mv -f $@T $@ + common-generated += shlib.lds diff --git a/glibc.changes b/glibc.changes index 7ac180a..78074c3 100644 --- a/glibc.changes +++ b/glibc.changes @@ -1,3 +1,7 @@ +* Tue Jul 16 2013 Mikko Hurskainen - 2.15 +- Fix shlib.lds generation with make 3.81 + eglibc-2.15-shlib-make.patch + * Wed Jun 26 2013 Richard Braakman - 2.15 - Fix crash when linking with libdl on arm with NEON eglibc-2.15-fix-neon-libdl.patch diff --git a/glibc.spec b/glibc.spec index 2a3f243..adf20e5 100644 --- a/glibc.spec +++ b/glibc.spec @@ -37,6 +37,7 @@ Patch11: glibc-2.14-locarchive-fedora.patch Patch12: eglibc-2.15-disable-multilib.patch Patch13: eglibc-2.15-use-usrbin-localedef.patch Patch14: eglibc-2.15-fix-neon-libdl.patch +Patch15: eglibc-2.15-shlib-make.patch Provides: ldconfig # The dynamic linker supports DT_GNU_HASH @@ -201,6 +202,7 @@ If unsure if you need this, don't install this package. %patch13 -p1 %patch14 -p1 %endif +%patch15 -p1 # Not well formatted locales --cvm sed -i "s|^localedata/locale-eo_EO.diff$||g" debian/patches/series