diff options
-rw-r--r-- | build/conf/local.conf.sample | 2 | ||||
-rw-r--r-- | meta/classes/packaged-staging.bbclass | 24 | ||||
-rw-r--r-- | meta/conf/bitbake.conf | 1 |
3 files changed, 15 insertions, 12 deletions
diff --git a/build/conf/local.conf.sample b/build/conf/local.conf.sample index fea0a1828a..149c73d664 100644 --- a/build/conf/local.conf.sample +++ b/build/conf/local.conf.sample | |||
@@ -1,5 +1,7 @@ | |||
1 | # Where to cache the files Poky downloads | 1 | # Where to cache the files Poky downloads |
2 | DL_DIR ?= "${OEROOT}/sources" | 2 | DL_DIR ?= "${OEROOT}/sources" |
3 | # Where to cache Poky's built staging output | ||
4 | PSTAGE_DIR ?= "${OEROOT}/pstage" | ||
3 | BBFILES += "\ | 5 | BBFILES += "\ |
4 | ${OEROOT}/meta/packages/*/*.bb \ | 6 | ${OEROOT}/meta/packages/*/*.bb \ |
5 | ${OEROOT}/meta-moblin/packages/*/*.bb" | 7 | ${OEROOT}/meta-moblin/packages/*/*.bb" |
diff --git a/meta/classes/packaged-staging.bbclass b/meta/classes/packaged-staging.bbclass index cdee42256e..74855c4ab3 100644 --- a/meta/classes/packaged-staging.bbclass +++ b/meta/classes/packaged-staging.bbclass | |||
@@ -17,7 +17,8 @@ PSTAGE_EXTRAPATH ?= "" | |||
17 | PSTAGE_PKGPATH = "${DISTRO}/${OELAYOUT_ABI}${PSTAGE_EXTRAPATH}" | 17 | PSTAGE_PKGPATH = "${DISTRO}/${OELAYOUT_ABI}${PSTAGE_EXTRAPATH}" |
18 | PSTAGE_PKGPN = "${@bb.data.expand('staging-${PN}-${MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}', d).replace('_', '-')}" | 18 | PSTAGE_PKGPN = "${@bb.data.expand('staging-${PN}-${MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}', d).replace('_', '-')}" |
19 | PSTAGE_PKGNAME = "${PSTAGE_PKGPN}_${PSTAGE_PKGVERSION}_${PSTAGE_PKGARCH}.ipk" | 19 | PSTAGE_PKGNAME = "${PSTAGE_PKGPN}_${PSTAGE_PKGVERSION}_${PSTAGE_PKGARCH}.ipk" |
20 | PSTAGE_PKG = "${DEPLOY_DIR_PSTAGE}/${PSTAGE_PKGPATH}/${PSTAGE_PKGNAME}" | 20 | PSTAGE_PKG = "${PSTAGE_DIR}/${PSTAGE_PKGPATH}/${PSTAGE_PKGNAME}" |
21 | PSTAGE_WORKDIR = "${TMPDIR}/pstage" | ||
21 | 22 | ||
22 | PSTAGE_NATIVEDEPENDS = "\ | 23 | PSTAGE_NATIVEDEPENDS = "\ |
23 | shasum-native \ | 24 | shasum-native \ |
@@ -69,8 +70,7 @@ python () { | |||
69 | bb.data.setVar("PSTAGING_ACTIVE", "0", d) | 70 | bb.data.setVar("PSTAGING_ACTIVE", "0", d) |
70 | } | 71 | } |
71 | 72 | ||
72 | DEPLOY_DIR_PSTAGE ?= "${DEPLOY_DIR}/pstage" | 73 | PSTAGE_MACHCONFIG = "${PSTAGE_WORKDIR}/opkg.conf" |
73 | PSTAGE_MACHCONFIG = "${DEPLOY_DIR_PSTAGE}/opkg.conf" | ||
74 | 74 | ||
75 | PSTAGE_PKGMANAGER = "stage-manager-ipkg" | 75 | PSTAGE_PKGMANAGER = "stage-manager-ipkg" |
76 | 76 | ||
@@ -141,7 +141,7 @@ do_clean_prepend() { | |||
141 | staging_helper () { | 141 | staging_helper () { |
142 | # Assemble appropriate opkg.conf | 142 | # Assemble appropriate opkg.conf |
143 | conffile=${PSTAGE_MACHCONFIG} | 143 | conffile=${PSTAGE_MACHCONFIG} |
144 | mkdir -p ${DEPLOY_DIR_PSTAGE}/pstaging_lists | 144 | mkdir -p ${PSTAGE_WORKDIR}/pstaging_lists |
145 | if [ ! -e $conffile ]; then | 145 | if [ ! -e $conffile ]; then |
146 | ipkgarchs="${BUILD_SYS}" | 146 | ipkgarchs="${BUILD_SYS}" |
147 | priority=1 | 147 | priority=1 |
@@ -263,24 +263,24 @@ python packagedstage_stampfixing_eventhandler() { | |||
263 | 263 | ||
264 | populate_sysroot_preamble () { | 264 | populate_sysroot_preamble () { |
265 | if [ "$PSTAGING_ACTIVE" = "1" ]; then | 265 | if [ "$PSTAGING_ACTIVE" = "1" ]; then |
266 | stage-manager -p ${STAGING_DIR} -c ${DEPLOY_DIR_PSTAGE}/stamp-cache-staging -u || true | 266 | stage-manager -p ${STAGING_DIR} -c ${PSTAGE_WORKDIR}/stamp-cache-staging -u || true |
267 | stage-manager -p ${CROSS_DIR} -c ${DEPLOY_DIR_PSTAGE}/stamp-cache-cross -u || true | 267 | stage-manager -p ${CROSS_DIR} -c ${PSTAGE_WORKDIR}/stamp-cache-cross -u || true |
268 | fi | 268 | fi |
269 | } | 269 | } |
270 | 270 | ||
271 | populate_sysroot_postamble () { | 271 | populate_sysroot_postamble () { |
272 | if [ "$PSTAGING_ACTIVE" = "1" ]; then | 272 | if [ "$PSTAGING_ACTIVE" = "1" ]; then |
273 | # list the packages currently installed in staging | 273 | # list the packages currently installed in staging |
274 | # ${PSTAGE_LIST_CMD} | awk '{print $1}' > ${DEPLOY_DIR_PSTAGE}/installed-list | 274 | # ${PSTAGE_LIST_CMD} | awk '{print $1}' > ${PSTAGE_WORKDIR}/installed-list |
275 | 275 | ||
276 | # exitcode == 5 is ok, it means the files change | 276 | # exitcode == 5 is ok, it means the files change |
277 | set +e | 277 | set +e |
278 | stage-manager -p ${STAGING_DIR} -c ${DEPLOY_DIR_PSTAGE}/stamp-cache-staging -u -d ${PSTAGE_TMPDIR_STAGE}/sysroots | 278 | stage-manager -p ${STAGING_DIR} -c ${PSTAGE_WORKDIR}/stamp-cache-staging -u -d ${PSTAGE_TMPDIR_STAGE}/sysroots |
279 | exitcode=$? | 279 | exitcode=$? |
280 | if [ "$exitcode" != "5" -a "$exitcode" != "0" ]; then | 280 | if [ "$exitcode" != "5" -a "$exitcode" != "0" ]; then |
281 | exit $exitcode | 281 | exit $exitcode |
282 | fi | 282 | fi |
283 | stage-manager -p ${CROSS_DIR} -c ${DEPLOY_DIR_PSTAGE}/stamp-cache-cross -u -d ${PSTAGE_TMPDIR_STAGE}/cross/${BASE_PACKAGE_ARCH} | 283 | stage-manager -p ${CROSS_DIR} -c ${PSTAGE_WORKDIR}/stamp-cache-cross -u -d ${PSTAGE_TMPDIR_STAGE}/cross/${BASE_PACKAGE_ARCH} |
284 | if [ "$exitcode" != "5" -a "$exitcode" != "0" ]; then | 284 | if [ "$exitcode" != "5" -a "$exitcode" != "0" ]; then |
285 | exit $exitcode | 285 | exit $exitcode |
286 | fi | 286 | fi |
@@ -297,7 +297,7 @@ packagedstaging_fastpath () { | |||
297 | fi | 297 | fi |
298 | } | 298 | } |
299 | 299 | ||
300 | do_populate_sysroot[dirs] =+ "${DEPLOY_DIR_PSTAGE}" | 300 | do_populate_sysroot[dirs] =+ "${PSTAGE_DIR}" |
301 | python populate_sysroot_prehook() { | 301 | python populate_sysroot_prehook() { |
302 | bb.build.exec_func("populate_sysroot_preamble", d) | 302 | bb.build.exec_func("populate_sysroot_preamble", d) |
303 | } | 303 | } |
@@ -310,7 +310,7 @@ python populate_sysroot_posthook() { | |||
310 | staging_packager () { | 310 | staging_packager () { |
311 | 311 | ||
312 | mkdir -p ${PSTAGE_TMPDIR_STAGE}/CONTROL | 312 | mkdir -p ${PSTAGE_TMPDIR_STAGE}/CONTROL |
313 | mkdir -p ${DEPLOY_DIR_PSTAGE}/${PSTAGE_PKGPATH} | 313 | mkdir -p ${PSTAGE_DIR}/${PSTAGE_PKGPATH} |
314 | 314 | ||
315 | echo "Package: ${PSTAGE_PKGPN}" > ${PSTAGE_TMPDIR_STAGE}/CONTROL/control | 315 | echo "Package: ${PSTAGE_PKGPN}" > ${PSTAGE_TMPDIR_STAGE}/CONTROL/control |
316 | echo "Version: ${PSTAGE_PKGVERSION}" >> ${PSTAGE_TMPDIR_STAGE}/CONTROL/control | 316 | echo "Version: ${PSTAGE_PKGVERSION}" >> ${PSTAGE_TMPDIR_STAGE}/CONTROL/control |
@@ -335,7 +335,7 @@ staging_packager () { | |||
335 | sed -i -e s:${STAGING_DIR}:FIXMESTAGINGDIR:g $i | 335 | sed -i -e s:${STAGING_DIR}:FIXMESTAGINGDIR:g $i |
336 | done | 336 | done |
337 | 337 | ||
338 | ${PSTAGE_BUILD_CMD} ${PSTAGE_TMPDIR_STAGE} ${DEPLOY_DIR_PSTAGE}/${PSTAGE_PKGPATH} | 338 | ${PSTAGE_BUILD_CMD} ${PSTAGE_TMPDIR_STAGE} ${PSTAGE_DIR}/${PSTAGE_PKGPATH} |
339 | } | 339 | } |
340 | 340 | ||
341 | staging_package_installer () { | 341 | staging_package_installer () { |
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index 37b428905a..2e8af0ab50 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf | |||
@@ -616,6 +616,7 @@ require conf/abi_version.conf | |||
616 | ################################################################## | 616 | ################################################################## |
617 | 617 | ||
618 | DL_DIR ?= "${TMPDIR}/downloads" | 618 | DL_DIR ?= "${TMPDIR}/downloads" |
619 | PSTAGE_DIR ?= "${TMPDIR}/pstage" | ||
619 | IMAGE_FSTYPES ?= "tar.gz" | 620 | IMAGE_FSTYPES ?= "tar.gz" |
620 | PCMCIA_MANAGER ?= "pcmcia-cs" | 621 | PCMCIA_MANAGER ?= "pcmcia-cs" |
621 | DEFAULT_TASK_PROVIDER ?= "task-base" | 622 | DEFAULT_TASK_PROVIDER ?= "task-base" |