build: split off remove_packages() for plugin use; fixes #11

This commit is contained in:
Franco Fichtner 2015-07-18 18:47:46 +02:00
parent f2828c728c
commit 59885a97c7
4 changed files with 19 additions and 13 deletions

View File

@ -266,8 +266,6 @@ extract_packages()
echo ">>> Extracting packages in ${1}"
BASEDIR=${1}
shift
PKGLIST=${@}
rm -rf ${BASEDIR}${PACKAGESDIR}/All
mkdir -p ${BASEDIR}${PACKAGESDIR}/All
@ -276,6 +274,15 @@ extract_packages()
if [ -f "${PACKAGESET}" ]; then
tar -C ${BASEDIR}${PACKAGESDIR} -xpf ${PACKAGESET}
fi
}
remove_packages()
{
echo ">>> Removing packages in ${1}"
BASEDIR=${1}
shift
PKGLIST=${@}
for PKG in ${PKGLIST}; do
# clear out the ports that ought to be rebuilt

View File

@ -37,7 +37,8 @@ setup_base ${STAGEDIR}
setup_clone ${STAGEDIR} ${COREDIR}
setup_clone ${STAGEDIR} ${PORTSDIR}
extract_packages ${STAGEDIR} ${CORE_NAME}
extract_packages ${STAGEDIR}
remove_packages ${STAGEDIR} ${CORE_NAME}
install_packages ${STAGEDIR} git gettext-tools ${CORE_DEPS}
custom_packages ${STAGEDIR} ${COREDIR}

View File

@ -30,21 +30,19 @@ set -e
. ./common.sh && $(${SCRUB_ARGS})
PLUGINS=$(make -C ${PLUGINSDIR} list)
PLUGIN_NAMES=
for PLUGIN in ${PLUGINS}; do
PLUGIN_NAMES="${PLUGIN_NAMES} $(make -C ${PLUGINSDIR}/${PLUGIN} name)"
done
setup_stage ${STAGEDIR}
setup_base ${STAGEDIR}
setup_clone ${STAGEDIR} ${PLUGINSDIR}
extract_packages ${STAGEDIR} ${PLUGIN_NAMES}
extract_packages ${STAGEDIR}
for PLUGIN in ${PLUGINS}; do
PLUGIN_DEPENDS=$(make -C ${PLUGINSDIR}/${PLUGIN} depends)
install_packages ${STAGEDIR} ${PLUGIN_DEPENDS}
PLUGIN_NAME=$(make -C ${PLUGINSDIR}/${PLUGIN} name)
PLUGIN_DEPS=$(make -C ${PLUGINSDIR}/${PLUGIN} depends)
remove_packages ${STAGEDIR} ${PLUGIN_NAME}
install_packages ${STAGEDIR} ${PLUGIN_DEPS}
custom_packages ${STAGEDIR} ${PLUGINSDIR}/${PLUGIN}
done

View File

@ -37,8 +37,8 @@ setup_clone ${STAGEDIR} ${PORTSDIR}
setup_clone ${STAGEDIR} ${SRCDIR}
setup_chroot ${STAGEDIR}
# bootstrap the stage with the avilable set (minus args)
extract_packages ${STAGEDIR} ${@}
extract_packages ${STAGEDIR}
remove_packages ${STAGEDIR} ${@}
install_packages ${STAGEDIR}
clean_packages ${STAGEDIR}