HOST_EXEEXT = ""
TUNE_ARCH ??= "INVALID"
+TUNE_CCARGS ??= ""
+
TARGET_ARCH = "${TUNE_ARCH}"
TARGET_OS = "INVALID"
TARGET_VENDOR = "-oe"
TARGET_SYS = "${TARGET_ARCH}${TARGET_VENDOR}${@['-' + bb.data.getVar('TARGET_OS', d, 1), ''][bb.data.getVar('TARGET_OS', d, 1) == ('' or 'custom')]}"
TARGET_PREFIX = "${TARGET_SYS}-"
-TARGET_CC_ARCH = ""
+TARGET_CC_ARCH = "${TUNE_CCARGS}"
SDK_ARCH = "${BUILD_ARCH}"
SDK_OS = "${BUILD_OS}"
TUNE_ARCH = "arm"
-TARGET_CC_ARCH = "-march=armv6j -mtune=arm1136jf-s"
-TARGET_CC_ARCH += "${@['', '-mfloat-abi=softfp -mfpu=vfp'][(bb.data.getVar('TARGET_FPU', d, 1) == 'soft') and (bb.data.getVar('CPU_FEATURES', d, 1).find('vfp') != -1)]}"
+TUNE_CCARGS = "-march=armv6j -mtune=arm1136jf-s"
+TUNE_CCARGS += "${@['', '-mfloat-abi=softfp -mfpu=vfp'][(bb.data.getVar('TARGET_FPU', d, 1) == 'soft') and (bb.data.getVar('CPU_FEATURES', d, 1).find('vfp') != -1)]}"
TUNE_PKGARCH = "armv6"
ARM_INSTRUCTION_SET = "${@['thumb','arm'][bb.data.getVar('CPU_FEATURES', d, 1).find('thumb') == -1]}"
TUNE_ARCH = "arm"
TUNE_PKGARCH = "armv4t"
-TARGET_CC_ARCH = "-march=armv4t -mtune=arm920t"
+TUNE_CCARGS = "-march=armv4t -mtune=arm920t"
PACKAGE_EXTRA_ARCHS = "arm armv4 armv4t"
TUNE_PKGARCH = "armv5te"
PACKAGE_EXTRA_ARCHS = "arm armv4 armv4t armv5te"
# For gcc 3.x you need:
-#TARGET_CC_ARCH = "-march=armv5te -mtune=arm926ejs"
+#TUNE_CCARGS = "-march=armv5te -mtune=arm926ejs"
# For gcc 4.x you need:
-TARGET_CC_ARCH = "-march=armv5te -mtune=arm926ej-s"
+TUNE_CCARGS = "-march=armv5te -mtune=arm926ej-s"
TUNE_PKGARCH = "armv4t"
PACKAGE_EXTRA_ARCHS = "arm armv4 armv4t"
-TARGET_CC_ARCH = "-mcpu=arm9tdmi -mtune=arm9tdmi"
+TUNE_CCARGS = "-mcpu=arm9tdmi -mtune=arm9tdmi"
# valid options for -march: `armv7', `armv7-a', `armv7-r', `armv7-m'
# valid option for -mtune: `cortex-a8', `cortex-r4', `cortex-m3', `cortex-m1'
# This will NOT compile programs in 'ARM' mode, which is what you really want
-TARGET_CC_ARCH = "-march=armv7 -mfpu=vfp -mfloat-abi=softfp"
+TUNE_CCARGS = "-march=armv7 -mfpu=vfp -mfloat-abi=softfp"
TUNE_PKGARCH = "armv7"
PACKAGE_EXTRA_ARCHS = "arm armv4 armv4t armv5te armv6 armv7"
TUNE_ARCH = "i586"
TUNE_PKGARCH = "core2"
-TARGET_CC_ARCH = "-m32 -march=core2 -msse3 -mtune=generic -mfpmath=sse"
+TUNE_CCARGS = "-m32 -march=core2 -msse3 -mtune=generic -mfpmath=sse"
#MOBLIN_CFLAGS = "-Os -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -fasynchronous-unwind-tables"
PACKAGE_EXTRA_ARCHS = "x86 i386 i486 i586 i686 core2"
TUNE_PKGARCH = "i586"
-TARGET_CC_ARCH = "-march=c3 -mtune=c3"
+TUNE_CCARGS = "-march=c3 -mtune=c3"
PACKAGE_EXTRA_ARCHS = "i386 i486 i586"
# [2] http://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html
# [3] https://support.codesourcery.com/GNUToolchain/kbentry29
-TARGET_CC_ARCH = "-march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -fno-tree-vectorize"
+TUNE_CCARGS = "-march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -fno-tree-vectorize"
# Other potentially useful options
#-ftree-vectorize -ffast-math -fno-omit-frame-pointer
TUNE_ARCH = "arm"
-TARGET_CC_ARCH = "-march=armv7 -mtune=cortex-m1 -mfpu=vfp -mfloat-abi=softfp"
+TUNE_CCARGS = "-march=armv7 -mtune=cortex-m1 -mfpu=vfp -mfloat-abi=softfp"
TUNE_PKGARCH = "armv6"
TUNE_ARCH = "arm"
# valid options for -march: `armv7', `armv7-m'
-TARGET_CC_ARCH = "-march=armv7-m -mtune=cortex-m3 -mfpu=vfp -mfloat-abi=softfp"
+TUNE_CCARGS = "-march=armv7-m -mtune=cortex-m3 -mfpu=vfp -mfloat-abi=softfp"
TUNE_PKGARCH = "armv7"
TUNE_ARCH = "arm"
# valid options for -march: `armv7', `armv7-r'
-TARGET_CC_ARCH = "-march=armv7-r -mtune=cortex-r4 -mfpu=vfp -mfloat-abi=softfp"
+TUNE_CCARGS = "-march=armv7-r -mtune=cortex-r4 -mfpu=vfp -mfloat-abi=softfp"
TUNE_PKGARCH = "armv7"
TUNE_ARCH = "arm"
-TARGET_CC_ARCH = "-march=ep9312 -mtune=ep9312 -mcpu=ep9312"
+TUNE_CCARGS = "-march=ep9312 -mtune=ep9312 -mcpu=ep9312"
# add "-mfp=maverick" for newer gcc versions > 4.0
#set arch to ep9312 for all generated packages
TUNE_ARCH = "i586"
TUNE_PKGARCH = "i586"
-TARGET_CC_ARCH = "-m32 -march=i586"
+TUNE_CCARGS = "-m32 -march=i586"
PACKAGE_EXTRA_ARCHS = "x86 i386 i486 i586"
# Configurations for the Intel PXA27x Appications Processor Family.
# Please use tune-xscale for PXA255/PXA26x based processors.
-TARGET_CC_ARCH = "-march=iwmmxt -mcpu=iwmmxt -mtune=iwmmxt"
+TUNE_CCARGS = "-march=iwmmxt -mcpu=iwmmxt -mtune=iwmmxt"
PACKAGE_EXTRA_ARCHS = "arm armv4 armv4t armv5te iwmmxt"
TUNE_PKGARCH = "iwmmxt"
TUNE_ARCH = "mips"
-TARGET_CC_ARCH = "-march=mips32"
+TUNE_CCARGS = "-march=mips32"
TUNE_PKGARCH = "mips"
TUNE_ARCH = "powerpc"
-TARGET_CC_ARCH = "-mcpu=603e -mhard-float"
+TUNE_CCARGS = "-mcpu=603e -mhard-float"
TUNE_PKGARCH = "ppc603e"
PACKAGE_EXTRA_ARCHS = "powerpc ppc603e"
TUNE_ARCH = "powerpc"
-TARGET_CC_ARCH = "-mcpu=e300c2 -msoft-float"
+TUNE_CCARGS = "-mcpu=e300c2 -msoft-float"
TUNE_PKGARCH = "ppce300"
PACKAGE_EXTRA_ARCHS = "powerpc ppce300"
TUNE_ARCH = "powerpc"
-TARGET_CC_ARCH = "-mcpu=8540"
+TUNE_CCARGS = "-mcpu=8540"
BASE_PACKAGE_ARCH = "ppce500"
TUNE_PKGARCH = "ppce500"
PACKAGE_EXTRA_ARCHS = "powerpc ppce500"
TUNE_ARCH = "powerpc"
-TARGET_CC_ARCH = "-mcpu=e500mc"
+TUNE_CCARGS = "-mcpu=e500mc"
TUNE_PKGARCH = "ppce500mc"
PACKAGE_EXTRA_ARCHS = "powerpc ppce500mc"
TUNE_ARCH = "powerpc"
-TARGET_CC_ARCH = "-mcpu=8548 -mabi=spe -mspe"
+TUNE_CCARGS = "-mcpu=8548 -mabi=spe -mspe"
TUNE_PKGARCH = "ppce500v2"
PACKAGE_EXTRA_ARCHS = "powerpc ppce500v2"
TUNE_ARCH = "sh3"
-TARGET_CC_ARCH = "-ml -m3"
+TUNE_CCARGS = "-ml -m3"
TUNE_PKGARCH = "sh3"
# But it is not compatible for sh4.
# The binary optimized by m4a doesn't operate on sh4. It works on sh4a only.
-TARGET_CC_ARCH = "-ml -m4"
+TUNE_CCARGS = "-ml -m4"
TUNE_PKGARCH = "sh4"
# This machine lists common configuration options for Strongarm 1100 devices
# NOTE: The Zaurus Collie also has a Strongarm processor, but uses the 1110 type
-TARGET_CC_ARCH = "-march=armv4 -mtune=strongarm1100"
+TUNE_CCARGS = "-march=armv4 -mtune=strongarm1100"
TUNE_ARCH = "sparc"
-TARGET_CC_ARCH = "-mcpu=supersparc"
+TUNE_CCARGS = "-mcpu=supersparc"
TUNE_PKGARCH = "supersparc"
ARM_THUMB_M_OPT = "${@['-mno-thumb', '-mthumb'][bb.data.getVar('ARM_INSTRUCTION_SET', d, 1) == 'thumb']}"
#
-TARGET_CC_ARCH += "${ARM_INTERWORK_M_OPT} ${ARM_THUMB_M_OPT}"
+TUNE_CCARGS += "${ARM_INTERWORK_M_OPT} ${ARM_THUMB_M_OPT}"
TARGET_CC_KERNEL_ARCH += "-mno-thumb-interwork -mno-thumb"
TUNE_ARCH = "x86_64"
TUNE_PKGARCH = "x86_64"
-TARGET_CC_ARCH = "-m64"
+TUNE_CCARGS = "-m64"
INHERIT += "siteinfo"
-TARGET_CC_ARCH = "-march=armv5te -mtune=xscale"
+TUNE_CCARGS = "-march=armv5te -mtune=xscale"
TARGET_CC_KERNEL_ARCH = "-march=armv5te -mtune=xscale"
TUNE_PKGARCH = "${@['armv5teb', 'armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
PACKAGE_EXTRA_ARCHS = "${@['armeb armv4b armv4tb armv5teb', 'arm armv4 armv4t armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
# webkit-gtk has alignment issues with double instructions on armv5 so
# disable them here
-TARGET_CC_ARCH_pn-webkit-gtk = "-march=armv4t"
-TARGET_CC_ARCH_pn-cairo = "-march=armv4t"
+TUNE_CCARGS_pn-webkit-gtk = "-march=armv4t"
+TUNE_CCARGS_pn-cairo = "-march=armv4t"