From 54bb8f74bd3931f801472e86c481c80f868c2b91 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Tue, 8 Mar 2016 11:49:26 +0100 Subject: Fix configurations such as 'dist' and tar building For config targets such as 'dist', which doesn't have a BASE template, we still need to have a default build scheme. Additionally, the unified Makefile template's target 'tar' wasn't quite as flexible as the unixmake one. Finally, .travis-create-release.sh can be somewhat simplified now that it builds with the unified build scheme. Reviewed-by: Matt Caswell --- .travis-create-release.sh | 5 ++--- Configurations/00-base-templates.conf | 3 +++ Configurations/unix-Makefile.tmpl | 8 +++++--- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/.travis-create-release.sh b/.travis-create-release.sh index a153a928b8..08dcf18f40 100644 --- a/.travis-create-release.sh +++ b/.travis-create-release.sh @@ -5,8 +5,7 @@ ./Configure dist if [ "$1" == osx ]; then make NAME='_srcdist' TARFLAGS='-n' TARFILE='_srcdist.tar' \ - TAR_COMMAND='$(TAR) $(TARFLAGS) -s "|^|$(NAME)/|" -T $(TARFILE).list -cvf -' \ - SHELL='sh -vx' tar + TAR_COMMAND='$(TAR) $(TARFLAGS) -cvf -' tar else - make TARFILE='_srcdist.tar' NAME='_srcdist' SHELL='sh -v' dist + make TARFILE='_srcdist.tar' NAME='_srcdist' dist fi diff --git a/Configurations/00-base-templates.conf b/Configurations/00-base-templates.conf index b7dcde0b68..026cdab077 100644 --- a/Configurations/00-base-templates.conf +++ b/Configurations/00-base-templates.conf @@ -35,6 +35,9 @@ shared_ldflag => "", shared_rcflag => "", shared_extension => "", + + build_scheme => [ "unified", "unix" ], + build_file => "Makefile", }, BASE_common => { diff --git a/Configurations/unix-Makefile.tmpl b/Configurations/unix-Makefile.tmpl index 226f5bdfa8..9f4c1f228f 100644 --- a/Configurations/unix-Makefile.tmpl +++ b/Configurations/unix-Makefile.tmpl @@ -660,9 +660,11 @@ tags TAGS: FORCE # Release targets (note: only available on Unix) ##################### +TAR_COMMAND=$(TAR) $(TARFLAGS) --owner 0 --group 0 -cvf - +PREPARE_CMD=: tar: TMPDIR=/var/tmp/openssl-copy.$$$$; \ - DISTDIR=openssl-$(VERSION); \ + DISTDIR=$(NAME); \ mkdir -p $$TMPDIR/$$DISTDIR; \ (cd $(SRCDIR); \ git ls-tree -r --name-only --full-tree HEAD \ @@ -671,11 +673,11 @@ tar: cp $$F $$TMPDIR/$$DISTDIR/$$F; \ done); \ (cd $$TMPDIR; \ - [ -n "$(PREPARE_CMD)" ] && $(PREPARE_CMD); \ + $(PREPARE_CMD); \ find $$TMPDIR/$$DISTDIR -type d -print | xargs chmod 755; \ find $$TMPDIR/$$DISTDIR -type f -print | xargs chmod a+r; \ find $$TMPDIR/$$DISTDIR -type f -perm -0100 -print | xargs chmod a+x; \ - $(TAR) $(TARFLAGS) --owner 0 --group 0 -cvf - $$DISTDIR) \ + $(TAR_COMMAND) $$DISTDIR) \ | (cd $(SRCDIR); gzip --best > $(TARFILE).gz); \ rm -rf $$TMPDIR cd $(SRCDIR); ls -l $(TARFILE).gz -- cgit v1.2.3