Kconfig: Mark clang as ready to use on some arch
This adds 2 flags: * invisible opt-in flag for platforms on which clang seems to work * visible opt-in flag to allow experimenting Clang seems to work rather well on x86_32 so it makes sense to start adding that to Jenkins buildtesting, which this allows. This allows abuild to differentiate between targets that are known to build with clang. This makes buildtesting just those targets easier. Change-Id: I46f1bad59bda94f60f4a141237ede11f6eb93cc2 Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-on: https://review.coreboot.org/c/coreboot/+/63081 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Martin L Roth <gaumless@tutanota.com>
This commit is contained in:
committed by
Martin L Roth
parent
0c94985248
commit
5b528bc656
20
src/Kconfig
20
src/Kconfig
@@ -70,19 +70,31 @@ config COMPILER_GCC
|
||||
For details see http://gcc.gnu.org.
|
||||
|
||||
config COMPILER_LLVM_CLANG
|
||||
bool "LLVM/clang (TESTING ONLY - Not currently working)"
|
||||
bool "LLVM/clang"
|
||||
depends on ALLOW_EXPERIMENTAL_CLANG || ARCH_SUPPORTS_CLANG
|
||||
help
|
||||
Use LLVM/clang to build coreboot. To use this, you must build the
|
||||
coreboot version of the clang compiler. Run the command
|
||||
make clang
|
||||
Note that this option is not currently working correctly and should
|
||||
really only be selected if you're trying to work on getting clang
|
||||
operational.
|
||||
Note that Clang is not currently working on all architectures.
|
||||
|
||||
For details see http://clang.llvm.org.
|
||||
|
||||
endchoice
|
||||
|
||||
config ARCH_SUPPORTS_CLANG
|
||||
bool
|
||||
help
|
||||
Opt-in flag for architectures that generally work well with CLANG.
|
||||
By default the option would be hidden.
|
||||
|
||||
config ALLOW_EXPERIMENTAL_CLANG
|
||||
bool "Allow experimental LLVM/Clang"
|
||||
depends on !ARCH_SUPPORTS_CLANG
|
||||
help
|
||||
On some architectures CLANG does not work that well.
|
||||
Use this only to try to get CLANG working.
|
||||
|
||||
config ANY_TOOLCHAIN
|
||||
bool "Allow building with any toolchain"
|
||||
default n
|
||||
|
@@ -33,6 +33,7 @@ config ARCH_ALL_STAGES_X86_32
|
||||
select ARCH_VERSTAGE_X86_32
|
||||
select ARCH_ROMSTAGE_X86_32
|
||||
select ARCH_RAMSTAGE_X86_32
|
||||
select ARCH_SUPPORTS_CLANG
|
||||
|
||||
# stage selectors for x64
|
||||
|
||||
|
Reference in New Issue
Block a user