[CMake] Allow user specified compiler flags to take precedence
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 26 Nov 2012 08:31:18 +0000 (08:31 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 26 Nov 2012 08:31:18 +0000 (08:31 +0000)
https://bugs.webkit.org/show_bug.cgi?id=103101

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2012-11-26
Reviewed by Brent Fulgham.

Make sure that compiler and linker flags specified by the build system
are always prepended to the variables that can be specified by the
environment and the user as well.

* Source/cmake/OptionsCommon.cmake:
* Source/cmake/OptionsWindows.cmake:
* Source/cmake/WebKitHelpers.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@135688 268f45cc-cd09-0410-ab3c-d52691b4dbfc

ChangeLog
Source/cmake/OptionsCommon.cmake
Source/cmake/OptionsWindows.cmake
Source/cmake/WebKitHelpers.cmake

index 547ddf5..63431ff 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2012-11-26  Laszlo Gombos  <l.gombos@samsung.com>
+
+        [CMake] Allow user specified compiler flags to take precedence
+        https://bugs.webkit.org/show_bug.cgi?id=103101
+
+        Reviewed by Brent Fulgham.
+
+        Make sure that compiler and linker flags specified by the build system
+        are always prepended to the variables that can be specified by the
+        environment and the user as well. 
+
+        * Source/cmake/OptionsCommon.cmake:
+        * Source/cmake/OptionsWindows.cmake:
+        * Source/cmake/WebKitHelpers.cmake:
+
 2012-11-23  Alexis Menard  <alexis@webkit.org>
 
         [CSS3 Backgrounds and Borders] Implement new CSS3 background-position parsing.
index 43a212f..7010598 100644 (file)
@@ -30,7 +30,7 @@ STRING(TOLOWER ${CMAKE_HOST_SYSTEM_PROCESSOR} LOWERCASE_CMAKE_HOST_SYSTEM_PROCES
 IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" AND "${LOWERCASE_CMAKE_HOST_SYSTEM_PROCESSOR}" MATCHES "(i[3-6]86|x86)" AND "${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
     # To avoid out of memory when building with debug option in 32bit system.
     # See https://bugs.webkit.org/show_bug.cgi?id=77327
-    SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-keep-memory")
+    SET(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-keep-memory ${CMAKE_SHARED_LINKER_FLAGS}")
 ENDIF ()
 
 SET(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)")
index 8f6256c..6234b0d 100644 (file)
@@ -14,8 +14,8 @@ IF (MSVC)
     STRING(REGEX REPLACE "/GR" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) # Disable RTTI
 
     IF (NOT MSVC_VERSION LESS 1500)
-        SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /MP")
-        SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP")
+        SET(CMAKE_C_FLAGS "/MP ${CMAKE_C_FLAGS}")
+        SET(CMAKE_CXX_FLAGS "/MP ${CMAKE_CXX_FLAGS}")
     ENDIF ()
 ENDIF ()
 
index dab5807..23b219b 100644 (file)
@@ -21,7 +21,7 @@ MACRO(WEBKIT_SET_EXTRA_COMPILER_FLAGS _target)
     # Disable some optimizations on buggy compiler versions
     # GCC 4.5.1 does not implement -ftree-sra correctly
     IF (${COMPILER_VERSION} STREQUAL "4.5.1")
-        SET(OLD_COMPILE_FLAGS "${OLD_COMPILE_FLAGS} -fno-tree-sra")
+        SET(OLD_COMPILE_FLAGS "-fno-tree-sra ${OLD_COMPILE_FLAGS}")
     ENDIF ()
 
     IF (NOT SHARED_CORE)
@@ -42,7 +42,7 @@ MACRO(WEBKIT_SET_EXTRA_COMPILER_FLAGS _target)
 
     # Enable errors on warning
     IF (OPTION_ENABLE_WERROR)
-        SET(OLD_COMPILE_FLAGS "${OLD_COMPILE_FLAGS} -Werror -Wno-error=unused-parameter")
+        SET(OLD_COMPILE_FLAGS "-Werror -Wno-error=unused-parameter ${OLD_COMPILE_FLAGS}")
     ENDIF ()
 
     # Disable C++0x compat warnings for GCC >= 4.6.0 until we build