📄 get_arch_target.sh
字号:
#!/bin/sh# Report ARCH and TARGET for the given Linux .config file.# Argument 1 should be path to .configtest -r "$1" || { echo "" ""; exit 1; }. "$1"# Calculate ARCH first. This covers all architectures supported by# Linux 2.4 and 2.6, whether they are supported by HAL or not.# Note that more specific entries must follow less specific ones, e.g.# CONFIG_X86_64 overrides CONFIG_X86.eval ARCH_${CONFIG_ALPHA}=alphaeval ARCH_${CONFIG_ARM}=armeval ARCH_${CONFIG_ARM26}=arm26eval ARCH_${CONFIG_CRIS}=criseval ARCH_${CONFIG_FRV}=frveval ARCH_${CONFIG_H8300}=h8300eval ARCH_${CONFIG_X86}=i386eval ARCH_${CONFIG_IA64}=ia64eval ARCH_${CONFIG_M32R}=m32reval ARCH_${CONFIG_M68K}=m68keval ARCH_${CONFIG_M68KNOMMU}=m68knommueval ARCH_${CONFIG_MIPS}=mipseval ARCH_${CONFIG_MIPS64}=mips64eval ARCH_${CONFIG_PARISC}=parisceval ARCH_${CONFIG_PPC}=ppceval ARCH_${CONFIG_PPC64}=ppc64eval ARCH_${CONFIG_PPC_MERGE}=powerpceval ARCH_${CONFIG_ARCH_S390}=s390eval ARCH_${CONFIG_ARCH_S390X}=s390xeval ARCH_${CONFIG_SUPERH}=sheval ARCH_${CONFIG_CPU_SH5}=sh64eval ARCH_${CONFIG_SUPERH64}=sh64eval ARCH_${CONFIG_SPARC32}=sparceval ARCH_${CONFIG_SPARC64}=sparc64eval ARCH_${CONFIG_UML}=umeval ARCH_${CONFIG_V850}=v850eval ARCH_${CONFIG_X86_64}=x86_64eval ARCH_${CONFIG_XTENSA}=xtensaARCH=${ARCH_y}test -z "${ARCH}" && { echo "" ""; exit 1; }# Determine endianess. Note that it's not indicated for some CPUs at# all, so this value is only valid for certain processors.case ${ARCH} in arm*) ENDIAN=le;; mips*) ENDIAN=be;;esacif test -n "${CONFIG_CPU_BIG_ENDIAN}${CONFIG_BIG_ENDIAN}"; then ENDIAN=befiif test -n "${CONFIG_CPU_LITTLE_ENDIAN}${CONFIG_LITTLE_ENDIAN}"; then ENDIAN=lefi# Determine the target (i.e. which HAL to use).# The default is ${ARCH}-elfeval TARGET_${CONFIG_CPU_32v4}=armv4-${ENDIAN}-elfeval TARGET_${CONFIG_CPU_MIPS32_R1}=mips1-${ENDIAN}-elfeval TARGET_${CONFIG_CPU_MIPS32_R2}=mips-${ENDIAN}-elfeval TARGET_${CONFIG_CPU_R4X00}=mipsisa32-${ENDIAN}-elfeval TARGET_${CONFIG_CPU_TX49XX}=mipsisa32-${ENDIAN}-elfeval TARGET_${CONFIG_PPC32}=powerpc-be-elfeval TARGET_${CONFIG_CPU_SH4}=sh4-le-elfeval TARGET_${CONFIG_SPARC32}=sparc-be-elfeval TARGET_${CONFIG_SPARC64}=sparc64-be-elfeval TARGET_${CONFIG_CPU_SA110}=xscale-${ENDIAN}-elfeval TARGET_${CONFIG_CPU_SA1100}=xscale-${ENDIAN}-elfeval TARGET_${CONFIG_CPU_XSCALE}=xscale-${ENDIAN}-elfif test -n "${TARGET_y}"; then TARGET="${TARGET_y}"else TARGET="${ARCH}-elf"fiecho "${ARCH}" "${TARGET}"exit 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -