Issues during cross/gcc-* rebuilds
We're having random problems building cross/gcc-* packages, see e.g. https://gitlab.postmarketos.org/postmarketOS/pmaports/-/pipelines/208574 or when built locally using pmbootstrap build --strict gcc-aarch64 gcc-armhf gcc-armv7 gcc-riscv64 gcc-x86
the following excerpt:
>>> gcc-riscv64: Updating the pmos/x86_64 repository index...
>>> gcc-riscv64: Signing the index...
(773828) [10:04:12] (native) uninstall build dependencies
(773828) [10:04:12] (native) % cd /home/pmos/build; busybox su pmos -c SUDO_APK='abuild-apk --no-progress' HOME=/home/pmos abuild undeps ;
ERROR: No such package: .makedepends-gcc-riscv64
ERROR: No such package: .hostdepends-gcc-riscv64
(773828) [10:07:06] => edge/gcc-riscv64: Done!
(773828) [10:07:06] => (2/4) edge/gcc-armv7: Installing dependencies
(773828) [10:07:06] => edge/gcc-armv7: Building package
(773828) [10:07:06] (native) % mkdir -p /home/pmos/packages; rm -f /home/pmos/packages/pmos; ln -sf /mnt/pmbootstrap/packages/edge /home/pmos/packages/pmos
(773828) [10:07:06] % sudo rm -rf /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build
(773828) [10:07:06] % sudo mkdir -p /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/gcc-go.post-install /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/gcc-go.post-install
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0001-posix_memalign.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0001-posix_memalign.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0003-specs-turn-on-Wl-z-now-by-default.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0003-specs-turn-on-Wl-z-now-by-default.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0004-Turn-on-D_FORTIFY_SOURCE-2-by-default-for-C-C-ObjC-O.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0005-On-linux-targets-pass-as-needed-by-default-to-the-li.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0006-Enable-Wformat-and-Wformat-security-by-default.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0006-Enable-Wformat-and-Wformat-security-by-default.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0007-Enable-Wtrampolines-by-default.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0007-Enable-Wtrampolines-by-default.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0008-Disable-ssp-on-nostdlib-nodefaultlibs-and-ffreestand.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0009-Ensure-that-msgfmt-doesn-t-encounter-problems-during.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0010-Don-t-declare-asprintf-if-defined-as-a-macro.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0011-libiberty-copy-PIC-objects-during-build-process.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0011-libiberty-copy-PIC-objects-during-build-process.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0012-libgcc_s.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0012-libgcc_s.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0014-ada-fix-shared-linking.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0014-ada-fix-shared-linking.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0015-build-fix-CXXFLAGS_FOR_BUILD-passing.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0015-build-fix-CXXFLAGS_FOR_BUILD-passing.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0016-add-fortify-headers-paths.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0016-add-fortify-headers-paths.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0017-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0017-Alpine-musl-package-provides-libssp_nonshared.a.-We-.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0018-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0018-DP-Use-push-state-pop-state-for-gold-as-well-when-li.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0019-aarch64-disable-multilib-support.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0019-aarch64-disable-multilib-support.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0020-s390x-disable-multilib-support.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0020-s390x-disable-multilib-support.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0021-ppc64-le-disable-multilib-support.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0021-ppc64-le-disable-multilib-support.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0022-x86_64-disable-multilib-support.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0022-x86_64-disable-multilib-support.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0024-always-build-libgcc_eh.a.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0024-always-build-libgcc_eh.a.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0025-ada-libgnarl-compatibility-for-musl.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0025-ada-libgnarl-compatibility-for-musl.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0027-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0027-configure-Add-enable-autolink-libatomic-use-in-LINK_.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0028-configure-fix-detection-of-atomic-builtins-in-libato.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0028-configure-fix-detection-of-atomic-builtins-in-libato.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0029-libstdc-do-not-throw-exceptions-for-non-C-locales-on.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0029-libstdc-do-not-throw-exceptions-for-non-C-locales-on.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0030-gdc-unconditionally-link-libgphobos-against-libucont.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0030-gdc-unconditionally-link-libgphobos-against-libucont.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0031-druntime-link-against-libucontext-on-all-platforms.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0031-druntime-link-against-libucontext-on-all-platforms.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0032-libgnat-time_t-is-always-64-bit-on-musl-libc.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0033-libphobos-do-not-use-LFS64-symbols.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0033-libphobos-do-not-use-LFS64-symbols.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0034-libgo-fix-lfs64-use.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0034-libgo-fix-lfs64-use.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0002-gcc-poison-system-directories.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0002-gcc-poison-system-directories.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0013-nopie.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0013-nopie.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0023-riscv-disable-multilib-support.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0023-riscv-disable-multilib-support.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0026-ada-musl-support-fixes.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0026-ada-musl-support-fixes.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0035-loongarch-disable-multilib-support.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0035-loongarch-disable-multilib-support.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/0036-libphobos-add-riscv64-and-loongarch64-support.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/0036-libphobos-add-riscv64-and-loongarch64-support.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/fix-arm64.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/fix-arm64.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/ppc64le-quadmath.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/ppc64le-quadmath.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/riscv64-improve-build-time.patch /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/riscv64-improve-build-time.patch
(773828) [10:07:06] % sudo cp -rL /home/luca/git/pmaports/cross/gcc-armv7/APKBUILD /home/luca/.local/var/pmbootstrap/chroot_native/home/pmos/build/APKBUILD
(773828) [10:07:06] (native) % chown -R pmos:pmos /home/pmos/build
(773828) [10:07:06] % sudo umount /home/luca/.local/var/pmbootstrap/chroot_native/mnt/pmaports
(773828) [10:07:06] % sudo mount --bind /home/luca/git/pmaports /home/luca/.local/var/pmbootstrap/chroot_native/mnt/pmaports
(773828) [10:07:07] (native) % busybox su pmos -c HOME=/home/pmos mkdir -p /home/pmos/build ;
(773828) [10:07:07] (native) % busybox su pmos -c HOME=/home/pmos ln -sf /mnt/pmaports/.git /home/pmos/build/.git ;
(773828) [10:07:07] (native) % cd /home/pmos/build; busybox su pmos -c CARCH=x86_64 SUDO_APK='abuild-apk --no-progress' CCACHE_DISABLE=1 GOCACHE=/home/pmos/.cache/go-build HOME=/home/pmos abuild -D postmarketOS -r ;
>>> gcc-armv7: Building pmos/gcc-armv7 14.2.0-r4 (using abuild 3.14.0-r0) started Mon, 21 Oct 2024 08:07:07 +0000
>>> gcc-armv7: Validating /home/pmos/build/APKBUILD...
>>> WARNING: gcc-armv7: No maintainer
>>> WARNING: gcc-armv7: g++ should not be in makedepends
>>> gcc-armv7: Analyzing dependencies...
ERROR: unable to select packages:
.makedepends-gcc-armv7-20241021.080707:
masked in: cache
satisfies: world[.makedepends-gcc-armv7=20241021.080707]
musl-dev-armv7 (no such package):
required by: .makedepends-gcc-armv7-20241021.080707[musl-dev-armv7]
>>> ERROR: gcc-armv7: builddeps failed
>>> gcc-armv7: Uninstalling dependencies...
ERROR: No such package: .makedepends-gcc-armv7
Just running the same pmbootstrap build command again makes the build works so it seems something in the chroot gets messed up or not cleaned up properly, this case with --strict
- haven't tried without