smbios: Move smbios driver out from x86 machdep codeAdd it to the x86 GENERIC and MINIMAL kernelsSponsored by: Ampere Computing LLCSubmitted by: Klara Inc.Reviewed by: rpokalaDifferential Revi
smbios: Move smbios driver out from x86 machdep codeAdd it to the x86 GENERIC and MINIMAL kernelsSponsored by: Ampere Computing LLCSubmitted by: Klara Inc.Reviewed by: rpokalaDifferential Revision: https://reviews.freebsd.org/D28738(cherry picked from commit d0673fe160b04f8162f380926d455dfb966f08fb)
show more ...
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
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
Build smbios.ko as a module for amd64 and i386For whatever reason, smapi, smbios, vpd are all under the "bios" directory.smapi is only for i386, so the entire "bios" directory is only built fori3
Build smbios.ko as a module for amd64 and i386For whatever reason, smapi, smbios, vpd are all under the "bios" directory.smapi is only for i386, so the entire "bios" directory is only built fori386. Break smapi out, and make only it i386-specific. Then, build the"bios" directory for both amd64 and i386.Reviewed by: impMFC after: 1 weekSponsored by: PanasasDifferential Revision: https://reviews.freebsd.org/D8609
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.
Introduce the new kernel sub-tree x86 which should contain all the codeshared and generalized between our current amd64, i386 and pc98.This is just an initial step that should lead to a more compl
Introduce the new kernel sub-tree x86 which should contain all the codeshared and generalized between our current amd64, i386 and pc98.This is just an initial step that should lead to a more complete effort.For the moment, a very simple porting of cpufreq modules, BIOS calls andthe whole MD specific ISA bus part is added to the sub-tree but ideallya lot of code might be added and more shared support should grow.Sponsored by: Sandvine IncorporatedReviewed by: emaste, kib, jhb, impDiscussed on: archMFC: 3 weeks
Add WERRROR= to work around the warnings
Add module infrastructure for 'vpd' and 'smbios' and move 'smbios'to new home.