freebsd / poudriere

Port/Package build and test system
https://github.com/freebsd/poudriere/wiki
BSD 2-Clause "Simplified" License
393 stars 162 forks source link

emulators/virtualbox-ose (patched) build failures in poudriere on FreeBSD 14.0-CURRENT #1050

Closed grahamperrin closed 1 year ago

grahamperrin commented 1 year ago

Discussed in https://github.com/freebsd/poudriere/discussions/1049

In a nutshell:

Originally posted by **grahamperrin** April 30, 2023 Is there, below, anything to cause build failure with [emulators/virtualbox-ose](https://www.freshports.org/emulators/virtualbox-ose/) using the patch from ? ~~The `MAKEWORLDARGS`, maybe?~~ **Postscript**: build failures are reproducible with a fresh jail that is not built from source. ### Logged From a recent error log: ```text … /wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/src/VBox/Devices/PC/ipxe/src/core/settings.c:289:8: error: fields must have a constant size: 'variable length array in structure' extension will never be supported char name[ strlen ( name ) + 1 /* NUL */ ]; ^ 11 warnings and 1 error generated. kmk: *** [/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/out/freebsd.amd64/release/obj/iPxeBaseBin/src/core/settings.o] Error 1 The failing command: @clang14 -m32 -c -O2 -fno-pie -fcommon -ffreestanding -ffunction-sections -march=i386 -fomit-frame-pointer -fstrength-reduce -falign-jumps=1 -falign-loops=1 -Os -falign-functions=1 -mstack-alignment=2 -mregparm=3 -mrtd -freg-struct-return -fshort-wchar -Ui386 -Ulinux -include compiler.h -Wall -W -Wformat-nonliteral -fno-stack-protector -fno-dwarf2-cfi-asm -Wno-address -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/src/VBox/Devices/PC/ipxe/src -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/src/VBox/Devices/PC/ipxe/src/include -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/src/VBox/Devices/PC/ipxe/src/arch/x86/include -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/src/VBox/Devices/PC/ipxe/src/arch/i386/include -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/src/VBox/Devices/PC/ipxe/src/arch/i386/include/pcbios -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/include -I/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/out/freebsd.amd64/release -DVBOX -DVBOX_OSE -DVBOX_WITH_64_BITS_GUESTS -DRT_OS_FREEBSD -D__FREEBSD__ -DRT_ARCH_AMD64 -D__AMD64__ -DVBOX_WITH_DEBUGGER -DVBOX_WITH_HARDENING -DRTPATH_APP_PRIVATE=\"/usr/local/share/virtualbox-ose\" -DRTPATH_APP_PRIVATE_ARCH=\"/usr/local/lib/virtualbox\" -DRTPATH_SHARED_LIBS=\"/usr/local/lib/virtualbox\" -DRTPATH_APP_DOCS=\"/usr/local/share/doc/virtualbox-ose\" -DARCH=i386 -DPLATFORM=pcbios -DVERSION_MAJOR=1 -DVERSION_MINOR=0 -DVERSION_PATCH=0 -DVERSION=\"1.0.0+\" -D_build_id=0xaffeaffe -DOBJECT=settings -Wp,-MD,/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/out/freebsd.amd64/release/obj/iPxeBaseBin/src/core/settings.o.dep -Wp,-MT,/wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/out/freebsd.amd64/release/obj/iPxeBaseBin/src/core/settings.o -Wp,-MP -o /wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/out/freebsd.amd64/release/obj/iPxeBaseBin/src/core/settings.o /wrkdirs/usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44/src/VBox/Devices/PC/ipxe/src/core/settings.c kmk: *** Waiting for unfinished jobs.... … ``` ### Environment #### `/usr/local/etc/poudriere.conf` Condensed: ```text ALLOW_MAKE_JOBS_PACKAGES="ccache mesa-dri xf86-video-* virtualbox-ose*" ALLOW_MAKE_JOBS=no BASEFS=/usr/local/poudriere CCACHE_DIR=/usr/.ccache DISTFILES_CACHE=/usr/ports/distfiles FREEBSD_HOST=https://download.FreeBSD.org HTML_TRACK_REMAINING=yes MAKEWORLDARGS="WITHOUT_LLVM_ASSERTIONS=yes WITH_MALLOC_PRODUCTION=yes -DMALLOC_PRODUCTION WITHOUT_VI=yes WITHOUT_LLVM_TARGET_ALL=yes WITHOUT_TESTS=yes WITH_CCACHE_BUILD=yes -s" PACKAGE_FETCH_BRANCH=latest PARALLEL_JOBS=2 RESOLV_CONF=/etc/resolv.conf USE_PORTLINT=no USE_TMPFS=yes ZPOOL=august ``` #### `make.conf` Temporarily setting aside the file: `mv /usr/local/etc/poudriere.d/make.conf /usr/local/etc/poudriere.d/make.conf.setaside` – did not lead to a successful build. #### Other aspects ```text % uname -aKU FreeBSD mowa219-gjp4-8570p-freebsd 14.0-CURRENT FreeBSD 14.0-CURRENT #39 main-n262604-7ee4066db129: Thu Apr 27 21:56:38 BST 2023 grahamperrin@mowa219-gjp4-8570p-freebsd:/usr/obj/usr/src/amd64.amd64/sys/GENERIC-NODEBUG amd64 1400088 1400088 % sudo poudriere jail -i -j main grahamperrin's password: Jail name: main Jail version: 14.0-CURRENT 1400088 Jail arch: amd64 Jail method: src=/usr/src Jail mount: /usr/local/poudriere/jails/main Jail fs: august/poudriere/jails/main Jail updated: 2023-04-28 07:40:49 Jail pkgbase: disabled % pkg iinfo poudriere poudriere-devel-3.3.99.20220831 % ```
grahamperrin commented 1 year ago

From https://github.com/freebsd/poudriere/discussions/1049#discussioncomment-5767094:

Experimenting with a fresh jail: …

[00:00:11] Warning: (emulators/virtualbox-ose): sh: clang14: not found [00:00:11] Warning: (emulators/virtualbox-ose): make: "/usr/ports/Mk/Uses/compiler.mk" line 80: warning: "clang14 --version" returned non-zero status [00:00:11] Warning: (emulators/virtualbox-ose): make: "/usr/ports/Mk/Uses/compiler.mk" line 128: warning: "clang++14 -### /dev/null 2>&1" returned non-zero status

grahamperrin commented 1 year ago

Not reproducible with a more recent patch from https://bugs.freebsd.org/270189#c34.

Apologies for the noise.