Am 19.06.19 um 21:20 schrieb Bryan Drewery: > On 6/19/19 11:05 AM, Bryan Drewery wrote: >> On 6/19/19 11:02 AM, Bryan Drewery wrote: >>> On 6/16/19 9:33 AM, Warner Losh wrote: >>>> On Sun, Jun 16, 2019, 9:51 AM Rainer Hurling <rhur...@gwdg.de> wrote: >>>> >>>>> If I try to build world almost recent sources (r349100) on HEAD amd64 >>>>> (r348775), it stops with the following error: >>>>> >>>>> >>>>> [..snip..] >>>>> (cd /usr/src/tests/sys/kern && DEPENDFILE=.depend.libkern_crc32 >>>>> NO_SUBDIR=1 make -f /usr/src/tests/sys/kern/Makefile _RECURSING_PROGS=t >>>>> PROG=libkern_crc32 ) >>>>> echo libkern_crc32: /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/libc.a >>>>> /usr/obj/usr/src/amd64.amd64/tmp/usr/lib/libprivateatf-c.a >> >>>>> .depend.libkern_crc32 >>>>> cc -target x86_64-unknown-freebsd13.0 >>>>> --sysroot=/usr/obj/usr/src/amd64.amd64/tmp >>>>> -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe >>>>> -DUSERSPACE_TESTING -MD -MF.depend.libkern_crc32.libkern_crc32.o >>>>> -MTlibkern_crc32.o -std=gnu99 -fstack-protector-strong -Wsystem-headers >>>>> -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter >>>>> -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith >>>>> -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body >>>>> -Wno-string-plus-int -Wno-unused-const-variable >>>>> -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality >>>>> -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef >>>>> -Wno-address-of-packed-member -Qunused-arguments -c >>>>> /usr/src/tests/sys/kern/libkern_crc32.c -o libkern_crc32.o >>>>> cc -target x86_64-unknown-freebsd13.0 >>>>> --sysroot=/usr/obj/usr/src/amd64.amd64/tmp >>>>> -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe -DUSERSPACE_TESTING >>>>> -std=gnu99 -fstack-protector-strong -Wsystem-headers -Werror -Wall >>>>> -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes >>>>> -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized >>>>> -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int >>>>> -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value >>>>> -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion >>>>> -Wno-unused-local-typedef -Wno-address-of-packed-member >>>>> -Qunused-arguments -DUSERSPACE_TESTING -o libkern_crc32 >>>>> libkern_crc32.o /usr/src/sys/libkern/x86/crc32_sse42.c -lprivateatf-c >>>>> /usr/src/sys/libkern/x86/crc32_sse42.c -lprivateatf-c >>>>> ld: error: duplicate symbol: sse42_crc32c >>>>>>>> defined at crc32_sse42.c >>>>>>>> /tmp/crc32_sse42-2988bd.o:(sse42_crc32c) >>>>>>>> defined at crc32_sse42.c >>>>>>>> /tmp/crc32_sse42-bcf3d2.o:(.text+0x3C0) >>>>> cc: error: linker command failed with exit code 1 (use -v to see >>>>> invocation) >>>>> *** [libkern_crc32] Error code 1 >>>>> make[6]: stopped in /usr/src/tests/sys/kern >>>>> 1 error >>>>> make[6]: stopped in /usr/src/tests/sys/kern >>>>> *** [libkern_crc32] Error code 2 >>>>> >>>>> >>>>> This happens with two older cpus, Intel (Core 17-4770) and AMD (Phenom >>>>> II X6 1090T). >>>>> >>>>> Am I the only one, who observes this breakage? Thanks for any hint. >>>>> >>>> >>>> Try adding -DWITHOUT_TESTS to buildworld... >>>> >>>> Warner >>>> >>> >>> ~/git/freebsd2/tests/sys/kern # env|grep TEST >>> MK_TESTS=no >>> >>> >>> Doh. Turns out I've had TESTS disabled in some of my recent build tests >>> / commits. This is likely my fault. >>> >> >> Yup it is from my r349065. >> >> It's an ambiguity between LDADD.<PROG_TARGET> and my newly added >> LDADD.<compile target>. >> >> LDADD.libkern_crc32+= ${SRCTOP}/sys/libkern/x86/crc32_sse42.c >> >> So it's added in twice. >> >> > > This should be fixed in r349202. Sorry for the trouble. >
Many thanks for this fix. It works fine for me on the box with Intel Core 17-4770, but it fails on AMD Phenom II X6 1090T (both systems mentioned in the initial mail): [..snip..] c++ -target x86_64-unknown-freebsd13.0 --sysroot=/usr/obj/usr/src/amd64.amd64/tmp -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe -I/usr/src/contrib/llvm/tools/lldb/include -I/usr/src/contrib/llvm/tools/lldb/source -I/usr/src/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD -I/usr/src/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX -I/usr/src/contrib/llvm/tools/lldb/source/Plugins/Process/Utility -I/usr/obj/usr/src/amd64.amd64/lib/clang/libllvm -I/usr/obj/usr/src/amd64.amd64/lib/clang/libclang -DLLDB_DISABLE_PYTHON -I/usr/src/contrib/llvm/tools/clang/include -DCLANG_ENABLE_ARCMT -DCLANG_ENABLE_STATIC_ANALYZER -I/usr/src/lib/clang/include -I/usr/src/contrib/llvm/include -DLLVM_BUILD_GLOBAL_ISEL -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DLLVM_DEFAULT_TARGET_TRIPLE=\"x86_64-unknown-freebsd13.0\" -DLLVM_HOST_TRIPLE=\"x86_64-unknown-freebsd13.0\" -DDEFAULT_SYSROOT=\"\" -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 -MD -MF.depend.Plugins_SymbolFile_DWARF_DWARFDebugRanges.o -MTPlugins/SymbolFile/DWARF/DWARFDebugRanges.o -fstack-protector-strong -Qunused-arguments -fno-exceptions -fno-rtti -std=c++11 -stdlib=libc++ -Wno-c++11-extensions -c /usr/src/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp -o Plugins/SymbolFile/DWARF/DWARFDebugRanges.o Value still in symbol table! Type = 'c++: error: unable to execute command: Segmentation fault (core dumped) c++: error: clang frontend command failed due to signal (use -v to see invocation) FreeBSD clang version 8.0.1 (branches/release_80 363030) (based on LLVM 8.0.1) Target: x86_64-unknown-freebsd13.0 Thread model: posix InstalledDir: /usr/bin c++: note: diagnostic msg: PLEASE submit a bug report to https://bugs.freebsd.org/submit/ and include the crash backtrace, preprocessed source, and associated run script. c++: note: diagnostic msg: ******************** PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: Preprocessed source(s) and associated run script(s) are located at: c++: note: diagnostic msg: /tmp/DWARFDebugRanges-baf338.cpp c++: note: diagnostic msg: /tmp/DWARFDebugRanges-baf338.sh c++: note: diagnostic msg: ******************** *** [Plugins/SymbolFile/DWARF/DWARFDebugRanges.o] Error code 254 make[6]: stopped in /usr/src/lib/clang/liblldb 1 error make[6]: stopped in /usr/src/lib/clang/liblldb *** [all_subdir_lib/clang/liblldb] Error code 2 This seems to be not a problem with the test builds, but more likely something with lldb? If someone is interested, I also could send the /tmp/DWARFDebugRanges-baf338.* files. _______________________________________________ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"