1 changed files with 27 additions and 15 deletions
@ -1,26 +1,38 @@ |
|||||
#!/bin/sh |
#!/bin/bash |
||||
|
|
||||
set -Eeuo pipefail |
set -Eeuo pipefail |
||||
|
|
||||
mkdir -p RPMS SRPMS BUILD BUILDROOT |
mkdir -p RPMS SRPMS BUILD BUILDROOT |
||||
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" EXIT |
||||
|
|
||||
function build_pkg () { |
# List of available builders: ls -1 /etc/mock |
||||
spectool -g -R SPECS/$1.spec |
builder="${BUILDER:-centos-8-x86_64}" |
||||
rpmbuild -bs SPECS/$1.spec |
echo "Using builder image $builder..." |
||||
mock --enable-network -r centos-8-x86_64 --resultdir=$tmp_dir SRPMS/$(ls -1ct SRPMS | head -n1) |
|
||||
} |
|
||||
|
|
||||
# TODO: rewrite this! |
|
||||
|
|
||||
if [ $# -gt 0 ]; then |
function build_pkgs () { |
||||
|
source_rpms=() |
||||
for pkg; do |
for pkg; do |
||||
build_pkg $pkg |
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)" |
||||
|
echo "Successfully generated $source_rpm!" |
||||
|
source_rpms+=("$source_rpm") |
||||
done |
done |
||||
cp $tmp_dir/*.x86_64.rpm RPMS/x86_64/ |
echo "Compiling ${source_rpms[@]}..." |
||||
|
#debug_opts="-nN" |
||||
|
debug_opts="" |
||||
|
mock --enable-network -r "$builder" --resultdir=$tmp_dir $debug_opts "${source_rpms[@]}" |
||||
|
} |
||||
|
|
||||
|
if [ $# -gt 0 ]; then |
||||
|
build_pkgs "$@" |
||||
else |
else |
||||
for spec in SPECS/*.spec; do |
build_pkgs SPECS/*.spec |
||||
build_pkg $(basename $spec .spec) |
|
||||
done |
|
||||
fi |
fi |
||||
|
|
||||
|
rm -f "$tmp_dir/*.src.rpm" "$tmp_dir/*.log" |
||||
|
mv $tmp_dir/*.rpm RPMS/x86_64/ |
||||
|
|||||
Loading…
Reference in new issue