46 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #
 | |
| # set the ARCH environment variable for kernel compilation (including
 | |
| # modules). return value must match one of the architecture directories
 | |
| # in the kernel source "arch" directory
 | |
| #
 | |
| 
 | |
| valid_archs = "alpha cris ia64 \
 | |
|                i386 x86 \
 | |
|                m68knommu m68k ppc powerpc powerpc64 ppc64  \
 | |
| 	       sparc sparc64 \
 | |
|                arm  arm26 \
 | |
|                m32r mips \
 | |
| 	       sh sh64 um h8300   \
 | |
| 	       parisc s390  v850 \
 | |
| 	       avr32 blackfin \
 | |
|               microblaze"
 | |
| 
 | |
| def map_kernel_arch(a, d):
 | |
| 	import re
 | |
| 
 | |
| 	valid_archs = d.getVar('valid_archs', 1).split()
 | |
| 
 | |
| 	if   re.match('(i.86|athlon|x86.64)$', a):	return 'x86'
 | |
| 	elif re.match('arm26$', a):		        return 'arm26'
 | |
| 	elif re.match('armeb$', a):		        return 'arm'
 | |
| 	elif re.match('mipsel$', a):		        return 'mips'
 | |
| 	elif re.match('p(pc|owerpc)(|64)', a):		return 'powerpc'
 | |
| 	elif re.match('sh(3|4)$', a):		        return 'sh'
 | |
| 	elif re.match('bfin', a):                       return 'blackfin'
 | |
| 	elif re.match('microblazeel', a):               return 'microblaze'
 | |
|         elif a in valid_archs:			        return a
 | |
| 	else:
 | |
| 		bb.error("cannot map '%s' to a linux kernel architecture" % a)
 | |
| 
 | |
| export ARCH = "${@map_kernel_arch(d.getVar('TARGET_ARCH', 1), d)}"
 | |
| 
 | |
| def map_uboot_arch(a, d):
 | |
| 	import re
 | |
| 
 | |
| 	if   re.match('p(pc|owerpc)(|64)', a): return 'ppc'
 | |
| 	elif re.match('i.86$', a): return 'x86'
 | |
| 	return a
 | |
| 
 | |
| export UBOOT_ARCH = "${@map_uboot_arch(d.getVar('ARCH', 1), d)}"
 | |
| 
 | 
