Package: src:gcc-4.9 Version: 4.9-20140411-2 Severity: normal Tags: patch User: helm...@debian.org Usertags: rebootstrap
Hi doko, While trying to build a gcc stage3 for x32 with_deps_on_target_arch_pkgs=yes, I get the following error: mv debian/tmp/usr/lib/x86_64-linux-gnux32/libvtv*.a debian/libgcc-4.9-dev/usr/lib/gcc/x86_64-linux-gnux32/4.9/ mv: cannot stat 'debian/tmp/usr/lib/x86_64-linux-gnux32/libvtv*.a': No such file or directory This is due to libvtv installation installing into the wrong directory: make[7]: Entering directory `/tmp/buildd/gcc3/gcc-4.9-4.9-20140411/build/x86_64-linux-gnux32/libvtv' true DO=install multi-do # /usr/bin/make test -z "/usr/x86_64-linux-gnux32/lib/../lib" || /bin/mkdir -p "/tmp/buildd/gcc3/gcc-4.9-4.9-20140411/debian/tmp/usr/x86_64-linux-gnux32/lib/../lib" /bin/bash ./libtool --mode=install /usr/bin/install -c libvtv.la '/tmp/buildd/gcc3/gcc-4.9-4.9-20140411/debian/tmp/usr/x86_64-linux-gnux32/lib/../lib' libtool: install: /usr/bin/install -c .libs/libvtv.so.0.0.0 /tmp/buildd/gcc3/gcc-4.9-4.9-20140411/debian/tmp/usr/x86_64-linux-gnux32/lib/../lib/libvtv.so.0.0.0 libtool: install: (cd /tmp/buildd/gcc3/gcc-4.9-4.9-20140411/debian/tmp/usr/x86_64-linux-gnux32/lib/../lib && { ln -s -f libvtv.so.0.0.0 libvtv.so.0 || { rm -f libvtv.so.0 && ln -s libvtv.so.0.0.0 libvtv.so.0; }; }) libtool: install: (cd /tmp/buildd/gcc3/gcc-4.9-4.9-20140411/debian/tmp/usr/x86_64-linux-gnux32/lib/../lib && { ln -s -f libvtv.so.0.0.0 libvtv.so || { rm -f libvtv.so && ln -s libvtv.so.0.0.0 libvtv.so; }; }) libtool: install: /usr/bin/install -c .libs/libvtv.lai /tmp/buildd/gcc3/gcc-4.9-4.9-20140411/debian/tmp/usr/x86_64-linux-gnux32/lib/../lib/libvtv.la libtool: install: /usr/bin/install -c .libs/libvtv.a /tmp/buildd/gcc3/gcc-4.9-4.9-20140411/debian/tmp/usr/x86_64-linux-gnux32/lib/../lib/libvtv.a libtool: install: chmod 644 /tmp/buildd/gcc3/gcc-4.9-4.9-20140411/debian/tmp/usr/x86_64-linux-gnux32/lib/../lib/libvtv.a libtool: install: /usr/x86_64-linux-gnux32/bin/ranlib /tmp/buildd/gcc3/gcc-4.9-4.9-20140411/debian/tmp/usr/x86_64-linux-gnux32/lib/../lib/libvtv.a libtool: install: warning: remember to run `libtool --finish /usr/x86_64-linux-gnux32/lib/../lib' test -z "/usr/lib/gcc/x86_64-linux-gnux32/4.9/include" || /bin/mkdir -p "/tmp/buildd/gcc3/gcc-4.9-4.9-20140411/debian/tmp/usr/lib/gcc/x86_64-linux-gnux32/4.9/include" make[7]: Leaving directory `/tmp/buildd/gcc3/gcc-4.9-4.9-20140411/build/x86_64-linux-gnux32/libvtv' This kind of issue is supposed to be covered by cross-ma-install-location.diff, but the libvtv directory was added in gcc-4.9 and cross-ma-install-location.diff was not updated. Once this is fixed, the same applies to libcilkrts. After fixing both gcc stage3 succeeds. Helmut
diff -u gcc-4.9-4.9-20140411/debian/changelog gcc-4.9-4.9-20140411/debian/changelog --- gcc-4.9-4.9-20140411/debian/changelog +++ gcc-4.9-4.9-20140411/debian/changelog @@ -1,3 +1,11 @@ +gcc-4.9 (4.9-20140411-2.1) UNRELEASED; urgency=low + + * Non-maintainer upload. + * Add new libraries src/libvtv and src/libcilkrts to + cross-ma-install-location.diff. (Closes: #-1) + + -- Helmut Grohne <hel...@subdivi.de> Sat, 19 Apr 2014 15:16:47 +0200 + gcc-4.9 (4.9-20140411-2) unstable; urgency=medium * Disable running the testsuite on kfreebsd, hangs the buildds. diff -u gcc-4.9-4.9-20140411/debian/patches/cross-ma-install-location.diff gcc-4.9-4.9-20140411/debian/patches/cross-ma-install-location.diff --- gcc-4.9-4.9-20140411/debian/patches/cross-ma-install-location.diff +++ gcc-4.9-4.9-20140411/debian/patches/cross-ma-install-location.diff @@ -346,0 +347,40 @@ +--- a/src/libvtv/configure.ac ++++ b/src/libvtv/configure.ac +@@ -72,15 +72,8 @@ + toolexeclibdir='$(toolexecdir)/$(gcc_version)$(MULTISUBDIR)' + ;; + no) +- if test -n "$with_cross_host" && +- test x"$with_cross_host" != x"no"; then +- # Install a library built with a cross compiler in tooldir, not libdir. +- toolexecdir='$(exec_prefix)/$(target_alias)' +- toolexeclibdir='$(toolexecdir)/lib' +- else +- toolexecdir='$(libdir)/gcc-lib/$(target_alias)' +- toolexeclibdir='$(libdir)' +- fi ++ toolexecdir='$(libdir)/gcc-lib/$(target_alias)' ++ toolexeclibdir='$(libdir)' + multi_os_directory=`$CC -print-multi-os-directory` + case $multi_os_directory in + .) ;; # Avoid trailing /. +--- a/src/libcilkrts/configure.ac ++++ b/src/libcilkrts/configure.ac +@@ -103,15 +103,8 @@ + toolexeclibdir='$(toolexecdir)/$(gcc_version)$(MULTISUBDIR)' + ;; + no) +- if test -n "$with_cross_host" && +- test x"$with_cross_host" != x"no"; then +- # Install a library built with a cross compiler in tooldir, not libdir. +- toolexecdir='$(exec_prefix)/$(target_alias)' +- toolexeclibdir='$(toolexecdir)/lib' +- else +- toolexecdir='$(libdir)/gcc-lib/$(target_alias)' +- toolexeclibdir='$(libdir)' +- fi ++ toolexecdir='$(libdir)/gcc-lib/$(target_alias)' ++ toolexeclibdir='$(libdir)' + multi_os_directory=`$CC -print-multi-os-directory` + case $multi_os_directory in + .) ;; # Avoid trailing /.