Title: [186987] trunk
- Revision
- 186987
- Author
- [email protected]
- Date
- 2015-07-17 23:32:42 -0700 (Fri, 17 Jul 2015)
Log Message
Bring back the GNU ar check to create thin archives on non-Linux systems
https://bugs.webkit.org/show_bug.cgi?id=146681
Patch by Ting-Wei Lan <[email protected]> on 2015-07-17
Reviewed by Martin Robinson.
We already use GNU ar thin archive feature to save time and disk space
on creating static archives, but it is only enabled on Linux. Without
this feature, the debug build of WebCore can be larger than 4 GiB,
which can cause error because GNU ar format uses 32-bit integer to
store offsets in the symbol table. This patch is similar to
https://bugs.webkit.org/show_bug.cgi?id=128596.
* Source/cmake/OptionsCommon.cmake:
Modified Paths
Diff
Modified: trunk/ChangeLog (186986 => 186987)
--- trunk/ChangeLog 2015-07-18 05:51:06 UTC (rev 186986)
+++ trunk/ChangeLog 2015-07-18 06:32:42 UTC (rev 186987)
@@ -1,3 +1,19 @@
+2015-07-17 Ting-Wei Lan <[email protected]>
+
+ Bring back the GNU ar check to create thin archives on non-Linux systems
+ https://bugs.webkit.org/show_bug.cgi?id=146681
+
+ Reviewed by Martin Robinson.
+
+ We already use GNU ar thin archive feature to save time and disk space
+ on creating static archives, but it is only enabled on Linux. Without
+ this feature, the debug build of WebCore can be larger than 4 GiB,
+ which can cause error because GNU ar format uses 32-bit integer to
+ store offsets in the symbol table. This patch is similar to
+ https://bugs.webkit.org/show_bug.cgi?id=128596.
+
+ * Source/cmake/OptionsCommon.cmake:
+
2015-07-14 Carlos Alberto Lopez Perez <[email protected]>
[GTK] [Wayland] Build by default the X11 and Wayland targets.
Modified: trunk/Source/cmake/OptionsCommon.cmake (186986 => 186987)
--- trunk/Source/cmake/OptionsCommon.cmake 2015-07-18 05:51:06 UTC (rev 186986)
+++ trunk/Source/cmake/OptionsCommon.cmake 2015-07-18 06:32:42 UTC (rev 186987)
@@ -15,7 +15,8 @@
set(CODE_GENERATOR_PREPROCESSOR_WITH_LINEMARKERS "${CMAKE_CXX_COMPILER} -E -x c++")
endif ()
-if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+execute_process(COMMAND ${CMAKE_AR} -V OUTPUT_VARIABLE AR_VERSION)
+if ("${AR_VERSION}" MATCHES "^GNU ar")
set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> crT <TARGET> <LINK_FLAGS> <OBJECTS>")
set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> crT <TARGET> <LINK_FLAGS> <OBJECTS>")
set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> rT <TARGET> <LINK_FLAGS> <OBJECTS>")
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes