Source: glibc Version: 2.21-0experimental1 Tags: patch User: [email protected] Usertags: rebootstrap
Hi Aurelien, thank you very much for applying #766877 and uploading to experimental. This has moved us a big step closer to a working stage1. We are not quite there yet. At this point I estimate a remaining patch stack for the following problems: * stage1 fails to build for various reasons * stage1 libc6-dev not installable due to dependency on libc6 * wrong set of packages being built for stage1 * dh_shlibdeps fails * linux headers cannot be found * various hurd things Even though I still carry patches for these, it is not clear that all of these problems are still reproducible. The above list is meant as an outlook, not a cumulative bug report. This particular bug shall address only the first of those problems above, because I have a good understanding and can answer your questions. I am attaching a patch and also explain the individual hunks in what follows. All of them apply to stage1-specific code. - *:/lib32 | *:/lib64 | *:/libx32 | *:/lib/arm-linux-gnueabi*) \ + *:/lib32 | *:/lib64 | *:/libo32 | *:/libx32 | *:/lib/arm-linux-gnueabi*) \ The code fails to identify a certain mips architecture multilib build and thus places the multilib build into the main package. + *:* ) \ + templates="" \ + ;; \ This extra case ensures that no templates are interpolated for optimized builds (e.g. libc6-i686). These do not generate development packages anyway, so dropping them (for stage1) is the right thing to do. Failing to do so again overwrites the main package. - -e "/$$libdir.*.a /d" \ + -e "/LIBDIR.*\.a /d" \ The immediate error resulting from this sed invocation is that the command "u" is not understood by sed. $libdir becomes "/usr/lib/triplet". Thus the resulting sed command starts with "//u" which sed does not like. Fixing the escaping is not enough however, since LIBDIR is not yet interpolated. That only happens a few lines later. So instead, the match needs to target non-interpolated filenames and thus match LIBDIR. I hope that the level of detail given is sufficient. If not, please ask. Otherwise, please consider applying the patch. I would appreciate another experimental upload that also includes the hurd changes staged to SVN by Samuel Thibault already within a month from now. Thank you for your support. Helmut
diff -Nru glibc-2.19/debian/rules.d/debhelper.mk glibc-2.19/debian/rules.d/debhelper.mk --- glibc-2.19/debian/rules.d/debhelper.mk +++ glibc-2.19/debian/rules.d/debhelper.mk @@ -197,10 +197,13 @@ case "$$curpass:$$slibdir" in \ libc:*) \ ;; \ - *:/lib32 | *:/lib64 | *:/libx32 | *:/lib/arm-linux-gnueabi*) \ + *:/lib32 | *:/lib64 | *:/libo32 | *:/libx32 | *:/lib/arm-linux-gnueabi*) \ pass="-alt" \ suffix="-$(curpass)" \ ;; \ + *:* ) \ + templates="" \ + ;; \ esac ; \ for t in $$templates ; do \ for s in debian/$$t$$pass.* ; do \ @@ -219,7 +219,7 @@ cp $$s $$t ; \ fi ; \ sed -i \ - -e "/$$libdir.*.a /d" \ + -e "/LIBDIR.*\.a /d" \ -e "s#TMPDIR#debian/tmp-$$curpass#g" \ -e "s#RTLDDIR#$$rtlddir#g" \ -e "s#SLIBDIR#$$slibdir#g" \

