From 929986e568446f54c2a99c309fbb4d05bd4af00a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Thu, 10 May 2018 08:01:08 +0200
Subject: [PATCH] posix: Also force common toolchain vars for Gentoo

---
 src/engine/SCons/Platform/posix.py | 20 ++++++++++++++++++++
 src/engine/SCons/Tool/cc.py        |  3 ++-
 src/engine/SCons/Tool/cxx.py       |  3 ++-
 src/engine/SCons/Tool/link.py      |  3 ++-
 4 files changed, 26 insertions(+), 3 deletions(-)

diff --git a/src/engine/SCons/Platform/posix.py b/src/engine/SCons/Platform/posix.py
index 739310a1..ef7528e0 100644
--- a/src/engine/SCons/Platform/posix.py
+++ b/src/engine/SCons/Platform/posix.py
@@ -95,6 +95,26 @@ def generate(env):
         if 'ENV' in env:
             new_env.update(env['ENV'])
         env['ENV'] = new_env
+
+        # Furthermore, force common compiler/linker variables as well
+        envvar_mapping = {
+            'AR': 'AR',
+            'AS': 'AS',
+            'ASFLAGS': 'ASFLAGS',
+            'CC': 'CC',
+            'CXX': 'CXX',
+            'CFLAGS': 'CFLAGS',
+            'CXXFLAGS': 'CXXFLAGS',
+            'CPPFLAGS': 'CPPFLAGS',
+            'LDFLAGS': 'LINKFLAGS',
+        }
+
+        for envvar, toolvar in envvar_mapping.items():
+            if toolvar not in env and envvar in env['ENV']:
+                val = env['ENV'][envvar]
+                if toolvar.endswith('FLAGS'):
+                    val = SCons.Util.CLVar(val)
+                env[toolvar] = val
     else:
         if 'ENV' not in env:
             env['ENV']        = {}
diff --git a/src/engine/SCons/Tool/cc.py b/src/engine/SCons/Tool/cc.py
index 590ec5fd..5f9229a0 100644
--- a/src/engine/SCons/Tool/cc.py
+++ b/src/engine/SCons/Tool/cc.py
@@ -80,7 +80,8 @@ def generate(env):
 
     if 'CC' not in env:
         env['CC']    = env.Detect(compilers) or compilers[0]
-    env['CFLAGS']    = SCons.Util.CLVar('')
+    if 'CFLAGS' not in env:
+        env['CFLAGS'] = SCons.Util.CLVar('')
     env['CCCOM']     = '$CC -o $TARGET -c $CFLAGS $CCFLAGS $_CCCOMCOM $SOURCES'
     env['SHCC']      = '$CC'
     env['SHCFLAGS'] = SCons.Util.CLVar('$CFLAGS')
diff --git a/src/engine/SCons/Tool/cxx.py b/src/engine/SCons/Tool/cxx.py
index 430851c8..ca5ab563 100644
--- a/src/engine/SCons/Tool/cxx.py
+++ b/src/engine/SCons/Tool/cxx.py
@@ -74,7 +74,8 @@ def generate(env):
 
     if 'CXX' not in env:
         env['CXX']    = env.Detect(compilers) or compilers[0]
-    env['CXXFLAGS']   = SCons.Util.CLVar('')
+    if 'CXXFLAGS' not in env:
+        env['CXXFLAGS'] = SCons.Util.CLVar('')
     env['CXXCOM']     = '$CXX -o $TARGET -c $CXXFLAGS $CCFLAGS $_CCCOMCOM $SOURCES'
     env['SHCXX']      = '$CXX'
     env['SHCXXFLAGS'] = SCons.Util.CLVar('$CXXFLAGS')
diff --git a/src/engine/SCons/Tool/link.py b/src/engine/SCons/Tool/link.py
index 5adc6ca2..a12ea8ed 100644
--- a/src/engine/SCons/Tool/link.py
+++ b/src/engine/SCons/Tool/link.py
@@ -318,7 +318,8 @@ def generate(env):
 
     env['SMARTLINK'] = smart_link
     env['LINK'] = "$SMARTLINK"
-    env['LINKFLAGS'] = SCons.Util.CLVar('')
+    if 'LINKFLAGS' not in env:
+        env['LINKFLAGS'] = SCons.Util.CLVar('')
 
     # __RPATH is only set to something ($_RPATH typically) on platforms that support it.
     env['LINKCOM'] = '$LINK -o $TARGET $LINKFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS'
-- 
2.20.1

