summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.sys.inc4
-rw-r--r--share/mk/src.sys.obj.mk2
2 files changed, 5 insertions, 1 deletions
diff --git a/Makefile.sys.inc b/Makefile.sys.inc
index 6bb597de2fd7..c659234e9dff 100644
--- a/Makefile.sys.inc
+++ b/Makefile.sys.inc
@@ -38,6 +38,10 @@ MK_AUTO_OBJ= no
# just want to read any existing OBJDIR but we don't care if we can create
# or write to them.
.MAKEOVERRIDES+= MK_AUTO_OBJ
+.else
+# For top-level we always assume the MAKEOBJDIRPREFIX is writable rather than
+# falling back to .CURDIR.
+__objdir_writable= yes
.endif
.endif # empty(.MAKEOVERRIDES:MMK_AUTO_OBJ)
diff --git a/share/mk/src.sys.obj.mk b/share/mk/src.sys.obj.mk
index 280150b6c7ad..efed181d5c7a 100644
--- a/share/mk/src.sys.obj.mk
+++ b/share/mk/src.sys.obj.mk
@@ -172,7 +172,7 @@ CheckAutoObj() { \
.if !empty(__objdir)
.if ${.CURDIR} == ${__objdir}
__objdir_writable?= yes
-.else
+.elif empty(__objdir_writable)
__objdir_writable!= \
${CheckAutoObj}; CheckAutoObj "${__objdir}" || echo no
.endif