Hi Aurelien and Matthias,

On Wed, Apr 15, 2020 at 10:58:45PM +0200, Helmut Grohne wrote:
> I've implemented this for cross-toolchain-base (patch attached) and a
> performed a successful testbuild. Using diffoscope to compare the
> resulting packages with the ones from the archive was not a useful thing
> to do as the build-ids changed.

Given Matthias' request on IRC, I updated the patch to the current c-t-b
and incorporated Aurelien's update to a glibc patch (thank you). After
fixing my own mistakes, it now finally builds.

Here goes the patch. Maybe you can take less than two years to look into
this now, Matthias?

Helmut
diff --minimal -Nru cross-toolchain-base-60/debian/changelog 
cross-toolchain-base-60+nmu1/debian/changelog
--- cross-toolchain-base-60/debian/changelog    2022-08-16 14:17:09.000000000 
+0200
+++ cross-toolchain-base-60+nmu1/debian/changelog       2022-08-25 
15:22:17.000000000 +0200
@@ -1,3 +1,12 @@
+cross-toolchain-base (60+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix FTBFS:
+    + Update patches/glibc/debian/no-libaudit.diff (Aurelien Jarno)
+    + Remove glibc stage1 and gcc stage2. (Closes: #956855)
+
+ -- Helmut Grohne <hel...@subdivi.de>  Thu, 25 Aug 2022 15:22:17 +0200
+
 cross-toolchain-base (60) unstable; urgency=medium
 
   [ Debian Janitor ]
diff --minimal -Nru 
cross-toolchain-base-60/debian/patches/glibc/debian/no-libaudit.diff 
cross-toolchain-base-60+nmu1/debian/patches/glibc/debian/no-libaudit.diff
--- cross-toolchain-base-60/debian/patches/glibc/debian/no-libaudit.diff        
2022-08-16 12:58:56.000000000 +0200
+++ cross-toolchain-base-60+nmu1/debian/patches/glibc/debian/no-libaudit.diff   
2022-08-25 15:22:17.000000000 +0200
@@ -1,10 +1,10 @@
 --- a/debian/debhelper.in/libc-dev.install
 +++ b/debian/debhelper.in/libc-dev.install
-@@ -15,7 +15,6 @@
- 
- TMPDIR/LIBDIR/*.o LIBDIR
- TMPDIR/LIBDIR/*.so LIBDIR
--TMPDIR/LIBDIR/audit/* LIBDIR/audit
- 
- TMPDIR/usr/include/* usr/include
- TMPDIR/usr/share/gdb/* usr/share/gdb
+@@ -1,7 +1,6 @@
+ usr/include
+ usr/lib/*/*.o
+ usr/lib/*/*.so
+-usr/lib/*/audit
+ usr/lib/*/libBrokenLocale.a
+ usr/lib/*/libanl.a
+ usr/lib/*/libc.a
diff --minimal -Nru cross-toolchain-base-60/debian/rules 
cross-toolchain-base-60+nmu1/debian/rules
--- cross-toolchain-base-60/debian/rules        2022-08-16 14:07:33.000000000 
+0200
+++ cross-toolchain-base-60+nmu1/debian/rules   2022-08-25 15:22:17.000000000 
+0200
@@ -348,96 +348,6 @@
          ln -sf ${CROSS_GNU_TYPE}-gcov-${VER_GCC_BASE} ${CROSS_GNU_TYPE}-gcov
 endef
 
-$(stamp)build-gcc2.%: $(stamp)init-gcc $(stamp)install-glibc1.%
-       @echo START $@
-       cd debian/tmp.${CROSS_ARCH}/$(PF)/bin/ && \
-         rm -f ${CROSS_GNU_TYPE}-gcc-${VER_GCC_BASE} ${CROSS_GNU_TYPE}-gcc && \
-         rm -f ${CROSS_GNU_TYPE}-cpp-${VER_GCC_BASE} ${CROSS_GNU_TYPE}-cpp && \
-         rm -f ${CROSS_GNU_TYPE}-gcov-${VER_GCC_BASE} ${CROSS_GNU_TYPE}-gcov
-       cd gcc && \
-         PATH=${CURDIR}/debian/tmp.${CROSS_ARCH}/$(PF)/bin:${PATH} \
-         LD_LIBRARY_PATH=$(call 
binutils_ldpath,$*):${CURDIR}/debian/tmp.${CROSS_ARCH}/usr/lib:${CURDIR}/debian/tmp.${CROSS_ARCH}/lib
 \
-         DH_VERBOSE=1 \
-         WITH_SYSROOT=/ \
-         WITH_BUILD_SYSROOT=${CURDIR}/debian/tmp.${CROSS_ARCH} \
-         DEB_STAGE=stage2 \
-         PKG_IGNORE_CURRENTLY_BUILDING=1 \
-         BACKPORT=false \
-         DEB_BUILD_OPTIONS="$(DEB_BUILD_OPTIONS) nocheck nopgo nolto nohppa64 
nojit nonvptx" \
-         WITHOUT_LANG="hppa64 jit nvptx" \
-         $(if $(filter $(HOST_ARCH),$(CROSS_ARCH)),FORCE_CROSS_LAYOUT=yes 
WITH_BOOTSTRAP=off) \
-         dpkg-buildpackage -b -uc -us -d
-       touch $@
-
-$(stamp)install-gcc2.%: $(stamp)build-gcc2.%
-       @echo START $@
-       $(call install_gcc)
-       dpkg-deb -x 
lib$(libgcc_base)[124]-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}
-ifneq (,$(ARM32_MULTILIBS))
-       $(if $(filter $(CROSS_ARCH),armhf), \
-         dpkg-deb -x libsfgcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
libsfgcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),armel), \
-         dpkg-deb -x libhfgcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
libhfgcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH} \
-       )
-endif
-       $(if $(filter $(CROSS_ARCH),amd64 ppc64 s390x sparc64 x32), \
-         dpkg-deb -x lib32gcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
lib32gcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),i386 powerpc x32), \
-         dpkg-deb -x lib64gcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
lib64gcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),amd64 i386), \
-         dpkg-deb -x libx32gcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
libx32gcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),mips mipsel mipsr6 mipsr6el), \
-         dpkg-deb -x lib64gcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
lib64gcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x libn32gcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
libn32gcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),mipsn32 mipsn32el mipsn32r6 mipsn32r6el), \
-         dpkg-deb -x lib64gcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
lib64gcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x lib32gcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
lib32gcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),mips64 mips64el mips64r6 mips64r6el), \
-         dpkg-deb -x lib32gcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
lib32gcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x libn32gcc1-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x 
libn32gcc-${VER_GCC_BASE}-dev-${CROSS_ARCH}-cross_${DEB_VER_GCC}_all.deb \
-               debian/tmp.${CROSS_ARCH} \
-       )
-       touch $@
-
 $(stamp)build-gcc3.%: $(stamp)init-gcc $(stamp)install-glibc2.%
        @echo START $@
        cd debian/tmp.${CROSS_ARCH}/$(PF)/bin/ && \
@@ -473,88 +383,7 @@
 #      fi
        touch $@
 
-$(stamp)build-glibc1.%: $(stamp)init-glibc $(stamp)install-linux.% 
$(stamp)install-gcc1.%
-       @echo START $@
-# FIXME: why debian/libgcc1-armel-cross?
-       cd glibc-${VER_GLIBC} && \
-         PATH=${CURDIR}/debian/tmp.${CROSS_ARCH}/$(PF)/bin/:${PATH} \
-         LD_LIBRARY_PATH=$(call 
binutils_ldpath,$*):${CURDIR}/gcc/debian/lib$(libgcc_base)1-armel-cross/usr/${CROSS_GNU_TYPE}/lib/
 \
-         LINUX_SOURCE=${CURDIR}/debian/tmp.${CROSS_ARCH}/usr \
-         PATCHED_SOURCES=yes \
-         WITH_BUILD_SYSROOT=${CURDIR}/debian/tmp.${CROSS_ARCH} \
-         DEB_BUILD_PROFILES=stage1 \
-         PKG_IGNORE_CURRENTLY_BUILDING=1 \
-         BACKPORT=false \
-         DEB_BUILD_OPTIONS="$(DEB_BUILD_OPTIONS) nocheck" \
-         CTB_LIBC_DEV_DEPENDS='$(CTB_LIBC_DEV_DEPENDS)' \
-         fakeroot dpkg-buildpackage -B -uc -us -a${CROSS_ARCH} -d -Pstage1
-       : # FIXME: a libc6.1-alphaev67 package is built on alpha
-       $(if $(filter $(CROSS_ARCH),alpha),  rm -f libc6.1-alphaev67*.deb)
-       touch $@
-
-$(stamp)install-glibc1.%: $(stamp)build-glibc1.%
-       @echo START $@
-       $(if $(filter $(CROSS_ARCH),alpha ia64), \
-         dpkg-deb -x libc6.1-dev_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH}, \
-         dpkg-deb -x libc6-dev_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-
-ifneq (,$(ARM32_MULTILIBS))
-       $(if $(filter $(CROSS_ARCH),armhf), \
-         dpkg-deb -x libc6-dev-armel_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),armel), \
-         dpkg-deb -x libc6-dev-armhf_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-endif
-       $(if $(filter $(CROSS_ARCH),ppc64), \
-         dpkg-deb -x libc6-dev-powerpc_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),s390x), \
-         dpkg-deb -x libc6-dev-s390_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),sparc64), \
-         dpkg-deb -x libc6-dev-sparc_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),powerpc), \
-         dpkg-deb -x libc6-dev-ppc64_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),mips mipsel mipsr6 mipsr6el), \
-         dpkg-deb -x libc6-dev-mips64_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x libc6-dev-mipsn32_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),mipsn32 mipsn32el mipsn32r6 mipsn32r6el), \
-         dpkg-deb -x libc6-dev-mips64_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x libc6-dev-mips32_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),mips64 mips64el mips64r6 mips64r6el), \
-         dpkg-deb -x libc6-dev-mips32_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x libc6-dev-mipsn32_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),amd64), \
-         dpkg-deb -x libc6-dev-i386_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x libc6-dev-x32_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),i386), \
-         dpkg-deb -x libc6-dev-amd64_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x libc6-dev-x32_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       $(if $(filter $(CROSS_ARCH),x32), \
-         dpkg-deb -x libc6-dev-amd64_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH}; \
-         dpkg-deb -x libc6-dev-i386_${DEB_VER_GLIBC}_${CROSS_ARCH}.deb 
debian/tmp.${CROSS_ARCH} \
-       )
-       : # FIXME: why is this needed?
-       cd debian/tmp.${CROSS_ARCH}/usr/lib ;\
-       for crt in ${CROSS_GNU_TYPE}/crt*; do \
-               ln -sf $$crt `basename $$crt`; \
-       done
-       : # dpkg-shlibdeps for the stage2 gcc needs these
-       for d in $$(find debian/tmp.${CROSS_ARCH}/usr/lib -name libc.so -printf 
'%h\n'); do \
-         ln -sf libc.so $$d/libc.so.6; \
-       done
-       touch $@
-
-$(stamp)build-glibc2.%: $(stamp)init-glibc $(stamp)install-gcc2.%
+$(stamp)build-glibc2.%: $(stamp)init-glibc $(stamp)install-gcc1.% 
$(stamp)install-linux.%
        @echo START $@
 # FIXME: why debian/libgcc1-armel-cross?
        cd glibc-${VER_GLIBC} && \
@@ -1359,12 +1188,8 @@
        $(stamp)init-gcc \
        $(stamp)build-gcc1.% \
        $(stamp)install-gcc1.% \
-       $(stamp)build-gcc2.% \
-       $(stamp)install-gcc2.% \
        $(stamp)build-gcc3.% \
        $(stamp)init-glibc \
-       $(stamp)build-glibc1.% \
-       $(stamp)install-glibc1.% \
        $(stamp)build-glibc2.% \
        $(stamp)install-glibc2.% \
        $(stamp)debian-files-base \

Reply via email to