~ruther/guix-local

86a6006f41141fcd78cec25e31f93ea85e363c73 — Rutherther 2 months ago 8ba84ed
Split release Makefile target to two.

Due to recent changes, the commit has to be published
to create the artifacts. Because of that, split the
target to two.

* Makefile.am
(release): Move first steps to prepare-release
(prepare-release): New target; Beginning of release.

Change-Id: I325c6dc36f7298482de7797c1e01fdaa70ef80c5
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
1 files changed, 16 insertions(+), 3 deletions(-)

M Makefile.am
M Makefile.am => Makefile.am +16 -3
@@ 1142,12 1142,18 @@ system_flags = $(foreach system,$(1),-s $(system))
#   5. Build the installation and VM images.  The images will run 'guix'
#      corresponding to 'vX.Y.Z' + 1 commit, and they will install 'vX.Y.Z'.
#
# This 'release' target takes care of everything and copies the resulting
# files to $(releasedir).
# This is split into two targets, because a commit is made that has to be
# pushed to Guix.
# First, 'prepare-release' should be run, doing steps 1 and 2.
# Then, the resulting commit should be pushed so that it's available
# to be downloaded for the system images.
# Afterwards, the 'release' target takes care of the rest.  This 'release'
# target takes care of everything and copies the resulting files to
# $(releasedir).
#
# XXX: Depend on 'dist' rather than 'distcheck' to work around the Gettext
# issue described at <https://savannah.gnu.org/bugs/index.php?51027>.
release: dist-with-updated-version all
prepare-release: dist-with-updated-version all
	@if ! git diff-index --quiet HEAD; then			\
	  echo "There are uncommitted changes; stopping." >&2 ;	\
	  exit 1 ;						\


@@ 1165,6 1171,13 @@ release: dist-with-updated-version all
	$(top_builddir)/pre-inst-env guix build guix	\
	      $(call system_flags,$(SUPPORTED_SYSTEMS))	\
	      -v1 --no-grafts --fallback

	@echo
	@echo "First step done! Source tarball is ready in $(releasedir)"
	@echo "Now push the resulting commit and run `make release`."
	@echo

release: all
# Generate the binary release tarballs.
	rm -f $(BINARY_TARBALLS)
	$(MAKE) $(BINARY_TARBALLS)