diff --git a/.gitignore b/.gitignore index c67c8aec..d1c5237a 100644 --- a/.gitignore +++ b/.gitignore @@ -46,6 +46,7 @@ mkstream *.gcno *.gcov makeslackware.sh +makeslackdist.sh pkg/snapraid.SlackBuild pkg/snapraid.info makedeb.sh diff --git a/Makefile.am b/Makefile.am index ab84fa70..d8aaafd2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -160,6 +160,7 @@ EXTRA_DIST = \ raid/test/speedtest.c \ raid/test/invtest.c \ makeslackware.sh.in \ + makeslackdist.sh.in \ pkg/snapraid.SlackBuild.in \ pkg/snapraid.info.in \ pkg/slack-desc \ @@ -179,7 +180,7 @@ clean-local: rm -f tommyds/*.gcda tommyds/*.gcno tommyds/*.gcov rm -f lcov.info rm -f gmon.out - rm -f makeslackware.sh pkg/snapraid.SlackBuild pkg/snapraid.info makedeb.sh pkg/control makerpm.sh pkg/snapraid.spec + rm -f makeslackware.sh makeslackdist.sh pkg/snapraid.SlackBuild pkg/snapraid.info makedeb.sh pkg/control makerpm.sh pkg/snapraid.spec rm -f pkg/snapraid-*.txz pkg/snapraid_*.deb pkg/snapraid-*.rpm maintainer-clean-local: diff --git a/configure.ac b/configure.ac index 22c5be3f..07ea5c40 100644 --- a/configure.ac +++ b/configure.ac @@ -394,6 +394,7 @@ AC_ARG_VAR([TESTENV_AVX2], [Test environment for AVX2]) AC_CONFIG_FILES([Makefile]) AC_CONFIG_FILES([pkg/snapraid.info pkg/control pkg/snapraid.spec]) AC_CONFIG_FILES([makeslackware.sh], [chmod a+x makeslackware.sh]) +AC_CONFIG_FILES([makeslackdist.sh], [chmod a+x makeslackdist.sh]) AC_CONFIG_FILES([pkg/snapraid.SlackBuild], [chmod a+x pkg/snapraid.SlackBuild]) AC_CONFIG_FILES([makedeb.sh], [chmod a+x makedeb.sh]) AC_CONFIG_FILES([makerpm.sh], [chmod a+x makerpm.sh]) diff --git a/makedist.sh b/makedist.sh index c9a77b02..e124d25b 100755 --- a/makedist.sh +++ b/makedist.sh @@ -49,6 +49,7 @@ if ! make dist; then exit 1 fi +sh makeslackdist.sh sudo sh makeslackware.sh sudo sh makedeb.sh sudo sh makerpm.sh diff --git a/makeslackdist.sh.in b/makeslackdist.sh.in new file mode 100644 index 00000000..3206d8a7 --- /dev/null +++ b/makeslackdist.sh.in @@ -0,0 +1,35 @@ +#!/bin/bash +# makeslackdist.sh - Creates the source distribution for SlackBuilds.org + +set -euo pipefail + +PRGNAM="@PACKAGE@" +VERSION="@PACKAGE_VERSION@" +TARBALL="@PACKAGE@.tar.gz" +SOURCE_TARBALL="@PACKAGE@-${VERSION}.tar.gz" + +echo "Calculating MD5 sum..." +MD5SUM=$(md5sum "$SOURCE_TARBALL" | cut -d' ' -f1) + +# Create a temporary staging area +# We use a unique name to avoid conflicts +STAGING_DIR="tmp_build_dist" +mkdir -p $STAGING_DIR/$PRGNAM + +# Copy Build Files from the pkg directory +cp pkg/$PRGNAM.SlackBuild $STAGING_DIR/$PRGNAM/ +cp pkg/slack-desc $STAGING_DIR/$PRGNAM/ + +# Process the .info file and replace placeholders +sed -e "s/@MD5SUM@/$MD5SUM/g" pkg/$PRGNAM.info > $STAGING_DIR/$PRGNAM/$PRGNAM.info + +# We create the tarball in the current root directory +tar -czf "$TARBALL" -C $STAGING_DIR $PRGNAM + +# Remove the entire staging directory +echo "Removing staging artifacts..." +rm -rf $STAGING_DIR + +echo "" +echo "Success! The tarball is: $TARBALL" +echo "MD5SUM updated to: $MD5SUM" diff --git a/pkg/snapraid.info.in b/pkg/snapraid.info.in index fd0f4bc0..f0939ebd 100644 --- a/pkg/snapraid.info.in +++ b/pkg/snapraid.info.in @@ -1,10 +1,8 @@ PRGNAM="@PACKAGE@" VERSION="@PACKAGE_VERSION@" HOMEPAGE="https://www.snapraid.it/" -DOWNLOAD="https://github.com/amadvance/snapraid/releases/download/v${VERSION}/@PACKAGE@-${VERSION}.tar.gz" -MD5SUM="UNSUPPORTED" # Optional; compute manually if needed -DOWNLOAD_x86_64="$DOWNLOAD" -MD5SUM_x86_64="" +DOWNLOAD="https://github.com/amadvance/@PACKAGE@/releases/download/v@PACKAGE_VERSION@/@PACKAGE@-@PACKAGE_VERSION@.tar.gz" +MD5SUM="@MD5SUM@" REQUIRES="" MAINTAINER="Andrea Mazzoleni" EMAIL="amadvance@gmail.com"