Hi, (x-posted to groups who'd probably be interested in this)
native x-tools cross compilation fails to build on main-n278917-233a26b5c5d7 GENERIC-NODEBUG amd64 1500053 1500053 for poudriere/riscv64
I'm unsure if it's a poudriere problem or a x-compilation problem, or both. poudriere jail -c -j riscv64 -J20 -a riscv.riscv64 -X -m git+https -v stable/14 *actually* *works*, but ofc this is very slow for building anything. The -X means 'no native cross-compilation' server is FreeBSD 15.0-CURRENT #0 main-n278917-233a26b5c5d7 GENERIC-NODEBUG amd64 1500053 1500053 # cat riscv64-src.conf KERNCONF=GENERIC-NODEBUG WITH_CCACHE_BUILD= CCACHE_PREFIX=/usr/local/bin # WITHOUT_LLVM_ASSERTIONS= WITH_LLVM_TARGET_ALL= #WITH_LLVM_TARGET_RISCV= # WITHOUT_TESTS= # cat riscv64-src-env.conf WITH_META_MODE=YES # poudriere jail -c -j riscv64 -J20 -a riscv.riscv64 -m git+https -v stable/14 I've also tried -b -m src=/usr/src -v main but it errors in the same way. fails here: make[5]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang/llvm-strings .ERROR_TARGET='llvm-strings' .ERROR_META_FILE='/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/usr.bin/clang/llvm-strings/llvm-strings.meta' .MAKE.LEVEL='5' MAKEFILE='' .MAKE.MODE='meta missing-filemon=yes missing-meta=yes silent=yes verbose' _ERROR_CMD='/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp/usr/bin/c++ -target x86_64-unknown-freebsd14.3 --sysroot=/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp -B/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp/usr/bin -O2 -pipe -fno-common -I/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/usr.bin/clang/llvm-strings -I/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/lib/clang/libllvm -I/usr/local/poudriere/jails/riscv64/usr/src/lib/clang/include -I/usr/local/poudriere/jails/riscv64/usr/src/contrib/llvm-project/llvm/include -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DHAVE_VCS_VERSION_INC -DNDEBUG -DLLVM_DEFAULT_TARGET_TRIPLE=\"riscv64-unknown-freebsd14.3\" -DLLVM_HOST_TRIPLE=\"x86_64-unknown-freebsd14.3\" -DDEFAULT_SYSROOT=\"\" -DLLVM_TARGET_ENABLE_AARCH64 -DLLVM_TARGET_ENABLE_ARM -DLLVM_TARGET_ENABLE_POWERPC -DLLVM_TARGET_ENABLE_RISCV -DLLVM_TARGET_ENABLE_X86 -DLLVM_NATIVE_ASMPARSER=LLVMInitializeX86AsmParser -DLLVM_NATIVE_ASMPRINTER=LLVMInitializeX86AsmPrinter -DLLVM_NATIVE_DISASSEMBLER=LLVMInitializeX86Disassembler -DLLVM_NATIVE_TARGET=LLVMInitializeX86Target -DLLVM_NATIVE_TARGETINFO=LLVMInitializeX86TargetInfo -DLLVM_NATIVE_TARGETMC=LLVMInitializeX86TargetMC -ffunction-sections -fdata-sections -Wno-format-zero-length -nobuiltininc -idirafter /usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp/usr/lib/clang/19/include -Wdate-time -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Wno-error=unused-but-set-parameter -Wno-error=cast-function-type-mismatch -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-member -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Wno-parentheses -Qunused-arguments -fno-exceptions -fno-rtti -std=c++17 -stdlib=libc++ -Wno-c++11-extensions -Wl,--gc-sections -Wl,-zrelro -static -o llvm-strings llvm-strings.o /usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/lib/clang/libllvm/libprivatellvm.so -lz -lprivatezstd -lexecinfo -lelf -ltinfow -lpthread ;' .CURDIR='/usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang/llvm-strings' .MAKE='make' .OBJDIR='/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/usr.bin/clang/llvm-strings' .TARGETS='all' CPUTYPE='' DESTDIR='/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp' LD_LIBRARY_PATH='' MACHINE='amd64' MACHINE_ARCH='amd64' MACHINE_CPUARCH='amd64' MAKEOBJDIRPREFIX='' MAKESYSPATH='/usr/local/poudriere/jails/riscv64/usr/src/share/mk' MAKE_VERSION='20250618' PATH='/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp/bin:/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp/usr/sbin:/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp/usr/bin:/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp/legacy/usr/sbin:/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp/legacy/usr/bin:/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp/legacy/bin:/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64/tmp/legacy/usr/libexec::/sbin:/bin:/usr/sbin:/usr/bin' SRCTOP='/usr/local/poudriere/jails/riscv64/usr/src' OBJTOP='/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64/nxb/riscv.riscv64' .MAKE.MAKEFILES='/usr/local/poudriere/jails/riscv64/usr/src/share/mk/sys.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.sys.env.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.sys.env.mk /usr/local/poudriere/jails/riscv64/etc/src-env.conf /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.mkopt.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.sys.obj.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/sys.machine.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/meta.sys.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.meta.sys.env.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/auto.obj.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.suffixes.mk /usr/local/poudriere/jails/riscv64/etc/make.conf /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.sys.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.sys.mk /usr/local/poudriere/jails/riscv64/etc/src.conf /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang/llvm-strings/Makefile /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.opts.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.own.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.opts.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.cpu.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.compiler.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.endian.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.linker.mk /usr/local/poudriere/jails/riscv64/usr/src/lib/clang/llvm.pre.mk /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang/llvm.prog.mk /usr/local/poudriere/jails/riscv64/usr/src/lib/clang/llvm.build.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.prog.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.init.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.init.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.init.mk /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang/llvm-strings/../Makefile.inc /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang/llvm-strings/../../Makefile.inc /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.suffixes-extra.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.sanitizer.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.libnames.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.libnames.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.nls.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.confs.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.files.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.dirs.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.incs.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.links.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.dep.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.clang-analyze.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.obj.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.subdir.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.sys.mk /dev/null' .PATH='. /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang/llvm-strings /usr/local/poudriere/jails/riscv64/usr/src/contrib/llvm-project/llvm/tools/llvm-strings' make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[4]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src/usr.bin/clang make[3]: stopped making "all" in /usr/local/poudriere/jails/riscv64/usr/src 44.42 real 459.34 user 51.31 sys make[2]: stopped making "everything" in /usr/local/poudriere/jails/riscv64/usr/src *** [native-xtools] Error code 2 make[1]: stopped making "native-xtools" in /usr/local/poudriere/jails/riscv64/usr/src .ERROR_TARGET='native-xtools' .ERROR_META_FILE='' .MAKE.LEVEL='1' MAKEFILE='' .MAKE.MODE='meta missing-filemon=yes missing-meta=yes silent=yes verbose' _ERROR_CMD='.PHONY' .CURDIR='/usr/local/poudriere/jails/riscv64/usr/src' .MAKE='make' .OBJDIR='/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64' .TARGETS='native-xtools' CPUTYPE='' DESTDIR='' LD_LIBRARY_PATH='' MACHINE='amd64' MACHINE_ARCH='amd64' MACHINE_CPUARCH='amd64' MAKEOBJDIRPREFIX='' MAKESYSPATH='/usr/local/poudriere/jails/riscv64/usr/src/share/mk' MAKE_VERSION='20250618' PATH='/sbin:/bin:/usr/sbin:/usr/bin' SRCTOP='/usr/local/poudriere/jails/riscv64/usr/src' OBJTOP='/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64' .MAKE.MAKEFILES='/usr/local/poudriere/jails/riscv64/usr/src/share/mk/sys.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.sys.env.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.sys.env.mk /usr/local/poudriere/jails/riscv64/etc/src-env.conf /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.mkopt.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.sys.obj.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/sys.machine.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/meta.sys.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.meta.sys.env.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/auto.obj.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.suffixes.mk /usr/local/poudriere/jails/riscv64/etc/make.conf /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.sys.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.sys.mk /usr/local/poudriere/jails/riscv64/etc/src.conf /usr/local/poudriere/jails/riscv64/usr/src/Makefile.inc1 /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.tools.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.compiler.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.opts.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.cpu.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.endian.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.opts.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.own.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.linker.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.compat.pre.mk /usr/local/poudriere/jails/riscv64/usr/src/Makefile.libcompat /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.compat.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.subdir.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.init.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.init.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.init.mk' .PATH='. /usr/local/poudriere/jails/riscv64/usr/src' make[1]: 1 error make[1]: stopped making "native-xtools" in /usr/local/poudriere/jails/riscv64/usr/src .ERROR_TARGET='native-xtools' .ERROR_META_FILE='' .MAKE.LEVEL='1' MAKEFILE='' .MAKE.MODE='meta missing-filemon=yes missing-meta=yes silent=yes verbose' _ERROR_CMD='.PHONY' .CURDIR='/usr/local/poudriere/jails/riscv64/usr/src' .MAKE='make' .OBJDIR='/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64' .TARGETS='native-xtools' CPUTYPE='' DESTDIR='' LD_LIBRARY_PATH='' MACHINE='amd64' MACHINE_ARCH='amd64' MACHINE_CPUARCH='amd64' MAKEOBJDIRPREFIX='' MAKESYSPATH='/usr/local/poudriere/jails/riscv64/usr/src/share/mk' MAKE_VERSION='20250618' PATH='/sbin:/bin:/usr/sbin:/usr/bin' SRCTOP='/usr/local/poudriere/jails/riscv64/usr/src' OBJTOP='/usr/obj/usr/local/poudriere/jails/riscv64/usr/src/amd64.amd64' .MAKE.MAKEFILES='/usr/local/poudriere/jails/riscv64/usr/src/share/mk/sys.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.sys.env.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.sys.env.mk /usr/local/poudriere/jails/riscv64/etc/src-env.conf /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.mkopt.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.sys.obj.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/sys.machine.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/meta.sys.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.meta.sys.env.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/auto.obj.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.suffixes.mk /usr/local/poudriere/jails/riscv64/etc/make.conf /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.sys.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.sys.mk /usr/local/poudriere/jails/riscv64/etc/src.conf /usr/local/poudriere/jails/riscv64/usr/src/Makefile.inc1 /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.tools.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.compiler.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.opts.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.cpu.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.endian.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.opts.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.own.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.linker.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.compat.pre.mk /usr/local/poudriere/jails/riscv64/usr/src/Makefile.libcompat /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.compat.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.subdir.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/bsd.init.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/local.init.mk /usr/local/poudriere/jails/riscv64/usr/src/share/mk/src.init.mk' .PATH='. /usr/local/poudriere/jails/riscv64/usr/src' make: stopped making "native-xtools" in /usr/local/poudriere/jails/riscv64/usr/src [01:09:44] Error: /usr/local/share/poudriere/jail.sh:build_native_xtools:29:Failed to 'make native-xtools' in /usr/local/poudriere/jails/riscv64/usr/src [01:09:44] Error while creating jail, cleaning up. [01:09:44] Removing riscv64 jail... done --