build/core: if arguments are given, build all of those

This commit is contained in:
Franco Fichtner 2015-07-24 10:20:05 +02:00
parent 4dac7e0762
commit b3c8fdaa9c
3 changed files with 32 additions and 9 deletions

View File

@ -132,6 +132,10 @@ the following works:
# make ports-<packagename>[,...]
Core packages (pristine copies) can be batch-built using:
# make core-<repo_branch_or_tag>[,...]
Package sets (may be signed depending on whether the key is
found under /root) ready for web server deployment are automatically
generated and modified by ports.sh and core.sh.

View File

@ -194,12 +194,20 @@ git_tag()
setup_clone()
{
echo ">>> Setting up ${2} in ${1}"
echo ">>> Setting up ${2} clone in ${1}"
# repositories may be huge so avoid the copy :)
mkdir -p ${1}${2} && mount_unionfs -o below ${2} ${1}${2}
}
setup_copy()
{
echo ">>> Setting up ${2} copy in ${1}"
# in case we want to clobber HEAD
git clone ${2} ${1}${2}
}
setup_chroot()
{
echo ">>> Setting up chroot in ${1}"

View File

@ -29,18 +29,29 @@ set -e
. ./common.sh && $(${SCRUB_ARGS})
CORE_NAME=$(make -C ${COREDIR} name)
CORE_DEPS=$(make -C ${COREDIR} depends)
setup_stage ${STAGEDIR}
setup_base ${STAGEDIR}
setup_clone ${STAGEDIR} ${COREDIR}
setup_clone ${STAGEDIR} ${PORTSDIR}
extract_packages ${STAGEDIR}
remove_packages ${STAGEDIR} ${CORE_NAME}
install_packages ${STAGEDIR} git gettext-tools ${CORE_DEPS}
if [ -z "${*}" ]; then
setup_clone ${STAGEDIR} ${COREDIR}
CORE_TAGS="bogus"
else
setup_copy ${STAGEDIR} ${COREDIR}
CORE_TAGS="${*}"
fi
custom_packages ${STAGEDIR} ${COREDIR}
extract_packages ${STAGEDIR}
for CORE_TAG in ${CORE_TAGS}; do
if [ -n "${*}" ]; then
git_update ${STAGEDIR}${COREDIR} ${CORE_TAG}
fi
CORE_NAME=$(make -C ${STAGEDIR}${COREDIR} name)
CORE_DEPS=$(make -C ${STAGEDIR}${COREDIR} depends)
remove_packages ${STAGEDIR} ${CORE_NAME}
install_packages ${STAGEDIR} git gettext-tools ${CORE_DEPS}
custom_packages ${STAGEDIR} ${COREDIR}
done
bundle_packages ${STAGEDIR}