summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2018-09-29 17:28:26 (GMT)
committerGitHub <noreply@github.com>2018-09-29 17:28:26 (GMT)
commit99a261736b08dbf81a469e4886c0eab7b2f5e539 (patch)
tree98ee0732d45c533c0ee12d2fcb53e3d240ebde3f
parentc3ea42f08ccfcd1768d5b86e6867d45036183a14 (diff)
parent2d6ecbda6bb7a891eb29a57a0d92ecbf653eba86 (diff)
Merge pull request #1040 from stilor/create-release-with-autotools
Move the last bits of release creation into Makefile.am
-rw-r--r--Makefile.am13
-rwxr-xr-xmaintainer/create-release.sh63
2 files changed, 16 insertions, 60 deletions
diff --git a/Makefile.am b/Makefile.am
index 5fdee30..92b8af5 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -83,3 +83,16 @@ fetch-docs: maintainer/download-docs.sh
.PHONY: gen-tarball-version
gen-tarball-version:
echo $(VERSION) > $(distdir)/.tarball-version
+
+DIGESTS = md5 sha1 sha512
+USE_GPG = yes
+
+dist-create-release: distcheck
+ for a in $(DIST_ARCHIVES); do \
+ for d in $(DIGESTS); do \
+ $${d}sum $${a} > $${a}.$${d}; \
+ done; \
+ if [ "$(USE_GPG)" = "yes" ]; then \
+ gpg --detach-sign $${a}; \
+ fi; \
+ done
diff --git a/maintainer/create-release.sh b/maintainer/create-release.sh
index 498fc0a..ae6e8ec 100755
--- a/maintainer/create-release.sh
+++ b/maintainer/create-release.sh
@@ -1,20 +1,6 @@
#!/bin/bash
-formats=( "bz2" "xz" )
-declare -A tar_opt=( ["bz2"]=j ["xz"]=J )
-digests=( md5 sha1 sha512 )
-use_gpg=yes
-
-do_trace()
-{
- echo " --> $@" >&2
-}
-
-do_abort()
-{
- echo "ERROR: $@" >&2
- exit 1
-}
+set -ex
# Go to the top-level
topdir=`git rev-parse --show-toplevel`
@@ -22,49 +8,6 @@ if [ -z "${topdir}" ]; then
do_abort "Not in the Git clone"
fi
cd "${topdir}"
-
-# Determine the version. Replace the dashes with dots, as packaging
-# systems don't expect dashes in versions, but they're ok in package
-# name.
-version=`git describe | sed -r -e 's,-,.,g' -e 's,^crosstool\.ng\.,crosstool-ng-,'`
-do_trace "Creating release for ${version}"
-
-# Create the base working directory
-if [ -e "release" -a ! -d "release" ]; then
- do_abort "File 'release' already exists but is not a directory"
-fi
-mkdir -p "release"
-
-# Copy the base stuff
-do_trace "Copying crosstool-NG"
-rm -rf "release/${version}"
-git archive --prefix="${version}/" HEAD | tar xf - -C "release"
-
-# The rest of modifications are inside the release directory
-cd "release/${version}"
-
-# Run bootstrap before it is removed
-do_trace "Bootstrapping"
./bootstrap
-rm -f bootstrap
-
-# Remove other things not for the end user
-do_trace "Removing unreleased files"
-rm -f .travis.*
-find -name .gitignore | xargs rm
-rm -rf autom4te.cache maintainer
-
-# Go back to top level
-cd ../..
-
-# Package up
-do_trace "Packaging"
-for fmt in "${formats[@]}"; do
- tar c${tar_opt[$fmt]}f "release/${version}.tar.${fmt}" -C "release" "${version}"
- for h in "${digests[@]}"; do
- (cd "release" && ${h}sum "${version}.tar.${fmt}") > "release/${version}.tar.${fmt}.${h}"
- done
- if [ "${use_gpg}" = "yes" ]; then
- (cd "release" && gpg --detach-sign "${version}.tar.${fmt}")
- fi
-done
+./configure --enable-local
+make dist-create-release