summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2014-08-08 14:58:08 +0200
committerMichael Stahl <mstahl@redhat.com>2014-08-14 18:55:17 +0200
commit8bd6bf93b7711a7ac7c5cbd7c3bb980481570ebd (patch)
tree6b81e0fa2b4bc33c525231969558e5bacddb93be /solenv
parent6a686b41eeefa815b2635724e0abe6522fe1661b (diff)
fdo#82430: configure: MSVC build: avoid using SSE2 instructions
MSVC 2012 for x86 defaults to -arch:SSE2; binaries do not run on any AMD 32-bit CPU, neither on Intel Pentium III. http://msdn.microsoft.com/en-us/library/vstudio/7t5yh4fd%28v=vs.110%29.aspx Change-Id: Ie8253137db2699f2a7fa69c4ac4e7ded90931e3e
Diffstat (limited to 'solenv')
-rw-r--r--solenv/gbuild/platform/com_MSC_class.mk6
-rw-r--r--solenv/gcc-wrappers/g++.cxx4
-rw-r--r--solenv/gcc-wrappers/gcc.cxx4
3 files changed, 10 insertions, 4 deletions
diff --git a/solenv/gbuild/platform/com_MSC_class.mk b/solenv/gbuild/platform/com_MSC_class.mk
index f619aa71f8af..67bd4a5ba777 100644
--- a/solenv/gbuild/platform/com_MSC_class.mk
+++ b/solenv/gbuild/platform/com_MSC_class.mk
@@ -506,9 +506,11 @@ endef
# /opt/lo/bin/ccache /cygdrive/c/PROGRA~2/MICROS~2.0/VC/bin/cl.exe
gb_AUTOCONF_WRAPPERS = \
- REAL_CC="$(shell cygpath -w $(CC))" \
+ REAL_CC="$(shell cygpath -w $(filter-out -%,$(CC)))" \
+ REAL_CC_FLAGS="$(filter -%,$(CC))" \
CC="$(call gb_Executable_get_target,gcc-wrapper)" \
- REAL_CXX="$(shell cygpath -w $(CXX))" \
+ REAL_CXX="$(shell cygpath -w $(filter-out -%,$(CXX)))" \
+ REAL_CXX_FLAGS="$(filter -%,$(CXX))" \
CXX="$(call gb_Executable_get_target,g++-wrapper)" \
LD="$(shell cygpath -w $(COMPATH)/bin/link.exe) -nologo"
diff --git a/solenv/gcc-wrappers/g++.cxx b/solenv/gcc-wrappers/g++.cxx
index d2ee3d555e0a..289d91973221 100644
--- a/solenv/gcc-wrappers/g++.cxx
+++ b/solenv/gcc-wrappers/g++.cxx
@@ -13,8 +13,10 @@ int main(int argc, char *argv[]) {
vector<string> rawargs(argv + 1, argv + argc);
string command=getexe("REAL_CXX");
+ string flags=getexe("REAL_CXX_FLAGS");
- string args=processccargs(rawargs);
+ string args=flags.empty() ? string() : flags + " ";
+ args += processccargs(rawargs);
setupccenv();
diff --git a/solenv/gcc-wrappers/gcc.cxx b/solenv/gcc-wrappers/gcc.cxx
index b8983cf6e5e6..8ff814856974 100644
--- a/solenv/gcc-wrappers/gcc.cxx
+++ b/solenv/gcc-wrappers/gcc.cxx
@@ -13,8 +13,10 @@ int main(int argc, char *argv[]) {
vector<string> rawargs(argv + 1, argv + argc);
string command=getexe("REAL_CC");
+ string flags=getexe("REAL_CC_FLAGS");
- string args=processccargs(rawargs);
+ string args=flags.empty() ? string() : flags + " ";
+ args += processccargs(rawargs);
setupccenv();