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>
This commit is contained in:
Rutherther 2025-12-07 11:33:50 +01:00
parent 8ba84edf99
commit 86a6006f41
No known key found for this signature in database
GPG key ID: 0322798269E471C3

View file

@ -1142,12 +1142,18 @@ system_flags = $(foreach system,$(1),-s $(system))
# 5. Build the installation and VM images. The images will run 'guix' # 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'. # 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 # This is split into two targets, because a commit is made that has to be
# files to $(releasedir). # 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 # XXX: Depend on 'dist' rather than 'distcheck' to work around the Gettext
# issue described at <https://savannah.gnu.org/bugs/index.php?51027>. # 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 \ @if ! git diff-index --quiet HEAD; then \
echo "There are uncommitted changes; stopping." >&2 ; \ echo "There are uncommitted changes; stopping." >&2 ; \
exit 1 ; \ exit 1 ; \
@ -1165,6 +1171,13 @@ release: dist-with-updated-version all
$(top_builddir)/pre-inst-env guix build guix \ $(top_builddir)/pre-inst-env guix build guix \
$(call system_flags,$(SUPPORTED_SYSTEMS)) \ $(call system_flags,$(SUPPORTED_SYSTEMS)) \
-v1 --no-grafts --fallback -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. # Generate the binary release tarballs.
rm -f $(BINARY_TARBALLS) rm -f $(BINARY_TARBALLS)
$(MAKE) $(BINARY_TARBALLS) $(MAKE) $(BINARY_TARBALLS)