aboutsummaryrefslogtreecommitdiff
path: root/scripts/build_rpm.sh
diff options
context:
space:
mode:
authorRuben Beltran del Rio <jj@r.bdr.sh>2026-03-23 20:52:55 +0100
committerRubén Beltrán del Río <jj@r.bdr.sh>2026-04-05 21:21:51 +0200
commitd9245d341ed1f258a3dd1073cdfa656115c5b26d (patch)
tree17145053f56cd7a3c99377583b8b3a738931422d /scripts/build_rpm.sh
parent462d1458c0058ba9d41d6dc7538f6004b3de3c3e (diff)
Adapt rest of packaging to use mesonmeson
Diffstat (limited to 'scripts/build_rpm.sh')
-rwxr-xr-xscripts/build_rpm.sh36
1 files changed, 36 insertions, 0 deletions
diff --git a/scripts/build_rpm.sh b/scripts/build_rpm.sh
new file mode 100755
index 0000000..efffef3
--- /dev/null
+++ b/scripts/build_rpm.sh
@@ -0,0 +1,36 @@
+#!/usr/bin/env bash
+
+set -euo pipefail
+
+container_image_prefix=$1
+distro=$2
+app_name=$3
+arch=$4
+channel=$5
+
+version=`just version`
+staging="$(mktemp -d)"
+
+just dist
+cp _build/meson-dist/map-${version}.tar.xz "${staging}/"
+
+just vendor "${staging}/vendor"
+tar -cJf "${staging}/map-${version}-vendor.tar.xz" -C "${staging}" vendor
+rm -rf "${staging}/vendor"
+
+cp build-aux/rpm/map.spec "${staging}/"
+
+podman run --rm -v "${staging}:/build:Z" \
+ ${container_image_prefix}:${distro} \
+ bash -c "
+ mkdir -p ~/rpmbuild/{SOURCES,SPECS}
+ cp /build/map-*.tar.xz ~/rpmbuild/SOURCES/
+ cp /build/map.spec ~/rpmbuild/SPECS/
+ rpmbuild -bb ~/rpmbuild/SPECS/map.spec
+ mkdir -p /build/out
+ cp ~/rpmbuild/RPMS/${arch}/map-${version}-1.*.rpm /build/out/
+ "
+
+mkdir -p dist
+cp ${staging}/out/*.rpm "dist/${app_name}-${arch}-${channel}-${distro}.rpm"
+rm -rf "${staging}"