[EFL] Quit debug build without -DSHARED_CORE=ON
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 28 Jan 2013 20:19:14 +0000 (20:19 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 28 Jan 2013 20:19:14 +0000 (20:19 +0000)
https://bugs.webkit.org/show_bug.cgi?id=104773

Patch by Halton Huo <halton.huo@intel.com> on 2013-01-28
Reviewed by Laszlo Gombos.

Debug build without -DSHARED_CORE=ON will fail because libwebcore_efl.a
is too big (>4G) to archive. The solution is simply to abort cmake in
this condition and notify developer.

* CMakeLists.txt:
* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsCommon.cmake:

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

CMakeLists.txt
ChangeLog
Source/cmake/OptionsCommon.cmake
Source/cmake/OptionsEfl.cmake

index a16aaa1..9e2d14f 100644 (file)
@@ -7,6 +7,7 @@ project(WebKit)
 if (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_C_FLAGS AND NOT CMAKE_CXX_FLAGS)
     set(CMAKE_BUILD_TYPE Release)
 endif ()
+string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE)
 
 # -----------------------------------------------------------------------------
 # Default library type
index 63ba84b..6061735 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2013-01-28  Halton Huo  <halton.huo@intel.com>
+
+        [EFL] Quit debug build without -DSHARED_CORE=ON
+        https://bugs.webkit.org/show_bug.cgi?id=104773
+
+        Reviewed by Laszlo Gombos.
+
+        Debug build without -DSHARED_CORE=ON will fail because libwebcore_efl.a
+        is too big (>4G) to archive. The solution is simply to abort cmake in
+        this condition and notify developer.
+
+        * CMakeLists.txt:
+        * Source/cmake/OptionsEfl.cmake:
+        * Source/cmake/OptionsCommon.cmake: 
+
 2013-01-28  Renata Hodovan  <reni@webkit.org>
 
         [WK2] Putting QtWebProcess into a chrooted sandbox
index 4137d3b..8ede3ca 100644 (file)
@@ -27,7 +27,7 @@ endif ()
 set_property(GLOBAL PROPERTY USE_FOLDERS ON)
 
 string(TOLOWER ${CMAKE_HOST_SYSTEM_PROCESSOR} LOWERCASE_CMAKE_HOST_SYSTEM_PROCESSOR)
-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")
+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 "-Wl,--no-keep-memory ${CMAKE_SHARED_LINKER_FLAGS}")
index cb6dee2..573f200 100644 (file)
@@ -9,6 +9,10 @@ if (NOT DEFINED ENABLE_WEBKIT2)
     set(ENABLE_WEBKIT2 ON)
 endif ()
 
+if (${CMAKE_BUILD_TYPE} STREQUAL "debug" AND NOT SHARED_CORE)
+    message(FATAL_ERROR "Turn on the SHARED_CORE flag to make a debug build - e.g.\n build-webkit --efl --debug --cmakeargs=\"-DSHARED_CORE=ON\".\n")
+endif ()
+
 find_package(Cairo 1.10.2 REQUIRED)
 find_package(Fontconfig 2.8.0 REQUIRED)
 find_package(Sqlite REQUIRED)
@@ -215,7 +219,7 @@ endif ()
 set(CPACK_SOURCE_GENERATOR TBZ2)
 
 # Optimize binary size for release builds by removing dead sections on unix/gcc
-if (CMAKE_BUILD_TYPE STREQUAL Release AND CMAKE_COMPILER_IS_GNUCC AND UNIX AND NOT APPLE)
+if (CMAKE_BUILD_TYPE STREQUAL release AND CMAKE_COMPILER_IS_GNUCC AND UNIX AND NOT APPLE)
     set(CMAKE_C_FLAGS "-ffunction-sections -fdata-sections ${CMAKE_C_FLAGS}")
     set(CMAKE_CXX_FLAGS "-ffunction-sections -fdata-sections ${CMAKE_CXX_FLAGS}")
     set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--gc-sections ${CMAKE_SHARED_LINKER_FLAGS}")