Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Jun 2018 23:39:55 +0000 (UTC)
From:      Bryan Drewery <bdrewery@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r335391 - head
Message-ID:  <201806192339.w5JNdtix002572@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: bdrewery
Date: Tue Jun 19 23:39:55 2018
New Revision: 335391
URL: https://svnweb.freebsd.org/changeset/base/335391

Log:
  Fix X_COMPILER_* and X_LINKER_* not being passed to installworld environment.
  
  This could lead to 'sh: head: not found' warnings which were a symptom
  of running 'ld --version' during installworld.  This was only happening
  with XCC or XLD set.  It is intended that cc and ld do not run during
  installworld.  The metadata for these are already stored in
  compiler-metadata.mk added in r316794.
  
  This also removes redundant CROSSENV additions that were for
  WITH_SYSTEM_COMPILER, WITHOUT_CROSS_COMPILER, and WITHOUT_TOOLCHAIN
  which all don't have a cc or ld in their PATH during install.
  
  Reported by:	Mark Millard
  MFC after:	2 weeks
  Sponsored by:	Dell EMC

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1	Tue Jun 19 23:30:55 2018	(r335390)
+++ head/Makefile.inc1	Tue Jun 19 23:39:55 2018	(r335391)
@@ -169,22 +169,6 @@ test-system-compiler: .PHONY
 .info SYSTEM_COMPILER: Determined that CC=${CC} matches the source tree.  Not bootstrapping a cross-compiler.
 .endif
 
-# For installworld need to ensure that the looked-up compiler metadata is
-# passed along rather than trying to run cc from the restricted
-# STRICTTMPPATH.
-.if ${MK_CLANG_BOOTSTRAP} == "no" && ${MK_GCC_BOOTSTRAP} == "no"
-.if !defined(X_COMPILER_TYPE)
-CROSSENV+=	COMPILER_VERSION=${COMPILER_VERSION} \
-		COMPILER_TYPE=${COMPILER_TYPE} \
-		COMPILER_FEATURES="${COMPILER_FEATURES}" \
-		COMPILER_FREEBSD_VERSION=${COMPILER_FREEBSD_VERSION}
-.else
-CROSSENV+=	COMPILER_VERSION=${X_COMPILER_VERSION} \
-		COMPILER_FEATURES="${X_COMPILER_FEATURES}" \
-		COMPILER_TYPE=${X_COMPILER_TYPE} \
-		COMPILER_FREEBSD_VERSION=${X_COMPILER_FREEBSD_VERSION}
-.endif
-.endif
 # Store some compiler metadata for use in installworld where we don't
 # want to invoke CC at all.
 _COMPILER_METADATA_VARS=	COMPILER_VERSION \
@@ -201,8 +185,10 @@ compiler-metadata.mk: .PHONY .META
 	@echo "_LOADED_COMPILER_METADATA=t" >> ${.TARGET}
 .for v in ${_COMPILER_METADATA_VARS}
 	@echo "${v}=${${v}}" >> ${.TARGET}
+	@echo "X_${v}=${X_${v}}" >> ${.TARGET}
 .endfor
 	@echo ".export ${_COMPILER_METADATA_VARS}" >> ${.TARGET}
+	@echo ".export ${_COMPILER_METADATA_VARS:C,^,X_,}" >> ${.TARGET}
 
 # Handle external binutils.
 .if defined(CROSS_TOOLCHAIN_PREFIX)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201806192339.w5JNdtix002572>