diff --git a/boot-qemu.sh b/boot-qemu.sh index 493565d..fabe0e0 100755 --- a/boot-qemu.sh +++ b/boot-qemu.sh @@ -212,6 +212,7 @@ function setup_qemu_args() { ARCH=powerpc KIMAGE=vmlinux QEMU_ARCH_ARGS=( + -cpu power8 -machine pseries -vga none ) @@ -226,7 +227,7 @@ function setup_qemu_args() { -device "ipmi-bmc-sim,id=bmc0" -device "isa-ipmi-bt,bmc=bmc0,irq=10" -L "${IMAGES_DIR}/" -bios skiboot.lid - -machine powernv + -machine powernv8 ) QEMU_RAM=2G QEMU=(qemu-system-ppc64) @@ -260,6 +261,8 @@ function setup_qemu_args() { -enable-kvm -smp "$(nproc)" ) + else + QEMU_ARCH_ARGS=(-cpu Nehalem) fi case ${ARCH} in x86) QEMU=(qemu-system-i386) ;; diff --git a/buildroot/arm.config b/buildroot/arm.config index fe4f559..45af72c 100644 --- a/buildroot/arm.config +++ b/buildroot/arm.config @@ -1,11 +1,9 @@ BR2_arm=y -BR2_OPTIMIZE_3=y -BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_UCLIBC_STABLE=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" BR2_ROOTFS_OVERLAY="../overlay-reboot" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y -BR2_PACKAGE_BASH=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/arm64.config b/buildroot/arm64.config index f5e2b40..9c8e56f 100644 --- a/buildroot/arm64.config +++ b/buildroot/arm64.config @@ -1,12 +1,10 @@ BR2_aarch64=y BR2_cortex_a57=y -BR2_OPTIMIZE_3=y -BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_UCLIBC_STABLE=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" BR2_ROOTFS_OVERLAY="../overlay-poweroff" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y -BR2_PACKAGE_BASH=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/arm64be.config b/buildroot/arm64be.config index 8fa3c89..f68c27f 100644 --- a/buildroot/arm64be.config +++ b/buildroot/arm64be.config @@ -1,12 +1,10 @@ BR2_aarch64_be=y BR2_cortex_a57=y -BR2_OPTIMIZE_3=y -BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64BE_UCLIBC_STABLE=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" BR2_ROOTFS_OVERLAY="../overlay-poweroff" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y -BR2_PACKAGE_BASH=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/mips.config b/buildroot/mips.config index 967aef0..0b2fae2 100644 --- a/buildroot/mips.config +++ b/buildroot/mips.config @@ -1,11 +1,9 @@ BR2_mips=y -BR2_OPTIMIZE_3=y -BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +# BR2_MIPS_SOFT_FLOAT is not set +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32_UCLIBC_STABLE=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" BR2_ROOTFS_OVERLAY="../overlay-poweroff" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y -BR2_PACKAGE_BASH=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/mipsel.config b/buildroot/mipsel.config index af58252..7249fc0 100644 --- a/buildroot/mipsel.config +++ b/buildroot/mipsel.config @@ -1,11 +1,9 @@ BR2_mipsel=y -BR2_OPTIMIZE_3=y -BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +# BR2_MIPS_SOFT_FLOAT is not set +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_MIPS32EL_UCLIBC_STABLE=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" BR2_ROOTFS_OVERLAY="../overlay-poweroff" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y -BR2_PACKAGE_BASH=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/ppc32.config b/buildroot/ppc32.config index 692ed62..7493736 100644 --- a/buildroot/ppc32.config +++ b/buildroot/ppc32.config @@ -1,11 +1,9 @@ BR2_powerpc=y -BR2_powerpc_440=y -BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +BR2_powerpc_440fp=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC_440FP_UCLIBC_STABLE=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" -BR2_SYSTEM_BIN_SH_BASH=y BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" BR2_ROOTFS_OVERLAY="../overlay-reboot" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/ppc64.config b/buildroot/ppc64.config index bbaa48c..158fa93 100644 --- a/buildroot/ppc64.config +++ b/buildroot/ppc64.config @@ -1,11 +1,9 @@ BR2_powerpc64=y -BR2_CCACHE=y -BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +BR2_powerpc_power8=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64_POWER8_GLIBC_STABLE=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" -BR2_SYSTEM_BIN_SH_BASH=y BR2_TARGET_GENERIC_GETTY_PORT="hvc0" BR2_ROOTFS_OVERLAY="../overlay-poweroff" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/ppc64le.config b/buildroot/ppc64le.config index bf46cbf..120c1ab 100644 --- a/buildroot/ppc64le.config +++ b/buildroot/ppc64le.config @@ -1,11 +1,9 @@ BR2_powerpc64le=y -BR2_CCACHE=y -BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +BR2_powerpc_power8=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_POWERPC64LE_POWER8_GLIBC_STABLE=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" -BR2_SYSTEM_BIN_SH_BASH=y BR2_TARGET_GENERIC_GETTY_PORT="hvc0" BR2_ROOTFS_OVERLAY="../overlay-poweroff" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/rebuild.sh b/buildroot/rebuild.sh index 0d94417..f61b4db 100755 --- a/buildroot/rebuild.sh +++ b/buildroot/rebuild.sh @@ -41,13 +41,21 @@ done # Download latest LTS buildroot release BUILDROOT_VERSION=2020.11.2 if [[ -d src ]]; then - if [[ $(cd src && make print-version | cut -d - -f 1 2>/dev/null) != "${BUILDROOT_VERSION}" ]]; then + # Make support/scripts/setlocalversion do nothing because we are in a git + # repository so it will return information about this repo, not Buildroot + echo >src/support/scripts/setlocalversion + + INSTALLED_VERSION=$(cd src && make print-version | cut -d - -f 1 2>/dev/null) + if [[ "${INSTALLED_VERSION}" != "${BUILDROOT_VERSION}" ]]; then rm -rf src download_br fi else download_br fi +# Patch buildroot with fakeroot fixes for newer glibc versions +[[ ! -f src/package/fakeroot/0002-libfakeroot.c-define-_STAT_VER-if-not-already-define.patch ]] && + curl -LSs https://github.com/buildroot/buildroot/commit/f45925a951318e9e53bead80b363e004301adc6f.patch | patch -d src -p1 cd src || exit 1 # Build the images for the architectures requested diff --git a/buildroot/riscv.config b/buildroot/riscv.config index 8bda71c..5ceac1f 100644 --- a/buildroot/riscv.config +++ b/buildroot/riscv.config @@ -1,9 +1,8 @@ BR2_riscv=y -BR2_OPTIMIZE_3=y +BR2_RISCV_ABI_LP64=y +BR2_TOOLCHAIN_EXTERNAL=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" BR2_ROOTFS_OVERLAY="../overlay-poweroff" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y -BR2_PACKAGE_BASH=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/s390.config b/buildroot/s390.config index dbb416f..0aff61b 100644 --- a/buildroot/s390.config +++ b/buildroot/s390.config @@ -1,15 +1,9 @@ BR2_s390x=y -BR2_OPTIMIZE_3=y BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +BR2_BINUTILS_VERSION_2_35_X=y +BR2_GCC_VERSION_10_X=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" BR2_ROOTFS_OVERLAY="../overlay-poweroff" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y -BR2_PACKAGE_BASH=y BR2_TARGET_ROOTFS_CPIO=y -# glibc required for s390, as per Ulrich Weigand. -BR2_TOOLCHAIN_USES_GLIBC=y -BR2_TOOLCHAIN_BUILDROOT_GLIBC=y -BR2_TOOLCHAIN_BUILDROOT_LIBC="glibc" # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/x86.config b/buildroot/x86.config index fec7fe2..1cae89b 100644 --- a/buildroot/x86.config +++ b/buildroot/x86.config @@ -1,10 +1,8 @@ -BR2_OPTIMIZE_3=y -BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +BR2_x86_i686=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_I686_UCLIBC_STABLE=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" BR2_ROOTFS_OVERLAY="../overlay-poweroff" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y -BR2_PACKAGE_BASH=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/buildroot/x86_64.config b/buildroot/x86_64.config index 2382024..53d4fa9 100644 --- a/buildroot/x86_64.config +++ b/buildroot/x86_64.config @@ -1,11 +1,9 @@ BR2_x86_64=y -BR2_OPTIMIZE_3=y -BR2_KERNEL_HEADERS_4_4=y -BR2_GCC_VERSION_8_X=y +BR2_x86_corei7=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_X86_64_CORE_I7_UCLIBC_STABLE=y BR2_TARGET_GENERIC_ROOT_PASSWD="root" BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" BR2_ROOTFS_OVERLAY="../overlay-poweroff" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y -BR2_PACKAGE_BASH=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set diff --git a/images/arm/rootfs.cpio.zst b/images/arm/rootfs.cpio.zst index 33dabb7..0ff832c 100644 Binary files a/images/arm/rootfs.cpio.zst and b/images/arm/rootfs.cpio.zst differ diff --git a/images/arm64/rootfs.cpio.zst b/images/arm64/rootfs.cpio.zst index 223d8c5..4ea661f 100644 Binary files a/images/arm64/rootfs.cpio.zst and b/images/arm64/rootfs.cpio.zst differ diff --git a/images/arm64be/rootfs.cpio.zst b/images/arm64be/rootfs.cpio.zst index 46f4792..548242b 100644 Binary files a/images/arm64be/rootfs.cpio.zst and b/images/arm64be/rootfs.cpio.zst differ diff --git a/images/mips/rootfs.cpio.zst b/images/mips/rootfs.cpio.zst index 7eaf2f5..b89552f 100644 Binary files a/images/mips/rootfs.cpio.zst and b/images/mips/rootfs.cpio.zst differ diff --git a/images/mipsel/rootfs.cpio.zst b/images/mipsel/rootfs.cpio.zst index 0257316..a602fac 100644 Binary files a/images/mipsel/rootfs.cpio.zst and b/images/mipsel/rootfs.cpio.zst differ diff --git a/images/ppc32/rootfs.cpio.zst b/images/ppc32/rootfs.cpio.zst index 1f509eb..c787721 100644 Binary files a/images/ppc32/rootfs.cpio.zst and b/images/ppc32/rootfs.cpio.zst differ diff --git a/images/ppc64/rootfs.cpio.zst b/images/ppc64/rootfs.cpio.zst index 8c082b1..252b39b 100644 Binary files a/images/ppc64/rootfs.cpio.zst and b/images/ppc64/rootfs.cpio.zst differ diff --git a/images/ppc64le/rootfs.cpio.zst b/images/ppc64le/rootfs.cpio.zst index b8ea6b2..63ecc28 100644 Binary files a/images/ppc64le/rootfs.cpio.zst and b/images/ppc64le/rootfs.cpio.zst differ diff --git a/images/riscv/rootfs.cpio.zst b/images/riscv/rootfs.cpio.zst index 330718a..75d6cf3 100644 Binary files a/images/riscv/rootfs.cpio.zst and b/images/riscv/rootfs.cpio.zst differ diff --git a/images/s390/rootfs.cpio.zst b/images/s390/rootfs.cpio.zst index ff98286..d5d003c 100644 Binary files a/images/s390/rootfs.cpio.zst and b/images/s390/rootfs.cpio.zst differ diff --git a/images/x86/rootfs.cpio.zst b/images/x86/rootfs.cpio.zst index 2ed4c09..8e1c51e 100644 Binary files a/images/x86/rootfs.cpio.zst and b/images/x86/rootfs.cpio.zst differ diff --git a/images/x86_64/rootfs.cpio.zst b/images/x86_64/rootfs.cpio.zst index c3d047a..96c62eb 100644 Binary files a/images/x86_64/rootfs.cpio.zst and b/images/x86_64/rootfs.cpio.zst differ