git: 67f4116a102f - releng/14.1 - release: make dependencies, not recursive make
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 14 May 2024 21:38:36 UTC
The branch releng/14.1 has been updated by cperciva:
URL: https://cgit.FreeBSD.org/src/commit/?id=67f4116a102f6a6917f4b329412b0dfa30016e1a
commit 67f4116a102f6a6917f4b329412b0dfa30016e1a
Author: Colin Percival <cperciva@FreeBSD.org>
AuthorDate: 2024-05-09 07:52:25 +0000
Commit: Colin Percival <cperciva@FreeBSD.org>
CommitDate: 2024-05-14 21:38:17 +0000
release: make dependencies, not recursive make
For historical reasons, the vm-release and cloudware-release targets
were written as recursive makes of ${VMTARGETS} and ${CLOUDTARGETS};
this worked fine until we started running `make release -jN` and
had both VM and cloud targets depending on ${QEMUTGT}, at which
point things exploded when we tried to build the port twice at the
same time.
Switch vm-release and cloudware-release to have make dependencies on
their individual components; this way a single make process runs and
is aware of the duplicate dependency (and only runs it once).
MFC after: 5 days
Approved by: re (delphij)
(cherry picked from commit ce7756fdca1f0a89a74bc406cd3d3ac1d1be1ffb)
(cherry picked from commit e306ad1c194d464708b4b12277d577d931e6eae9)
---
release/Makefile.vm | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/release/Makefile.vm b/release/Makefile.vm
index 6fd165528854..95d48490c353 100644
--- a/release/Makefile.vm
+++ b/release/Makefile.vm
@@ -223,14 +223,16 @@ vm-install:
${DESTDIR}/vmimages/CHECKSUM.SHA256
.endif
-vm-release:
.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES)
- ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} ${VMTARGETS}
+vm-release: ${VMTARGETS}
+.else
+vm-release:
.endif
-cloudware-release:
.if defined(WITH_CLOUDWARE) && !empty(WITH_CLOUDWARE) && !empty(CLOUDWARE)
- ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} ${CLOUDTARGETS}
+cloudware-release: ${CLOUDTARGETS}
+.else
+cloudware-release:
.endif
.include "${.CURDIR}/Makefile.azure"