|
2 | 2 |
|
3 | 3 | set -eux |
4 | 4 |
|
| 5 | +source ./pkg.env |
5 | 6 | source /etc/os-release |
| 7 | +PKG_NAME=$(basename $(pwd)) |
| 8 | +if [ "`uname -m`" = "x86_64" ]; then |
| 9 | + ARCH="amd64" |
| 10 | +else |
| 11 | + ARCH="arm64" |
| 12 | +fi |
| 13 | +PDIR="$PDIR/$ID/${VERSION_ID%.*}/${ARCH}" |
| 14 | + |
| 15 | +cd redhat |
| 16 | +sed -i -e '' * |
| 17 | +dnf -y install 'dnf-command(config-manager)' |
6 | 18 | case "$PLATFORM_ID" in |
7 | 19 | platform:el8) |
8 | | - dnf -y install 'dnf-command(config-manager)' |
9 | | - dnf config-manager --set-enabled powertools |
10 | | - dnf -y install epel-release |
| 20 | + EXTRA_REPO=powertools |
11 | 21 | ;; |
12 | 22 | platform:el*) |
13 | | - dnf -y install 'dnf-command(config-manager)' |
14 | | - dnf config-manager --set-enabled crb |
15 | | - dnf -y install epel-release |
| 23 | + EXTRA_REPO=crb |
16 | 24 | ;; |
17 | 25 | esac |
18 | | - |
19 | | -dnf -y install rpm-build dnf-utils |
20 | | - |
21 | | -export DIST_DIR=build |
22 | | - |
23 | | -cd /varnish-cache |
24 | | -source ./pkg.env |
25 | | -rm -rf $DIST_DIR |
26 | | -mkdir $DIST_DIR |
27 | | - |
28 | | - |
29 | | -echo "Untar redhat..." |
30 | | -tar xavf redhat.tar.gz -C $DIST_DIR |
31 | | - |
32 | | -echo "Untar orig..." |
33 | | -tar xavf varnish-*.tgz -C $DIST_DIR --strip 1 |
34 | | - |
35 | | -echo "Build Packages..." |
36 | | -if [ -e .is_weekly ]; then |
37 | | - WEEKLY='.weekly' |
| 26 | +dnf config-manager --set-enabled $EXTRA_REPO |
| 27 | +dnf -y install \ |
| 28 | + dnf-utils \ |
| 29 | + epel-release \ |
| 30 | + findutils \ |
| 31 | + rpm-build \ |
| 32 | + $(test -d /deps/ && find /deps/ -name '*.rpm') |
| 33 | + |
| 34 | +# Update changelog version |
| 35 | +if [ "$PKG_NAME" == "varnish" ]; then |
| 36 | + if [ -e .is_weekly ]; then |
| 37 | + WEEKLY='.weekly' |
| 38 | + else |
| 39 | + WEEKLY= |
| 40 | + fi |
| 41 | + curl -L "${VARS[${PKG_NAME}_source]}" | tar xvfz - --strip 1 |
| 42 | + VERSION=$(./configure --version | awk 'NR == 1 {print $NF}')$WEEKLY |
38 | 43 | else |
39 | | - WEEKLY= |
| 44 | + VERSION="$(pkg-config --silence-errors --modversion varnishapi)" |
40 | 45 | fi |
41 | | -VERSION=$("$DIST_DIR"/configure --version | awk 'NR == 1 {print $NF}')$WEEKLY |
42 | 46 |
|
43 | | -cp -r -L "$DIST_DIR"/redhat/* "$DIST_DIR"/ |
44 | | -tar zcf "$DIST_DIR.tgz" --exclude "$DIST_DIR/redhat" "$DIST_DIR"/ |
45 | | - |
46 | | -RPMVERSION="$VERSION" |
47 | | - |
48 | | -RESULT_DIR="rpms" |
49 | | -CUR_DIR="$(pwd)" |
50 | | - |
51 | | -rpmbuild() { |
52 | | - command rpmbuild \ |
| 47 | +mkdir -p SOURCES/ |
| 48 | +dnf builddep -y *.spec |
| 49 | +rpmbuild -bb \ |
| 50 | + --undefine=_disable_source_fetch \ |
| 51 | + --undefine=debug_package \ |
| 52 | + --undefine=_debugsource_template \ |
| 53 | + --define "_topdir $(pwd)" \ |
53 | 54 | --define "_smp_mflags -j10" \ |
54 | | - --define "_sourcedir $CUR_DIR" \ |
55 | | - --define "_srcrpmdir $CUR_DIR/${RESULT_DIR}" \ |
56 | | - --define "_rpmdir $CUR_DIR/${RESULT_DIR}" \ |
57 | | - --define "versiontag ${RPMVERSION}" \ |
| 55 | + --define "versiontag ${VERSION}" \ |
58 | 56 | --define "releasetag ${package_release}" \ |
59 | | - --define "srcname $DIST_DIR" \ |
60 | | - --define "nocheck 1" \ |
61 | | - "$@" |
62 | | -} |
63 | | - |
64 | | -dnf builddep -y "$DIST_DIR"/redhat/varnish.spec |
65 | | -rpmbuild -bs "$DIST_DIR"/redhat/varnish.spec |
66 | | -rpmbuild --rebuild "$RESULT_DIR"/varnish-*.src.rpm |
| 57 | + --define "srcurl ${VARS[${PKG_NAME}_source]}" \ |
| 58 | + --define "srcversion ${VARS[${PKG_NAME}_version]}" \ |
| 59 | + *.spec |
67 | 60 |
|
68 | | -echo "Prepare the packages for storage..." |
69 | | -mkdir -p $PDIR |
70 | | -mv rpms/*/*.rpm $PDIR |
| 61 | +# Prepare the packages for storage |
| 62 | +mv RPMS/*/*.rpm $PDIR |
0 commit comments