Re: emulators/virtualbox-ose-additions-nox11 fails to build in poudriere-devel for amd64 context: fails CTASSERT(sizeof(struct pcpu) == UMA_PCPU_ALLOC_SIZE)

From: Mark Millard <marklmi_at_yahoo.com>
Date: Sun, 15 Jul 2018 09:26:39 -0700
[The build got to emulators/virtualbox-ose-additions and it also
failed this way. The PAGE_SIZE warning did not occur. More notes
added after the quoted history.]

On 2018-Jul-15, at 7:49 AM, Mark Millard <marklmi at yahoo.com> wrote:

> The failure:
> 
> kBuild: Compiling VBoxGuestR0Lib - /wrkdirs/usr/ports/emulators/virtualbox-ose-additions-nox11/work/VirtualBox-5.2.14/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR0LibPhysHeap.cpp
> In file included from /wrkdirs/usr/ports/emulators/virtualbox-ose-additions-nox11/work/VirtualBox-5.2.14/src/VBox/GuestHost/HGSMI/HGSMIMemAlloc.cpp:55:
> In file included from /wrkdirs/usr/ports/emulators/virtualbox-ose-additions-nox11/work/VirtualBox-5.2.14/include/VBox/Graphics/HGSMIMemAlloc.h:31:
> In file included from /wrkdirs/usr/ports/emulators/virtualbox-ose-additions-nox11/work/VirtualBox-5.2.14/include/VBox/Graphics/HGSMIDefs.h:35:
> In file included from /wrkdirs/usr/ports/emulators/virtualbox-ose-additions-nox11/work/VirtualBox-5.2.14/include/VBox/Graphics/VBoxVideoIPRT.h:32:
> In file included from /wrkdirs/usr/ports/emulators/virtualbox-ose-additions-nox11/work/VirtualBox-5.2.14/include/iprt/string.h:45:
> In file included from /usr/src/sys/sys/libkern.h:41:
> In file included from /usr/src/sys/sys/systm.h:112:
> /usr/src/sys/sys/pcpu.h:207:1: error: static_assert failed "compile-time assertion failed"
> CTASSERT(sizeof(struct pcpu) == UMA_PCPU_ALLOC_SIZE);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /usr/src/sys/sys/systm.h:107:21: note: expanded from macro 'CTASSERT'
> #define CTASSERT(x)     _Static_assert(x, "compile-time assertion failed")
>                        ^              ~
> 
> (There are other example places that fail the same assert condition.)
> 
> There is also a warning for PAGE_SIZE being redefined:
> 
> In file included from /wrkdirs/usr/ports/emulators/virtualbox-ose-additions-nox11/work/VirtualBox-5.2.14/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR0LibInit.cpp:33:
> In file included from /wrkdirs/usr/ports/emulators/virtualbox-ose-additions-nox11/work/VirtualBox-5.2.14/include/iprt/string.h:45:
> In file included from /usr/src/sys/sys/libkern.h:41:
> In file included from /usr/src/sys/sys/systm.h:111:
> In file included from /usr/src/sys/sys/param.h:141:
> /usr/include/machine/param.h:101:9: warning: 'PAGE_SIZE' macro redefined [-Wmacro-redefined]
> #define PAGE_SIZE       (1<<PAGE_SHIFT) /* bytes/page */
>        ^
> /wrkdirs/usr/ports/emulators/virtualbox-ose-additions-nox11/work/VirtualBox-5.2.14/include/iprt/param.h:52:10: note: previous definition is here
> # define PAGE_SIZE          4096
>         ^
> 
> 
> Context:
> 
> 
> # uname -apKU
> FreeBSD FBSDUSSD 12.0-CURRENT FreeBSD 12.0-CURRENT  r336301M  amd64 amd64 1200072 1200072
> 
> 
> 
> # svnlite info /usr/ports | grep "Re[plv]"
> Relative URL: ^/head
> Repository Root: svn://svn.freebsd.org/ports
> Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5
> Revision: 474654
> Last Changed Rev: 474654
> 
> 
> 
> The "M" in r336301M is mostly for use with powerpc* family experiments based
> on modern C/C++ compilers:
> 
> # svnlite status /usr/src/ | sort
> ?       /usr/src/sys/amd64/conf/GENERIC-DBG
> ?       /usr/src/sys/amd64/conf/GENERIC-NODBG
> ?       /usr/src/sys/arm/conf/GENERIC-DBG
> ?       /usr/src/sys/arm/conf/GENERIC-NODBG
> ?       /usr/src/sys/arm64/conf/GENERIC-DBG
> ?       /usr/src/sys/arm64/conf/GENERIC-NODBG
> ?       /usr/src/sys/powerpc/conf/GENERIC64vtsc-DBG
> ?       /usr/src/sys/powerpc/conf/GENERIC64vtsc-NODBG
> ?       /usr/src/sys/powerpc/conf/GENERICvtsc-DBG
> ?       /usr/src/sys/powerpc/conf/GENERICvtsc-NODBG
> M       /usr/src/Makefile.libcompat
> M       /usr/src/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
> M       /usr/src/contrib/llvm/tools/lld/ELF/Arch/PPC64.cpp
> M       /usr/src/crypto/openssl/crypto/armcap.c
> M       /usr/src/lib/libkvm/kvm_powerpc.c
> M       /usr/src/lib/libkvm/kvm_private.c
> M       /usr/src/release/Makefile.vm
> M       /usr/src/release/scripts/mk-vmimage.sh
> M       /usr/src/release/tools/vmimage.subr
> M       /usr/src/secure/lib/libcrypto/Makefile
> M       /usr/src/stand/defs.mk
> M       /usr/src/stand/powerpc/boot1.chrp/Makefile
> M       /usr/src/stand/powerpc/kboot/Makefile
> M       /usr/src/sys/arm64/arm64/identcpu.c
> M       /usr/src/sys/conf/kmod.mk
> M       /usr/src/sys/conf/ldscript.powerpc
> M       /usr/src/sys/powerpc/aim/mmu_oea64.c
> M       /usr/src/sys/powerpc/ofw/ofw_machdep.c

emulators/virtualbox-ose-additions also got the error. But it did
not get the PAGE_SIZE warning.


There was also in both variants the likes of (3 times for each):

/wrkdirs/usr/ports/emulators/virtualbox-ose-additions/work/VirtualBox-5.2.14/src/VBox/Runtime/common/asm/ASMSerializeInstruction-iret.asm:46: warning: `ss' segment register ignored in 64-bit mode


And there were lots of notices for:

warning: flexible array members are a C99 feature [-Wc99-extensions]
warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]

===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
Received on Sun Jul 15 2018 - 14:26:50 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:17 UTC