2 # set the ARCH environment variable for kernel compilation (including
3 # modules). return value must match one of the architecture directories
4 # in the kernel source "arch" directory
7 valid_archs = "alpha cris ia64 \
9 m68knommu m68k ppc powerpc ppc64 powerpc64 \
18 def map_kernel_arch(a, d):
21 valid_archs = bb.data.getVar('valid_archs', d, 1).split()
23 if re.match('(i.86|athlon)$', a): return 'i386'
24 elif re.match('arm26$', a): return 'arm26'
25 elif re.match('armeb$', a): return 'arm'
26 elif re.match('mips(el|64|64el)$', a): return 'mips'
27 elif re.match('sh(3|4)$', a): return 'sh'
28 elif re.match('bfin', a): return 'blackfin'
29 elif re.match('(p|owerpc)64$', a): return 'powerpc'
30 elif a in valid_archs: return a
32 bb.error("cannot map '%s' to a linux kernel architecture" % a)
34 export ARCH = "${@map_kernel_arch(bb.data.getVar('TARGET_ARCH', d, 1), d)}"
36 def map_uboot_arch(a, d):
39 if re.match('(powerpc|ppc)(|64)$', a): return 'ppc'
40 elif re.match('i.86$', a): return 'x86'
43 export UBOOT_ARCH = "${@map_uboot_arch(bb.data.getVar('ARCH', d, 1), d)}"