mirror of
https://git.yoctoproject.org/poky
synced 2026-04-29 18:32:20 +02:00
These functions are useful outside of just the clang recipe, so move them to a common .inc file so they can be used by other clang-related recipes. Also make the function fail if it doesn't recognise the architecture, instead of returning the empty string and causing mysterious fails later. (From OE-Core rev: 1d5298533e97dab7636f885ddd740352782395b0) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
48 lines
1.6 KiB
PHP
48 lines
1.6 KiB
PHP
LLVM_RELEASE = ""
|
|
LLVM_DIR = "llvm${LLVM_RELEASE}"
|
|
|
|
LLVM_HTTP ?= "https://github.com/llvm"
|
|
|
|
MAJOR_VER = "20"
|
|
MINOR_VER = "1"
|
|
PATCH_VER = "8"
|
|
# could be 'rcX' or 'git' or empty ( for release )
|
|
VER_SUFFIX = ""
|
|
|
|
PV = "${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}${VER_SUFFIX}"
|
|
|
|
LLVMMD5SUM = "8a15a0759ef07f2682d2ba4b893c9afe"
|
|
CLANGMD5SUM = "ff42885ed2ab98f1ecb8c1fc41205343"
|
|
LLDMD5SUM = "ae7dc7c027b1fa89b5b013d391d3ee2b"
|
|
LLDBMD5SUM = "2e0d44968471fcde980034dbb826bea9"
|
|
|
|
LLVM_LIBDIR_SUFFIX = "${@d.getVar('baselib').replace('lib', '')}"
|
|
|
|
# set the default pigz thread
|
|
export PIGZ = "-p ${@oe.utils.cpu_count(at_least=2)}"
|
|
|
|
def get_clang_arch(bb, d, arch_var):
|
|
import re
|
|
a = d.getVar(arch_var)
|
|
if re.match('(i.86|athlon|x86.64)$', a): return 'X86'
|
|
elif re.match('arm$', a): return 'ARM'
|
|
elif re.match('armeb$', a): return 'ARM'
|
|
elif re.match('aarch64$', a): return 'AArch64'
|
|
elif re.match('aarch64_be$', a): return 'AArch64'
|
|
elif re.match('mips(isa|)(32|64|)(r6|)(el|)$', a): return 'Mips'
|
|
elif re.match('riscv32$', a): return 'RISCV'
|
|
elif re.match('riscv64$', a): return 'RISCV'
|
|
elif re.match('p(pc|owerpc)(|64)', a): return 'PowerPC'
|
|
elif re.match('loongarch64$', a): return 'LoongArch'
|
|
else:
|
|
bb.fatal("Unhandled architecture %s" % arch_val)
|
|
return ""
|
|
|
|
def get_clang_host_arch(bb, d):
|
|
return get_clang_arch(bb, d, 'HOST_ARCH')
|
|
|
|
def get_clang_target_arch(bb, d):
|
|
return get_clang_arch(bb, d, 'TARGET_ARCH')
|
|
|
|
require common.inc
|