From 4b751ba2557d2e3f448f92589ee0c9d5e30f6388 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sat, 17 Nov 2007 23:21:03 +0000 Subject: classes: Sync staging layout cleanups from Poky --- classes/base.bbclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'classes/base.bbclass') diff --git a/classes/base.bbclass b/classes/base.bbclass index c504f78283..06a49814d2 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -684,8 +684,8 @@ base_do_stage () { : } -do_populate_staging[dirs] = "${STAGING_DIR_TARGET}/bin ${STAGING_DIR_TARGET}/lib \ - ${STAGING_DIR_TARGET}/include \ +do_populate_staging[dirs] = "${STAGING_DIR_TARGET}/${layout_bindir} ${STAGING_DIR_TARGET}/${layout_libdir} \ + ${STAGING_DIR_TARGET}/${layout_includedir} \ ${STAGING_BINDIR_NATIVE} ${STAGING_LIBDIR_NATIVE} \ ${STAGING_INCDIR_NATIVE} \ ${STAGING_DATADIR} \ -- cgit v1.2.3 From 22d8e49c3956522d7dba6e885c7ca04f06aea97c Mon Sep 17 00:00:00 2001 From: Cliff Brake Date: Fri, 30 Nov 2007 13:54:20 +0000 Subject: base.bbclass: add buildall task from Poky Suggested by Richard as a way to force ipk's of dependencies to get build when building a package. This is handy if your are building a package for a feed that does not get installed in an image. --- classes/base.bbclass | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'classes/base.bbclass') diff --git a/classes/base.bbclass b/classes/base.bbclass index 06a49814d2..1794382699 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -508,6 +508,13 @@ base_do_fetchall() { : } +addtask buildall after do_build +do_buildall[recrdeptask] = "do_build" +base_do_buildall() { + : +} + + def oe_unpack_file(file, data, url = None): import bb, os if not url: -- cgit v1.2.3 From c68559d0bf023bae14033ae60d7dffaf1bc4afb6 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sat, 1 Dec 2007 18:24:01 +0000 Subject: base.bbclass: Improve pkgdata handling functions so all PACKAGE_ARCHS are searched (in order) when locating package data. This fixes handling of packages with split package archs like sysvinit. (from poky) --- classes/base.bbclass | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) (limited to 'classes/base.bbclass') diff --git a/classes/base.bbclass b/classes/base.bbclass index 1794382699..7526dff65e 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -315,7 +315,9 @@ oe_libinstall() { # stop libtool using the final directory name for libraries # in staging: __runcmd rm -f $destpath/$libname.la - __runcmd sed -e 's/^installed=yes$/installed=no/' -e '/^dependency_libs=/s,${WORKDIR}[[:alnum:]/\._+-]*/\([[:alnum:]\._+-]*\),${STAGING_LIBDIR}/\1,g' $dotlai >$destpath/$libname.la + __runcmd sed -e 's/^installed=yes$/installed=no/' \ + -e '/^dependency_libs=/s,${WORKDIR}[[:alnum:]/\._+-]*/\([[:alnum:]\._+-]*\),${STAGING_LIBDIR}/\1,g' \ + $dotlai >$destpath/$libname.la else __runcmd install -m 0644 $dotlai $destpath/$libname.la fi @@ -702,7 +704,7 @@ do_populate_staging[dirs] = "${STAGING_DIR_TARGET}/${layout_bindir} ${STAGING_DI addtask populate_staging after do_install python do_populate_staging () { - bb.build.exec_func('do_stage', d) + bb.build.exec_func('do_stage', d) } addtask install after do_compile @@ -744,7 +746,7 @@ def explode_deps(s): def packaged(pkg, d): import os, bb - return os.access(bb.data.expand('${PKGDATA_DIR}/runtime/%s.packaged' % pkg, d), os.R_OK) + return os.access(get_subpkgedata_fn(pkg, d) + '.packaged', os.R_OK) def read_pkgdatafile(fn): pkgdata = {} @@ -768,16 +770,23 @@ def read_pkgdatafile(fn): return pkgdata +def get_subpkgedata_fn(pkg, d): + import bb, os + archs = bb.data.expand("${PACKAGE_ARCHS}", d).split(" ") + archs.reverse() + for arch in archs: + fn = bb.data.expand('${STAGING_DIR}/pkgdata/' + arch + '${TARGET_VENDOR}-${TARGET_OS}/runtime/%s' % pkg, d) + if os.path.exists(fn): + return fn + return bb.data.expand('${PKGDATA_DIR}/runtime/%s' % pkg, d) + def has_subpkgdata(pkg, d): import bb, os - fn = bb.data.expand('${PKGDATA_DIR}/runtime/%s' % pkg, d) - return os.access(fn, os.R_OK) + return os.access(get_subpkgedata_fn(pkg, d), os.R_OK) def read_subpkgdata(pkg, d): import bb, os - fn = bb.data.expand('${PKGDATA_DIR}/runtime/%s' % pkg, d) - return read_pkgdatafile(fn) - + return read_pkgdatafile(get_subpkgedata_fn(pkg, d)) def has_pkgdata(pn, d): import bb, os -- cgit v1.2.3