From owner-svn-src-head@freebsd.org Sun Nov 5 00:12:07 2017 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 58699E5AE7E; Sun, 5 Nov 2017 00:12:07 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 21689641A2; Sun, 5 Nov 2017 00:12:07 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id vA50C6gp042949; Sun, 5 Nov 2017 00:12:06 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id vA50C6m8042948; Sun, 5 Nov 2017 00:12:06 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201711050012.vA50C6m8042948@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sun, 5 Nov 2017 00:12:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r325416 - head/share/mk X-SVN-Group: head X-SVN-Commit-Author: bdrewery X-SVN-Commit-Paths: head/share/mk X-SVN-Commit-Revision: 325416 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Nov 2017 00:12:07 -0000 Author: bdrewery Date: Sun Nov 5 00:12:05 2017 New Revision: 325416 URL: https://svnweb.freebsd.org/changeset/base/325416 Log: Always try to set .OBJDIR, even if AUTO_OBJ is enabled, and fallback to .CURDIR. When AUTO_OBJ is enabled this change becomes redundant with the auto.obj.mk check added in r325404. However, it is possible that new code is added at some point between src.sys.obj.mk and auto.obj.mk that disables AUTO_OBJ. That could leave make with a bogus and unsafe .OBJDIR in some cases. Sponsored by: Dell EMC Isilon Modified: head/share/mk/src.sys.obj.mk Modified: head/share/mk/src.sys.obj.mk ============================================================================== --- head/share/mk/src.sys.obj.mk Sun Nov 5 00:12:02 2017 (r325415) +++ head/share/mk/src.sys.obj.mk Sun Nov 5 00:12:05 2017 (r325416) @@ -154,9 +154,8 @@ MK_AUTO_OBJ:= ${OBJDIR_WRITABLE} .export MK_AUTO_OBJ .endif # ${MK_AUTO_OBJ} == "no" && ... -# Assign this directory as .OBJDIR if possible after determining if AUTO_OBJ -# can be enabled by default. -.if ${MK_AUTO_OBJ} == "no" +# Assign this directory as .OBJDIR if possible. +# # The expected OBJDIR already exists, set it as .OBJDIR. .if !empty(MAKEOBJDIRPREFIX) && exists(${MAKEOBJDIRPREFIX}${.CURDIR}) .OBJDIR: ${MAKEOBJDIRPREFIX}${.CURDIR} @@ -169,5 +168,10 @@ MK_AUTO_OBJ:= ${OBJDIR_WRITABLE} .elif ${MAKE_VERSION} <= 20170720 && \ ${.CURDIR} == ${SRCTOP} && ${.OBJDIR} == ${SRCTOP}/ .OBJDIR: ${.CURDIR} +.else +# The OBJDIR we wanted does not yet exist, ensure we default to safe .CURDIR +# in case make started with a bogus MAKEOBJDIR, that expanded before OBJTOP +# was set, that happened to match some unexpected directory. Either +# auto.obj.mk or bsd.obj.mk will create the directory and fix .OBJDIR later. +.OBJDIR: ${.CURDIR} .endif -.endif # ${MK_AUTO_OBJ} == "no"