[oe-commits] org.oe.packaged-staging classes/packaged-staging.bbclass: use stage-manager helper script to manage moving around staging/ and cross/
rpurdie commit
openembedded-commits at lists.openembedded.org
Mon Oct 2 09:41:10 UTC 2006
classes/packaged-staging.bbclass: use stage-manager helper script to manage moving around staging/ and cross/
Author: rpurdie at rpsys.net
Branch: org.openembedded.packaged-staging
Revision: 986d9bc3bcbf18d7890f3892aaad433e9f808fa2
ViewMTN: http://monotone.openembedded.org/revision.psp?id=986d9bc3bcbf18d7890f3892aaad433e9f808fa2
Files:
1
classes/packaged-staging.bbclass
Diffs:
#
# mt diff -r397db3df54500e41ea6b07cc3ac1f60a34488918 -r986d9bc3bcbf18d7890f3892aaad433e9f808fa2
#
#
#
# patch "classes/packaged-staging.bbclass"
# from [deac2e8db37baf61e012f3677a30573e76d949e5]
# to [53655f4ce0e43ac810babf1910082d1899b3148f]
#
============================================================
--- classes/packaged-staging.bbclass deac2e8db37baf61e012f3677a30573e76d949e5
+++ classes/packaged-staging.bbclass 53655f4ce0e43ac810babf1910082d1899b3148f
@@ -36,6 +36,9 @@ SPAWNIPK = ${spawn}
SPAWNFILE = "${STAGING_DIR}/pkgmaps/${P}-${PR}.spawn"
SPAWNIPK = ${spawn}
+PSTAGE_TMPDIR_STAGE = ${TMPDIR}/tmp-staging
+PSTAGE_TMPDIR_CROSS = ${TMPDIR}/tmp-cross
+
STAGING_BASEDIR = "${STAGING_LIBDIR}/.."
PACKAGEFUNCS += "do_write_ipk_list"
@@ -85,20 +88,10 @@ do_stage_prepend() {
do_stage_prepend() {
-#detect aborted staging attempts
-if [ -e ${TMPDIR}/moved-staging ]; then
- oenote "Detected a moved staging, moving it back"
- rm -rf ${STAGING_DIR} && mv ${TMPDIR}/pstage ${STAGING_DIR} && rm ${TMPDIR}/moved-staging
-fi
+stage-manager -p ${STAGING_DIR} -c ${DEPLOY_DIR_PSTAGE}/staging-stamp-cache -u
-#detect aborted staging attempts into cross/
-if [ -e ${TMPDIR}/moved-cross ]; then
- oenote "Detected a moved cross/, moving it back"
- rm -rf ${CROSS_DIR} && mv ${TMPDIR}/pcross ${CROSS_DIR} && rm ${TMPDIR}/moved-cross
-fi
+stage-manager -p ${CROSS_DIR} -c ${DEPLOY_DIR_PSTAGE}/cross-stamp-cache -u
-
-
if [ ! -e ${STAGING_BASEDIR} ]; then
mkdir -p ${STAGING_BASEDIR}
fi
@@ -166,14 +159,7 @@ if [ ${PN} != "glibc-intermediate" ] ; t
exit 0
fi
- touch ${TMPDIR}/moved-staging
- mv ${STAGING_DIR} ${TMPDIR}/pstage
- if [ -e ${CROSS_DIR} ]; then
- mv ${CROSS_DIR} ${TMPDIR}/pcross
- touch ${TMPDIR}/moved-cross
- fi
-
mkdir -p ${STAGING_BINDIR}
mkdir -p ${STAGING_LIBDIR}
mkdir -p ${STAGING_INCDIR}
@@ -189,56 +175,62 @@ ${PSTAGE_LIST_CMD} ${STAGING_BASEDIR} |
# list the packages currently installed in staging
${PSTAGE_LIST_CMD} ${STAGING_BASEDIR} | awk '{print $1}' > ${DEPLOY_DIR_PSTAGE}/installed-staging_list
-${PSTAGE_LIST_CMD} ${CROSSDIR} | awk '{print $1}' > ${DEPLOY_DIR_PSTAGE}/installed-cross_list
+${PSTAGE_LIST_CMD} ${CROSS_DIR} | awk '{print $1}' > ${DEPLOY_DIR_PSTAGE}/installed-cross_list
+if [ ${PN} != "glibc-intermediate" ] ; then
-if [ ${PN} != "glibc-intermediate" ] ; then
+ set +e
+ rm -rf ${PSTAGE_TMPDIR_STAGE}
+ stage-manager -p ${STAGING_DIR} -c ${DEPLOY_DIR_PSTAGE}/staging-stamp-cache -u -d ${PSTAGE_TMPDIR_STAGE}
+ rc=$?
+ set -e
- #make a package for staging
- mkdir -p ${STAGING_DIR}/CONTROL
+ if [ $rc == 5 ]; then
- echo "Package: staging-${PN}" > ${STAGING_DIR}/CONTROL/control
- echo "Version: ${PV}-${PR}" >> ${STAGING_DIR}/CONTROL/control
- echo "Description: ${DESCRIPTION}" >> ${STAGING_DIR}/CONTROL/control
- echo "Section: ${SECTION}" >> ${STAGING_DIR}/CONTROL/control
- echo "Priority: Optional" >> ${STAGING_DIR}/CONTROL/control
- echo "Maintainer: ${MAINTAINER}" >> ${STAGING_DIR}/CONTROL/control
- echo "Architecture: ${PACKAGE_ARCH}" >> ${STAGING_DIR}/CONTROL/control
- echo "Source: ${SRC_URI}" >> ${STAGING_DIR}/CONTROL/control
+ echo $?
+ echo "Trying Cross"
+ #make a package for staging
+ mkdir -p ${PSTAGE_TMPDIR_STAGE}/CONTROL
- ${PSTAGE_BUILD_CMD} ${STAGING_DIR} ${DEPLOY_DIR_PSTAGE}
- rm -rf ${STAGING_DIR}
+ echo "Package: staging-${PN}" > ${PSTAGE_TMPDIR_STAGE}/CONTROL/control
+ echo "Version: ${PV}-${PR}" >> ${PSTAGE_TMPDIR_STAGE}/CONTROL/control
+ echo "Description: ${DESCRIPTION}" >> ${PSTAGE_TMPDIR_STAGE}/CONTROL/control
+ echo "Section: ${SECTION}" >> ${PSTAGE_TMPDIR_STAGE}/CONTROL/control
+ echo "Priority: Optional" >> ${PSTAGE_TMPDIR_STAGE}/CONTROL/control
+ echo "Maintainer: ${MAINTAINER}" >> ${PSTAGE_TMPDIR_STAGE}/CONTROL/control
+ echo "Architecture: ${PACKAGE_ARCH}" >> ${PSTAGE_TMPDIR_STAGE}/CONTROL/control
+ echo "Source: ${SRC_URI}" >> ${PSTAGE_TMPDIR_STAGE}/CONTROL/control
+ ${PSTAGE_BUILD_CMD} ${PSTAGE_TMPDIR_STAGE} ${DEPLOY_DIR_PSTAGE}
- #make a package for cross
- if [ -e ${CROSS_DIR} ] ; then
- mkdir -p ${CROSS_DIR}/CONTROL
+ ${PSTAGE_INSTALL_CMD} ${STAGING_DIR} ${DEPLOY_DIR_PSTAGE}/${PSTAGE_PKGNAME}
+ fi
- echo "Package: cross-${PN}" > ${CROSS_DIR}/CONTROL/control
- echo "Version: ${PV}-${PR}" >> ${CROSS_DIR}/CONTROL/control
- echo "Description: ${DESCRIPTION}" >> ${CROSS_DIR}/CONTROL/control
- echo "Section: ${SECTION}" >> ${CROSS_DIR}/CONTROL/control
- echo "Priority: Optional" >> ${CROSS_DIR}/CONTROL/control
- echo "Maintainer: ${MAINTAINER}" >> ${CROSS_DIR}/CONTROL/control
- echo "Architecture: ${BUILD_ARCH}" >> ${CROSS_DIR}/CONTROL/control
- echo "Source: ${SRC_URI}" >> ${CROSS_DIR}/CONTROL/control
-
- ${PSTAGE_BUILD_CMD} ${CROSS_DIR} ${DEPLOY_DIR_PSTAGE}
+ set +e
+ rm -rf ${PSTAGE_TMPDIR_CROSS}
+ stage-manager -p ${CROSS_DIR} -c ${DEPLOY_DIR_PSTAGE}/cross-stamp-cache -u -d ${PSTAGE_TMPDIR_CROSS}
+ rc=$?
+ set -e
- ${PSTAGE_INSTALL_CMD} ${CROSS_DIR} ${DEPLOY_DIR_PSTAGE}/${PCROSS_PKGNAME}
- fi # if -e CROSS_DIR
+ if [ $rc == 5 ]; then
- if [ -e ${TMPDIR}/moved-cross ] ; then
- rm -rf ${CROSS_DIR}
- mv ${TMPDIR}/pcross ${CROSS_DIR}
- rm ${TMPDIR}/moved-cross
- fi
+ #make a package for cross
+ mkdir -p ${PSTAGE_TMPDIR_CROSS}/CONTROL
- #move back stagingdir so we can install packages
- mv ${TMPDIR}/pstage ${STAGING_DIR}
- rm ${TMPDIR}/moved-staging
+ echo "Package: cross-${PN}" > ${PSTAGE_TMPDIR_CROSS}/CONTROL/control
+ echo "Version: ${PV}-${PR}" >> ${PSTAGE_TMPDIR_CROSS}/CONTROL/control
+ echo "Description: ${DESCRIPTION}" >> ${PSTAGE_TMPDIR_CROSS}/CONTROL/control
+ echo "Section: ${SECTION}" >> ${PSTAGE_TMPDIR_CROSS}/CONTROL/control
+ echo "Priority: Optional" >> ${PSTAGE_TMPDIR_CROSS}/CONTROL/control
+ echo "Maintainer: ${MAINTAINER}" >> ${PSTAGE_TMPDIR_CROSS}/CONTROL/control
+ echo "Architecture: ${BUILD_ARCH}" >> ${PSTAGE_TMPDIR_CROSS}/CONTROL/control
+ echo "Source: ${SRC_URI}" >> ${PSTAGE_TMPDIR_CROSS}/CONTROL/control
+
+ ${PSTAGE_BUILD_CMD} ${PSTAGE_TMPDIR_CROSS} ${DEPLOY_DIR_PSTAGE}
- ${PSTAGE_INSTALL_CMD} ${STAGING_DIR} ${DEPLOY_DIR_PSTAGE}/${PSTAGE_PKGNAME}
+ ${PSTAGE_INSTALL_CMD} ${CROSS_DIR} ${DEPLOY_DIR_PSTAGE}/${PCROSS_PKGNAME}
+ fi
+
else
oenote "Glibc-intermediate detected (again)"
fi #if !glibc-intermediate
More information about the Openembedded-commits
mailing list