Browse Source

update the local build script

main
Nicolas Massé 4 years ago
parent
commit
654cd81d72
  1. 59
      build.sh

59
build.sh

@ -2,37 +2,50 @@
set -Eeuo pipefail set -Eeuo pipefail
mkdir -p RPMS SRPMS BUILD BUILDROOT mkdir -p RPMS/x86_64 SRPMS BUILD BUILDROOT
BUILDER="${BUILDER:-centos-stream-8-x86_64}"
function build_pkg () {
tmp_dir="$(mktemp -d -t mock-XXXXXXXXXX)" tmp_dir="$(mktemp -d -t mock-XXXXXXXXXX)"
trap "rm -rf $tmp_dir" EXIT trap "rm -rf $tmp_dir" RETURN
# List of available builders: ls -1 /etc/mock echo "========================================================="
builder="${BUILDER:-centos-stream-8-x86_64}" echo " Building $1 on $BUILDER"
echo "Using builder image $builder..." echo "========================================================="
echo
function build_pkgs () { echo "Downloading sources and building srpm..."
source_rpms=() spectool -g -R SPECS/$1.spec
for pkg; do rpmbuild -bs SPECS/$1.spec
pkg="$(basename "$pkg")"
pkg="${pkg%.spec}"
echo "Processing $pkg..."
spectool -g -R SPECS/$pkg.spec
rpmbuild -bs SPECS/$pkg.spec
source_rpm="SRPMS/$(ls -1ct SRPMS | head -n1)" source_rpm="SRPMS/$(ls -1ct SRPMS | head -n1)"
echo "Successfully generated $source_rpm!" echo "Successfully generated $source_rpm!"
source_rpms+=("$source_rpm") echo
done
echo "Compiling ${source_rpms[@]}..." echo "Compiling..."
#debug_opts="-nN" # To debug, add "-nN"
debug_opts="" mock -r "$BUILDER" --resultdir="$tmp_dir" ${EXTRA_PARAMS:-} "$source_rpm"
mock --enable-network -r "$builder" --resultdir=$tmp_dir $debug_opts "${source_rpms[@]}" echo
echo "Cleaning up..."
rm -f $tmp_dir/*.src.rpm $tmp_dir/*.log
mv $tmp_dir/*.rpm RPMS/x86_64/
echo
}
function build_custom_pkg () {
pkg="$(basename "$spec")"
pkg="${pkg%.spec}"
(test -f "MOCKCONFIG/$pkg.cfg" && . "MOCKCONFIG/$pkg.cfg" ; build_pkg "$pkg")
} }
if [ $# -gt 0 ]; then if [ $# -gt 0 ]; then
build_pkgs "$@" for spec; do
build_custom_pkg "$spec"
done
else else
build_pkgs SPECS/*.spec for spec in SPECS/*.spec; do
build_custom_pkg "$spec"
done
fi fi
rm -f $tmp_dir/*.src.rpm $tmp_dir/*.log
mv $tmp_dir/*.rpm RPMS/x86_64/

Loading…
Cancel
Save