[OE-core] [PATCH][RFC] base.bbclass: Introduce EXTRA_CONF_PACKAGECONFIG variable
Martin Jansa
martin.jansa at gmail.com
Sat Feb 27 22:09:47 UTC 2016
* add separate variable for configuration options generated from
PACKAGECONFIG setting, this helps other bbclasses and recipes
to take advantage of PACKAGECONFIG mechanism, without including
other options from EXTRA_OECONF
* e.g. meta-qt5 recipes are abusing EXTRA_OECONF to get options
from PACKAGECONFIG:
EXTRA_QMAKEVARS_PRE +=
but with
conf/distro/include/no-static-libs.inc
it means getting --disable-static as invalid option inside
EXTRA_QMAKEVARS_PRE as reported by Alexandre Belloni who tried
to use poky with meta-qt5.
* once we migrate all bbclasses and recipes to EXTRA_CONF_PACKAGECONFIG
we should also restrict EXTRA_OECONF append only to autotools.bbclass
like I did for cmake.bbclass
Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
---
meta/classes/base.bbclass | 9 ++++++---
meta/classes/cmake.bbclass | 2 ++
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 1372f38..6e94995 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -428,9 +428,12 @@ python () {
extraconf.append(items[1])
appendVar('DEPENDS', extradeps)
appendVar('RDEPENDS_${PN}', extrardeps)
- if bb.data.inherits_class('cmake', d):
- appendVar('EXTRA_OECMAKE', extraconf)
- else:
+ appendVar('EXTRA_CONF_PACKAGECONFIG', extraconf)
+
+ # TODO once are all recipes/bbclass abusign EXTRA_OECONF
+ # to get PACKAGECONFIG options fixed to use EXTRA_CONF_PACKAGECONFIG
+ # move this append to autotools.bbclass
+ if not bb.data.inherits_class('cmake', d):
appendVar('EXTRA_OECONF', extraconf)
pn = d.getVar('PN', True)
diff --git a/meta/classes/cmake.bbclass b/meta/classes/cmake.bbclass
index 22cd61e..122718e 100644
--- a/meta/classes/cmake.bbclass
+++ b/meta/classes/cmake.bbclass
@@ -27,6 +27,8 @@ OECMAKE_EXTRA_ROOT_PATH ?= ""
OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "ONLY"
OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM_class-native = "BOTH"
+EXTRA_OECMAKE_append = " ${EXTRA_CONF_PACKAGECONFIG}"
+
# CMake expects target architectures in the format of uname(2),
# which do not always match TARGET_ARCH, so all the necessary
# conversions should happen here.
--
2.7.1
More information about the Openembedded-core
mailing list