diff options
Diffstat (limited to 'config')
-rwxr-xr-x | config | 64 |
1 files changed, 64 insertions, 0 deletions
@@ -0,0 +1,64 @@ +#!/bin/sh + +set -e + +TPL_PKGS='build-essential' + +main() +{ + case "${1}" in + 'clean') + clean + ;; + '') + if [ -z "${PKG_TARGETS}" ]; then + PKG_TARGETS="$(cat targets.in)" + fi + for arch in ${PKG_TARGETS}; do + PKG_TARGET_ARCH="${arch}" configure_build + done + ;; + esac +} + +msg() +{ + printf 'build-essential config: ' + printf "${@}" + printf '\n' +} + +configure_build() +{ + local ss= + local name= + local pkg= + + # Generate a sed script to edit files. + ss='' + for name in TARGET_ARCH; do + ss="${ss}s&@PKG_${name}@&$(eval echo \$\{PKG_${name}\})&;" + done + + # Write metadata for <pkgbase>-<target> packages. + for pkg in ${TPL_PKGS}; do + mkdir -p "${pkg}-${PKG_TARGET_ARCH}.pkg" + sed "${ss}" "${pkg}.pkg.in/control" \ + >"${pkg}-${PKG_TARGET_ARCH}.pkg/control" + cp "${pkg}.pkg.in/docs" "${pkg}-${PKG_TARGET_ARCH}.pkg/docs" + msg 'Metadata for package "%s" generated.' \ + "${pkg}-${PKG_TARGET_ARCH}" + done +} + +clean() +{ + local pkg= + + # Remove generated metadata for <pkgbase>-<target> packages. + for pkg in ${TPL_PKGS}; do + rm -Rf "${pkg}"-*-*-*.pkg/ + done +} + +main "${@}" |