Date: Wed, 11 Aug 2021 19:44:07 +0200 From: Dimitry Andric <dim@FreeBSD.org> To: Eugene Grosbein <eugen@grosbein.net> Cc: FreeBSD stable <freebsd-stable@freebsd.org> Subject: Re: Source upgrade to stable/11 amd64 broken Message-ID: <30E3E4A7-C846-4EFA-B0B1-65F306960CB8@FreeBSD.org> In-Reply-To: <490579f8-21d8-3495-69b9-27a504969287@grosbein.net> References: <490579f8-21d8-3495-69b9-27a504969287@grosbein.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 11 Aug 2021, at 05:13, Eugene Grosbein <eugen@grosbein.net> wrote: >=20 > I'm in process of upgrading very old remote FreeBSD server running = 9.3-STABLE/amd64. > First, I used svn to fetch stable/10 sources and performed source = upgrade to 10.4-STABLE r369650 > and it went just fine. >=20 > Now it has stock "FreeBSD clang version 3.4.1 = (tags/RELEASE_34/dot1-final 208032) 20140512". > I did checkout for stable/11 sources via svn but this time buildworld = fails early: >=20 > -------------------------------------------------------------- >>>> stage 1.2: bootstrap tools > -------------------------------------------------------------- > cd /usr/local/src; MAKEOBJDIRPREFIX=3D/usr/obj/usr/local/src/tmp = INSTALL=3D"sh /usr/local/src/tools/install.sh" = TOOLS_PREFIX=3D/usr/obj/usr/local/src/tmp = PATH=3D/usr/obj/usr/local/src/tmp/legacy/usr/sbin:/usr/obj/usr/local/src/t= mp/legacy/usr/bin:/usr/obj/usr/local/src/tmp/legacy/bin:/sbin:/bin:/usr/sb= in:/usr/bin WORLDTMP=3D/usr/obj/usr/local/src/tmp MAKEFLAGS=3D"-m = /usr/local/src/tools/build/mk -m /usr/local/src/share/mk" make -f = Makefile.inc1 DESTDIR=3D BOOTSTRAPPING=3D1004503 SSP_CFLAGS=3D = MK_HTML=3Dno NO_LINT=3Dyes MK_MAN=3Dno -DNO_PIC MK_PROFILE=3Dno = -DNO_SHARED -DNO_CPU_CFLAGS MK_WARNS=3Dno MK_CTF=3Dno = MK_CLANG_EXTRAS=3Dno MK_CLANG_FORMAT=3Dno MK_CLANG_FULL=3Dno MK_LLDB=3Dno= MK_TESTS=3Dno MK_INCLUDES=3Dyes bootstrap-tools > =3D=3D=3D> lib/clang/libllvmminimal (obj,all,install) > /usr/obj/usr/local/src/tmp/usr/local/src/lib/clang/libllvmminimal = created for /usr/local/src/lib/clang/libllvmminimal > = /usr/obj/usr/local/src/tmp/usr/local/src/lib/clang/libllvmminimal/Demangle= created for /usr/local/src/lib/clang/libllvmminimal > = /usr/obj/usr/local/src/tmp/usr/local/src/lib/clang/libllvmminimal/Support = created for /usr/local/src/lib/clang/libllvmminimal > = /usr/obj/usr/local/src/tmp/usr/local/src/lib/clang/libllvmminimal/TableGen= created for /usr/local/src/lib/clang/libllvmminimal > c++ -O2 -pipe -I/usr/local/src/lib/clang/include = -I/usr/local/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=3D\"x86_64-unknown-freebsd11.4\" = -DLLVM_HOST_TRIPLE=3D\"x86_64-unknown-freebsd11.4\" = -DDEFAULT_SYSROOT=3D\"/usr/obj/usr/local/src/tmp\" = -DLLVM_TARGET_ENABLE_AARCH64 -DLLVM_TARGET_ENABLE_ARM = -DLLVM_TARGET_ENABLE_MIPS -DLLVM_TARGET_ENABLE_POWERPC = -DLLVM_TARGET_ENABLE_SPARC -DLLVM_TARGET_ENABLE_X86 = -DLLVM_NATIVE_ASMPARSER=3DLLVMInitializeX86AsmParser = -DLLVM_NATIVE_ASMPRINTER=3DLLVMInitializeX86AsmPrinter = -DLLVM_NATIVE_DISASSEMBLER=3DLLVMInitializeX86Disassembler = -DLLVM_NATIVE_TARGET=3DLLVMInitializeX86Target = -DLLVM_NATIVE_TARGETINFO=3DLLVMInitializeX86TargetInfo = -DLLVM_NATIVE_TARGETMC=3DLLVMInitializeX86TargetMC -ffunction-sections = -fdata-sections -MD -MF.depend.Demangle_ItaniumDemangle.o = -MTDemangle/ItaniumDemangle.o -Qunused-arguments = -I/usr/obj/usr/local/src/tmp/legacy/usr/include -std=3Dc++14 = -fno-exceptions -fno-rtti -stdlib=3Dlibc++ -Wno-c++11-extensions -c = /usr/local/src/contrib/llvm-project/llvm/lib/Demangle/ItaniumDemangle.cpp = -o Demangle/ItaniumDemangle.o > error: invalid value 'c++14' in '-std=3Dc++14' > *** Error code 1 >=20 > Stop. > make[3]: stopped in /usr/local/src/lib/clang/libllvmminimal > *** Error code 1 >=20 > How do I resolve this? It's going to be a little tricky, as clang 3.4.1 is too old to support C++14 properly. I've tried using -std=3Dc++1y since that was the old = name for -std=3Dc++14, but it asserts quite early in the build. The best way forward is to attempt to buildworld (and buildkernel) with a clean stable/11 checkout at r360783, which is just before clang 10.0.0 got imported. You will also need to add: CXXFLAGS.clang=3D-Wno-out-of-line-declaration to your src.conf, otherwise it will get an unexpected error during the build. After this has completed, install world and kernel and reboot, and then you should have clang 9.0.0 and the corresponding libc++. This should allow you to do a regular update to the latest stable/11. =46rom there you should upgrade to stable/12, as 11 is going EOL in = about a month... :) -Dimitry
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?30E3E4A7-C846-4EFA-B0B1-65F306960CB8>