mirror of
https://git.yoctoproject.org/poky
synced 2026-03-06 23:39:40 +01:00
* number of TUNE_CCARGS conditionals is important if we add extra space with each one in "else" branch I'm building for 2 MACHINEs one is cortexa9, second is cortexa8 few months ago we added TUNE_CCARGS[vardepvalue] in bitbake.conf http://git.openembedded.org/openembedded-core/commit/?id=03f1e34ea3ce80931e9c3cd2ab22824f28a7233b which fixed some cases (like mentioned tune-xscale and tune-arm926ejs) where both had unused TUNE_CCARGS when common DEFAULTTUNE was used. with cortexa[89] it's different, because cortexa9 has one extra TUNE_CCARGS TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "cortexa9", "-mtune=cortex-a9", "", d)}" which adds extra *space* even when not used because of '+=' and as result: $ bitbake-diffsigs tmp-eglibc/sstate-diff/1366797730/*/armv7*/adapterbase/*do_configure* basehash changed from f986789fb8fb3579ed6a3492cc8a8d10 to c851b5f838d945ee13072e9ad6725dca Variable TUNE_CCARGS value changed from ' -march=armv7-a -mthumb-interwork -mfloat-abi=softfp -mfpu=neon ' to ' -march=armv7-a -mthumb-interwork -mfloat-abi=softfp -mfpu=neon ' Hash for dependent task gcc-runtime_4.7.bb.do_populate_sysroot changed from bdeabf7a86958b9110b566344b7916de to 2be5618e6bc8c57ec9db5659bf217915 Hash for dependent task eglibc_2.17.bb.do_populate_sysroot changed from b4f40fc62dde684acd0a574532a55360 to 97fcb426603d4a1c1099c0504d2ebf7d Hash for dependent task glib-2.0_2.34.3.bb.do_populate_sysroot changed from fd2f90b83098c34e88d649d70f6ea4f5 to ebd740bb94ea3eb0a914efda6fc82c4a (From OE-Core rev: b7430ff83760ac29079d20dc7c62f498a0a9d55d) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
34 lines
1.7 KiB
PHP
34 lines
1.7 KiB
PHP
DEFAULTTUNE ?= "armv4"
|
|
|
|
TUNEVALID[armv4] = "Enable instructions for ARMv4"
|
|
TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "armv4", " -march=armv4${ARMPKGSFX_THUMB}", "", d)}"
|
|
# enable --fix-v4bx when we have armv4 in TUNE_FEATURES, but then disable it when we have also armv5 or thumb
|
|
# maybe we should extend bb.utils.contains to support check for any checkvalues in value, now it does
|
|
# checkvalues.issubset(val) which cannot be used for negative test of foo neither bar in value
|
|
FIX_V4BX_ARMV4 = "${@bb.utils.contains("TUNE_FEATURES", "armv4", "--fix-v4bx", "", d)}"
|
|
FIX_V4BX_ARMV5 = "${@bb.utils.contains("TUNE_FEATURES", "armv5", "", "${FIX_V4BX_ARMV4}", d)}"
|
|
FIX_V4BX = "${@bb.utils.contains("TUNE_FEATURES", "thumb", "", "${FIX_V4BX_ARMV5}", d)}"
|
|
TARGET_LD_KERNEL_ARCH += "${FIX_V4BX}"
|
|
MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "armv4", "armv4:", "" ,d)}"
|
|
|
|
require conf/machine/include/arm/arch-arm.inc
|
|
require conf/machine/include/arm/feature-arm-thumb.inc
|
|
|
|
# Little Endian
|
|
AVAILTUNES += "armv4 armv4t"
|
|
ARMPKGARCH_tune-armv4 ?= "armv4"
|
|
ARMPKGARCH_tune-armv4t ?= "armv4"
|
|
TUNE_FEATURES_tune-armv4 ?= "armv4"
|
|
TUNE_FEATURES_tune-armv4t ?= "${TUNE_FEATURES_tune-armv4} thumb"
|
|
PACKAGE_EXTRA_ARCHS_tune-armv4 = "arm armv4"
|
|
PACKAGE_EXTRA_ARCHS_tune-armv4t = "${PACKAGE_EXTRA_ARCHS_tune-armv4} armv4t"
|
|
|
|
# Big Endian
|
|
AVAILTUNES += "armv4b armv4tb"
|
|
ARMPKGARCH_tune-armv4b ?= "armv4"
|
|
ARMPKGARCH_tune-armv4tb ?= "armv4"
|
|
TUNE_FEATURES_tune-armv4b ?= "${TUNE_FEATURES_tune-armv4} bigendian"
|
|
TUNE_FEATURES_tune-armv4tb ?= "${TUNE_FEATURES_tune-armv4t} bigendian"
|
|
PACKAGE_EXTRA_ARCHS_tune-armv4b = "armeb armv4b"
|
|
PACKAGE_EXTRA_ARCHS_tune-armv4tb = "${PACKAGE_EXTRA_ARCHS_tune-armv4b} armv4tb"
|