From dc3c6ad63c9b9f23cea1cd047288972bfcf6049b Mon Sep 17 00:00:00 2001 From: Alex Richardson Date: Fri, 15 Nov 2019 16:43:36 +0000 Subject: [PATCH] Use __ as the separator for the exported vars in bsd.compiler/linker.mk By using '__' instead of '.' as the separator we can also support systems that use dash as /bin/sh (it's the default shell on Ubuntu/Debian). Dash will unset any environment variables that use a non alphanumeric+undedscore character and therefore submakes will fail to import the COMPILER_* variables if we use '.' as the separator. Reviewed By: emaste Differential Revision: https://reviews.freebsd.org/D22381 --- share/mk/bsd.compiler.mk | 10 +++++----- share/mk/bsd.linker.mk | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/share/mk/bsd.compiler.mk b/share/mk/bsd.compiler.mk index 0cf6f1749e3f..9e43d3617768 100644 --- a/share/mk/bsd.compiler.mk +++ b/share/mk/bsd.compiler.mk @@ -155,8 +155,8 @@ _can_export= no .endfor .if ${_can_export} == yes .for var in ${_exported_vars} -.if defined(${var}.${${X_}_cc_hash}) -${var}= ${${var}.${${X_}_cc_hash}} +.if defined(${var}__${${X_}_cc_hash}) +${var}= ${${var}__${${X_}_cc_hash}} .endif .endfor .endif @@ -229,9 +229,9 @@ X_COMPILER_FEATURES= ${COMPILER_FEATURES} # Export the values so sub-makes don't have to look them up again, using the # hash key computed above. .for var in ${_exported_vars} -${var}.${${X_}_cc_hash}:= ${${var}} -.export-env ${var}.${${X_}_cc_hash} -.undef ${var}.${${X_}_cc_hash} +${var}__${${X_}_cc_hash}:= ${${var}} +.export-env ${var}__${${X_}_cc_hash} +.undef ${var}__${${X_}_cc_hash} .endfor .endif # ${cc} == "CC" || !empty(XCC) diff --git a/share/mk/bsd.linker.mk b/share/mk/bsd.linker.mk index 8d6c28a74d0e..16a8e8c4f78e 100644 --- a/share/mk/bsd.linker.mk +++ b/share/mk/bsd.linker.mk @@ -50,8 +50,8 @@ _can_export= no .endfor .if ${_can_export} == yes .for var in ${_exported_vars} -.if defined(${var}.${${X_}_ld_hash}) -${var}= ${${var}.${${X_}_ld_hash}} +.if defined(${var}__${${X_}_ld_hash}) +${var}= ${${var}__${${X_}_ld_hash}} .endif .endfor .endif @@ -101,9 +101,9 @@ X_LINKER_FREEBSD_VERSION= ${LINKER_FREEBSD_VERSION} # Export the values so sub-makes don't have to look them up again, using the # hash key computed above. .for var in ${_exported_vars} -${var}.${${X_}_ld_hash}:= ${${var}} -.export-env ${var}.${${X_}_ld_hash} -.undef ${var}.${${X_}_ld_hash} +${var}__${${X_}_ld_hash}:= ${${var}} +.export-env ${var}__${${X_}_ld_hash} +.undef ${var}__${${X_}_ld_hash} .endfor .endif # ${ld} == "LD" || !empty(XLD)