r5778 - in glibc-package/branches/eglibc-2.18/debian: . debhelper.in patches patches/any rules.d
Author: adconrad
Date: 2013-11-21 09:46:57 +0000 (Thu, 21 Nov 2013)
New Revision: 5778
Added:
glibc-package/branches/eglibc-2.18/debian/patches/any/local-rtlddir-cross.diff
Modified:
glibc-package/branches/eglibc-2.18/debian/changelog
glibc-package/branches/eglibc-2.18/debian/debhelper.in/libc.install
glibc-package/branches/eglibc-2.18/debian/patches/series
glibc-package/branches/eglibc-2.18/debian/rules.d/build.mk
Log:
Install ld.so to slibdir again, fixing pure cross toolchain builds and restoring original package layout
Modified: glibc-package/branches/eglibc-2.18/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/changelog 2013-11-21 08:48:39 UTC (rev 5777)
+++ glibc-package/branches/eglibc-2.18/debian/changelog 2013-11-21 09:46:57 UTC (rev 5778)
@@ -44,7 +44,6 @@
stdlib/tst-tls-atexit with binutils defaulting to ld --as-needed.
* debian/control: Build-dep on netbase for service lookups in tests.
* debian/sysdeps/{linux,hurd}.mk: Force on pt_chown on linux and hurd.
- * debian/debhelper.in/libc.install: ld.so is installed to RTLDDIR now.
* debian/rules.d/debhelper.mk: Compress $(libc), multiarch-support, and
libc-bin with gzip, and let the rest default to dpkg's new defaults.
* debian/patches/svn-updates.diff: Update to r24485 from SVN and 2.18.1.
@@ -54,6 +53,8 @@
* debian/patches/powerpc/unsubmitted-tst-auxv.diff: Fix regression in the
tst-setcontext-fpscr.c test introduced by kfreebsd/submitted-auxv.diff.
* debian/testsuite-checking/*: Allow powerpc to fail test-{double,float}.
+ * debian/patches/any/local-rtlddir-cross.diff: Revert to the state found
+ in 2.17 where ld.so was installed to slibdir and so listed in libc.so.
[ Samuel Thibault ]
* patches/hurd-i386/libpthread_hurd_cond_timedwait.diff: Rebased.
@@ -82,7 +83,6 @@
[ Petr Salinger ]
* debian/*: change version occurences from 2.17 to 2.18 for upgrades/deps.
- * rules.d/build.mk: do not explicitly install symlink in rtlddir
* kfreebsd/local-sysdeps.diff: update to revision 5148 (from glibc-bsd).
* kfreebsd/local-fbtl.diff: likewise
* sysdeps/kfreebsd.mk: pt_chown is mandatory
Modified: glibc-package/branches/eglibc-2.18/debian/debhelper.in/libc.install
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/debhelper.in/libc.install 2013-11-21 08:48:39 UTC (rev 5777)
+++ glibc-package/branches/eglibc-2.18/debian/debhelper.in/libc.install 2013-11-21 09:46:57 UTC (rev 5778)
@@ -1,4 +1,4 @@
-TMPDIR/RTLDDIR/*.so* RTLDDIR
+TMPDIR/lib/*.so* RTLDDIR
TMPDIR/SLIBDIR/*.so* SLIBDIR
TMPDIR/LIBDIR/gconv/* LIBDIR/gconv
TMPDIR/LIBDIR/audit/* LIBDIR/audit
Added: glibc-package/branches/eglibc-2.18/debian/patches/any/local-rtlddir-cross.diff
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/patches/any/local-rtlddir-cross.diff (rev 0)
+++ glibc-package/branches/eglibc-2.18/debian/patches/any/local-rtlddir-cross.diff 2013-11-21 09:46:57 UTC (rev 5778)
@@ -0,0 +1,33 @@
+Description: Install ld.so to slibdir instead of rtlddir to fix cross builds
+ When installing a cross-libc purely for linking purposes but not
+ runtime use, the linker shouldn't be installed in rtlddir, since
+ we won't actually be USING it, and thus referencing the rtlddir
+ path in libc.so ends up blowing up cross-compilers for no reason.
+Author: Adam Conrad <adconrad@ubuntu.com>
+
+diff --git a/Makeconfig b/Makeconfig
+index 6618987..b9f8680 100644
+--- a/Makeconfig
++++ b/Makeconfig
+@@ -161,7 +161,7 @@ inst_slibdir = $(install_root)$(slibdir)
+ ifndef rtlddir
+ rtlddir = $(slibdir)
+ endif
+-inst_rtlddir = $(install_root)$(rtlddir)
++inst_rtlddir = $(install_root)$(slibdir)
+
+ # Prefix to put on files installed in $(libdir). For libraries `libNAME.a',
+ # the prefix is spliced between `lib' and the name, so the linker switch
+diff --git a/Makerules b/Makerules
+index 92c2872..cb45f90 100644
+--- a/Makerules
++++ b/Makerules
+@@ -960,7 +960,7 @@ $(inst_libdir)/libc.so: $(common-objpfx)format.lds \
+ cat $<; \
+ echo 'GROUP ( $(slibdir)/libc.so$(libc.so-version)' \
+ '$(libdir)/$(patsubst %,$(libtype.oS),$(libprefix)$(libc-name))'\
+- ' AS_NEEDED (' $(rtlddir)/$(rtld-installed-name) ') )' \
++ ' AS_NEEDED (' $(slibdir)/$(rtld-installed-name) ') )' \
+ ) > $@.new
+ ifeq ($(patsubst gnu%,,$(config-os)),)
+ echo 'INPUT ( AS_NEEDED ( -lmachuser -lhurduser ) )' >> $@.new
Modified: glibc-package/branches/eglibc-2.18/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/patches/series 2013-11-21 08:48:39 UTC (rev 5777)
+++ glibc-package/branches/eglibc-2.18/debian/patches/series 2013-11-21 09:46:57 UTC (rev 5778)
@@ -186,6 +186,7 @@
all/local-ldd.diff
all/local-nis-shadow.diff
+any/local-rtlddir-cross.diff
any/local-asserth-decls.diff
any/local-bindresvport_blacklist.diff
any/local-allocalim-header.diff
Modified: glibc-package/branches/eglibc-2.18/debian/rules.d/build.mk
===================================================================
--- glibc-package/branches/eglibc-2.18/debian/rules.d/build.mk 2013-11-21 08:48:39 UTC (rev 5777)
+++ glibc-package/branches/eglibc-2.18/debian/rules.d/build.mk 2013-11-21 09:46:57 UTC (rev 5778)
@@ -256,9 +256,7 @@
fi
# Create the ld.so symlink to the multiarch directory
- #if [ $(curpass) = libc ]; then \
- # it seems that the 2.18 Makefile already install symlink in rtlddir
- if false ; then \
+ if [ $(curpass) = libc ]; then \
rtld_so="$$(LANG=C LC_ALL=C readelf -l debian/tmp-$(curpass)/usr/bin/iconv | grep 'interpreter' | sed -e 's/.*interpreter: \(.*\)]/\1/g')" ; \
rtld_so="$$(basename $$rtld_so)" ; \
link_name="debian/tmp-$(curpass)/lib/$$rtld_so" ; \
Reply to: