git: 182eef99ee7b - stable/14 - Makefile: Force DISTDIR=/ for (update-)packages
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 10 Oct 2025 07:17:39 UTC
The branch stable/14 has been updated by ivy:
URL: https://cgit.FreeBSD.org/src/commit/?id=182eef99ee7ba237f7f302ac4a2cda7b9babac23
commit 182eef99ee7ba237f7f302ac4a2cda7b9babac23
Author: Lexi Winter <ivy@FreeBSD.org>
AuthorDate: 2025-10-08 03:22:32 +0000
Commit: Lexi Winter <ivy@FreeBSD.org>
CommitDate: 2025-10-10 06:15:56 +0000
Makefile: Force DISTDIR=/ for (update-)packages
The make(1) variable DISTDIR is used by both ports and src with a
different meaning. Some users may set DISTDIR in /etc/make.conf
for ports, which previously worked fine when building src since
the src targets which used this variable were not very commonly
used (mainly, make distributeworld).
Unfortunately, with pkgbase becoming the default, this is no longer
true since make (update-)packages invokes make stageworld, which is
sensitive to DISTDIR, and these users find that their build now fails.
A correct fix for this probably requires renaming one or both of
the DISTDIR variables, but for now, work around the problem by
setting DISTDIR=/ for the user-facing pkgbase targets, packages
and update-package. Since setting DISTDIR doesn't work for these
targets anyway, this should not break any existing configurations.
MFC after: 1 week
PR: 290010
Reported by: Oleh Vinichenko <moonlapse81@gmail.com>
Reviewed by: imp, bapt
Sponsored by: https://www.patreon.com/bsdivy
Differential Revision: https://reviews.freebsd.org/D52929
(cherry picked from commit f7dc7d7af3683836fcca68018a678b242d2e2620)
---
Makefile | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 1cf7dc888f6b..ba435813fbed 100644
--- a/Makefile
+++ b/Makefile
@@ -179,7 +179,7 @@ TGTS= all all-man buildenv buildenvvars buildetc buildkernel buildworld \
create-packages-world create-packages-kernel \
create-packages-kernel-repo create-packages-world-repo \
create-packages-source create-packages \
- update-packages packages installconfig real-packages real-update-packages \
+ installconfig real-packages real-update-packages \
sign-packages package-pkg print-dir test-system-compiler test-system-linker \
test-includes
@@ -529,6 +529,9 @@ kernels: .PHONY
worlds: .PHONY
@cd ${.CURDIR}; ${SUB_MAKE} UNIVERSE_TARGET=buildworld universe
+packages update-packages: .PHONY
+ ${_+_}@cd ${.CURDIR}; ${_MAKE} DISTDIR=/ ${.TARGET}
+
#
# universe
#