sys: Remove $FreeBSD$: one-line sh patternRemove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
Retire CLANG_NO_IAS34CLANG_NO_IAS34 was introduced in r276696 to allow then-HEAD kernels tobe built with clang 3.4 in FreeBSD 10. As FreeBSD 11 and later includesa version of Clang with a suffic
Retire CLANG_NO_IAS34CLANG_NO_IAS34 was introduced in r276696 to allow then-HEAD kernels tobe built with clang 3.4 in FreeBSD 10. As FreeBSD 11 and later includesa version of Clang with a sufficiently capable integrated assembler wedo not need the workaround any longer.Sponsored by: The FreeBSD Foundation
show more ...
sys/modules: normalize .CURDIR-relative paths to SRCTOPThis simplifies make output/logicTested with: `cd sys/modules; make ALL_MODULES=` on amd64MFC after: 1 monthSponsored by: Dell EMC Isilon
Clang's 3.5 integrated assembler now handles these files correctly (ithas support for the .codeXX directives). However, it is desirable, fora time, to allow kernels to be built with clang 3.4. Hist
Clang's 3.5 integrated assembler now handles these files correctly (ithas support for the .codeXX directives). However, it is desirable, fora time, to allow kernels to be built with clang 3.4. Historically, ithas been advantageous to allow stable X-1 to build kernels the oldway (so long as the impact of doing so is small), and this restoresthat ability.Also, centralize the addition of ${ASM_CFLAGS.${.IMPSRC}}, place it inkern.mk rather than kern.pre.mk so that all modules can benefit, andgive the same treatment to CFLAGS in kern.mk as well.
Remove the clang -no-integrated-as workaround for smapi_bios.S, as clang3.5.0 now supports the assembly just fine.
Re-enable -Werror for these modules. It is already enabled for the samefiles when built as part of a kernel.
Define several extra macros in bsd.sys.mk and sys/conf/kern.pre.mk, toget rid of testing explicitly for clang (using ${CC:T:Mclang}) inindividual Makefiles.Instead, use the following extra macros
Define several extra macros in bsd.sys.mk and sys/conf/kern.pre.mk, toget rid of testing explicitly for clang (using ${CC:T:Mclang}) inindividual Makefiles.Instead, use the following extra macros, for use with clang:- NO_WERROR.clang (disables -Werror)- NO_WCAST_ALIGN.clang (disables -Wcast-align)- NO_WFORMAT.clang (disables -Wformat and friends)- CLANG_NO_IAS (disables integrated assembler)- CLANG_OPT_SMALL (adds flags for extra small size optimizations)As a side effect, this enables setting CC/CXX/CPP in src.conf instead ofmake.conf! For clang, use the following:CC=clangCXX=clang++CPP=clang-cppMFC after: 2 weeks
Upgrade our copy of llvm/clang to r126079, from upstream's trunk.This contains many improvements, primarily better C++ support, anintegrated assembler for x86 and support for -pg.
Add WERRROR= to work around the warnings
Add module infrastructure for 'vpd' and 'smbios' and move 'smbios'to new home.