[oe-commits] Richard Purdie : binconfig/pkgconfig.bbclass: Convert staging functions into SYSROOT_PREPROCESS_FUNCS operating on SYSROOT_DESTDIR

git version control git at git.openembedded.org
Mon Nov 2 20:45:17 UTC 2009


Module: openembedded.git
Branch: rpurdie/work-in-progress
Commit: c45ce742fe07d54f127f89ce63bc12e6ee71e859
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=c45ce742fe07d54f127f89ce63bc12e6ee71e859

Author: Richard Purdie <rpurdie at linux.intel.com>
Date:   Mon Nov  2 17:30:32 2009 +0000

binconfig/pkgconfig.bbclass: Convert staging functions into SYSROOT_PREPROCESS_FUNCS operating on SYSROOT_DESTDIR

Signed-off-by: Richard Purdie <rpurdie at linux.intel.com>

---

 classes/base.bbclass      |    5 +++++
 classes/binconfig.bbclass |   10 ++++++----
 classes/pkgconfig.bbclass |    8 +++++---
 3 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/classes/base.bbclass b/classes/base.bbclass
index aca19ee..058b1e1 100644
--- a/classes/base.bbclass
+++ b/classes/base.bbclass
@@ -1077,8 +1077,13 @@ do_populate_staging[dirs] = "${STAGING_DIR_TARGET}/${bindir} ${STAGING_DIR_TARGE
 # Could be compile but populate_staging and do_install shouldn't run at the same time
 addtask populate_staging after do_install
 
+SYSROOT_PREPROCESS_FUNCS ?= ""
+SYSROOT_DESTDIR = "${WORKDIR}/sysroot-destdir/"
+
 python do_populate_staging () {
     bb.build.exec_func('do_stage', d)
+    for f in (bb.data.getVar('SYSROOT_PREPROCESS_FUNCS', d, True) or '').split():
+        bb.build.exec_func(f, d)
 }
 
 addtask install after do_compile
diff --git a/classes/binconfig.bbclass b/classes/binconfig.bbclass
index 6937452..dad54a5 100644
--- a/classes/binconfig.bbclass
+++ b/classes/binconfig.bbclass
@@ -47,11 +47,13 @@ binconfig_package_preprocess () {
 	done	    
 }
 
-do_stage_append() {
+SYSROOT_PREPROCESS_FUNCS += "binconfig_sysroot_preprocess"
+
+binconfig_sysroot_preprocess () {
 	for config in `find ${S} -name '${BINCONFIG_GLOB}'`; do
 		configname=`basename $config`
-		install -d ${STAGING_BINDIR_CROSS}
-		cat $config | sed ${@get_binconfig_mangle(d)} > ${STAGING_BINDIR_CROSS}/$configname
-		chmod u+x ${STAGING_BINDIR_CROSS}/$configname
+		install -d ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS}
+		cat $config | sed ${@get_binconfig_mangle(d)} > ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS}/$configname
+		chmod u+x ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS}/$configname
 	done
 }
diff --git a/classes/pkgconfig.bbclass b/classes/pkgconfig.bbclass
index 2a8199d..de892b5 100644
--- a/classes/pkgconfig.bbclass
+++ b/classes/pkgconfig.bbclass
@@ -9,10 +9,12 @@ for i in `find ${S}/ -name "*.pc" -type f` ; do \
         done
 }
 
-do_stage_append () {
-	install -d ${PKG_CONFIG_DIR}
+SYSROOT_PREPROCESS_FUNCS += "pkgconfig_sysroot_preprocess"
+
+pkgconfig_sysroot_preprocess () {
+	install -d ${SYSROOT_DESTDIR}${PKG_CONFIG_DIR}
 	for pc in `find ${S} -name '*.pc' -type f | grep -v -- '-uninstalled.pc$'`; do
 		pcname=`basename $pc`
-		cat $pc > ${PKG_CONFIG_DIR}/$pcname
+		cat $pc > ${SYSROOT_DESTDIR}${PKG_CONFIG_DIR}/$pcname
 	done
 }





More information about the Openembedded-commits mailing list