diff options
-rw-r--r-- | classes/base.bbclass | 9 | ||||
-rw-r--r-- | conf/bitbake.conf | 37 |
2 files changed, 19 insertions, 27 deletions
diff --git a/classes/base.bbclass b/classes/base.bbclass index 7f2e81f139..bc50c67d4b 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -1179,11 +1179,10 @@ def base_after_parse(d): override = bb.data.getVar('SRC_URI_OVERRIDES_PACKAGE_ARCH', d, 1) if override != '0': paths = [] - for a in [ "${MACHINE}" ] + bb.data.getVar('MACHINE_FALLBACK', d).split(): - for p in [ "${PF}", "${P}", "${PN}", "files", "" ]: - path = bb.data.expand(os.path.join("${FILE_DIRNAME}", p, a), d) - if os.path.isdir(path): - paths.append(path) + for p in [ "${PF}", "${P}", "${PN}", "files", "" ]: + path = bb.data.expand(os.path.join("${FILE_DIRNAME}", p, "${MACHINE}"), d) + if os.path.isdir(path): + paths.append(path) if len(paths) != 0: for s in srcuri.split(): if not s.startswith("file://"): diff --git a/conf/bitbake.conf b/conf/bitbake.conf index d26efe84f0..8b6956453b 100644 --- a/conf/bitbake.conf +++ b/conf/bitbake.conf @@ -615,6 +615,21 @@ BUILDCFG_VARS_append_arm = " TARGET_FPU" BUILDCFG_VARS_append_armeb = " TARGET_FPU" BUILDCFG_NEEDEDVARS ?= "TARGET_ARCH TARGET_OS" +### +### Config file processing +### + +# This means that an envionment variable named '<foo>_arm' overrides an +# environment variable '<foo>' (when ${TARGET_ARCH} is arm). And the same: an +# environment variable '<foo>_ramses' overrides both '<foo>' and '<foo>_arm +# when ${MACHINE} is 'ramses'. And finally '<foo>_local' overrides anything. +# +# This works for functions as well, they are really just environment variables. +# Default OVERRIDES to make compilation fail fast in case of build system misconfiguration. +OVERRIDES = "local:${MACHINE}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}" +# Alternative OVERRIDES definition without "fail fast", usually only for native building and Scratchbox toolchains. +#OVERRIDES = "local:${MACHINE}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}" + ################################################################## # Include the rest of the config files. ################################################################## @@ -636,28 +651,6 @@ require conf/sanity.conf require conf/abi_version.conf require conf/enterprise.conf -### -### Config file processing -### - -# A list of machines that ought to be used when looking for -# overrides. For example, geodegx and geodelx machines can have geode -# as a fallback and then avoiding duplicated content between them. -MACHINE_FALLBACK ?= "" - -MACHINE_OVERRIDES = "${@':'.join([bb.data.getVar('MACHINE', d)] + bb.data.getVar('MACHINE_FALLBACK', d).split()) or ':'}" - -# This means that an envionment variable named '<foo>_arm' overrides an -# environment variable '<foo>' (when ${TARGET_ARCH} is arm). And the same: an -# environment variable '<foo>_ramses' overrides both '<foo>' and '<foo>_arm -# when ${MACHINE} is 'ramses'. And finally '<foo>_local' overrides anything. -# -# This works for functions as well, they are really just environment variables. -# Default OVERRIDES to make compilation fail fast in case of build system misconfiguration. -OVERRIDES ?= "local:${MACHINE_OVERRIDES}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:fail-fast:pn-${PN}" -# Alternative OVERRIDES definition without "fail fast", usually only for native building and Scratchbox toolchains. -#OVERRIDES ?= "local:${MACHINE_OVERRIDES}:${DISTRO}:${TARGET_OS}:${TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}" - ################################################################## # Weak variables (usually to retain backwards compatibility) ################################################################## |