From e5f1a13792f20cfac097fef98007610b422f2cac Mon Sep 17 00:00:00 2001 From: Andrew Dahl Date: Mon, 14 Jan 2013 12:17:09 -0600 Subject: [PATCH] xfstests: Refactor release scripts to conform to using git archive Refactored release scripts to conform to using git archive When generating a release, there is a risk of some files being stale, such as configure and the m4/autotools temp files. This is fixed with a clean at the beginning of release generation. In addition, there is no uniformity in the current method of source tar generation between xfs utilities. Using git archive solves this issue across all utilities. Signed-off-by: Andrew Dahl Reviewed-by: Ben Myers Signed-off-by: Ben Myers --- Makefile | 20 ++++++++++++++++++++ release.sh | 11 +++++++++-- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index b68ec114..6edd55c1 100644 --- a/Makefile +++ b/Makefile @@ -39,12 +39,17 @@ ifeq ($(HAVE_BUILDDEFS), yes) include $(TOPDIR)/include/builddefs endif +SRCTAR = $(PKG_NAME)-$(PKG_VERSION).tar.gz + TESTS = $(shell sed -n -e '/^[0-9][0-9][0-9]*/s/ .*//p' group) CONFIGURE = configure include/builddefs include/config.h LSRCFILES = configure configure.ac aclocal.m4 README VERSION LDIRT = config.log .ltdep .dep config.status config.cache confdefs.h \ conftest* check.log check.time +ifeq ($(HAVE_BUILDDEFS), yes) +LDIRT += $(SRCTAR) +endif LIB_SUBDIRS = include lib TOOL_SUBDIRS = ltp src m4 @@ -102,3 +107,18 @@ install-dev install-lib: realclean distclean: clean $(Q)rm -f $(LDIRT) $(CONFIGURE) $(Q)rm -rf autom4te.cache Logs + +dist: include/builddefs include/config.h default +ifeq ($(HAVE_BUILDDEFS), no) + $(Q)$(MAKE) $(MAKEOPTS) -C . $@ +else + $(Q)$(MAKE) $(MAKEOPTS) $(SRCTAR) +endif + +$(SRCTAR) : default + $(Q)git archive --prefix=$(PKG_NAME)-$(PKG_VERSION)/ --format=tar \ + v$(PKG_VERSION) > $(PKG_NAME)-$(PKG_VERSION).tar + $(Q)$(TAR) --transform "s,^,$(PKG_NAME)-$(PKG_VERSION)/," \ + -rf $(PKG_NAME)-$(PKG_VERSION).tar $(CONFIGURE) + $(Q)$(ZIP) $(PKG_NAME)-$(PKG_VERSION).tar + echo Wrote: $@ diff --git a/release.sh b/release.sh index 65e4e4bf..5b78ec79 100644 --- a/release.sh +++ b/release.sh @@ -8,6 +8,9 @@ version=${PKG_MAJOR}.${PKG_MINOR}.${PKG_REVISION} date=`date +"%-d %B %Y"` +echo "Cleaning up" +make realclean + echo "Updating CHANGES" sed -e "s/${version}.*/${version} (${date})/" doc/CHANGES > doc/CHANGES.tmp && \ mv doc/CHANGES.tmp doc/CHANGES @@ -18,6 +21,10 @@ git commit -s -a -m "${version} release" echo "Tagging git repository" git tag -s -a -m "${version} release" v${version} -echo "Done. Please remember to push out tags using \"git push --tags\"" -echo "If you wish to create a source tarball, run \"make dist\"" +echo "Making source tarball" +make dist +echo "Sign the source tarball" +gpg --detach-sign xfstests-${version}.tar.gz + +echo "Done. Please remember to push out tags using \"git push --tags\"" -- 2.39.5