Title: [160812] trunk
Revision
160812
Author
g...@gnome.org
Date
2013-12-18 17:35:02 -0800 (Wed, 18 Dec 2013)

Log Message

[GTK][CMake] make libjavascriptcoregtk a public shared library again
https://bugs.webkit.org/show_bug.cgi?id=125512

Reviewed by Martin Robinson.

.:

* CMakeLists.txt: make _javascript_Core always be a shared library for the GTK+ port.
* Source/cmake/WebKitHelpers.cmake: make -fvisibility=hidden not be applied for GTK+,
visibility of some symbols is required for threading to be initialized properly by
WebKit2 processes, and we will rely on a linker script that will be added later on,
for production builds.

Source/_javascript_Core:

* CMakeLists.txt: use target type instead of SHARED_CORE to decide whether
_javascript_Core is a shared library, since it's always shared for GTK+ regardless
of SHARED_CORE.

Modified Paths

Diff

Modified: trunk/CMakeLists.txt (160811 => 160812)


--- trunk/CMakeLists.txt	2013-12-19 01:22:56 UTC (rev 160811)
+++ trunk/CMakeLists.txt	2013-12-19 01:35:02 UTC (rev 160812)
@@ -116,7 +116,11 @@
     set(_javascript_Core_LIBRARY_TYPE SHARED)
     set(WebCore_LIBRARY_TYPE SHARED)
 else ()
-    set(_javascript_Core_LIBRARY_TYPE STATIC)
+    if (${PORT} STREQUAL GTK)
+        set(_javascript_Core_LIBRARY_TYPE SHARED)
+    else ()
+        set(_javascript_Core_LIBRARY_TYPE STATIC)
+    endif ()
     set(WebCore_LIBRARY_TYPE STATIC)
 endif ()
 

Modified: trunk/ChangeLog (160811 => 160812)


--- trunk/ChangeLog	2013-12-19 01:22:56 UTC (rev 160811)
+++ trunk/ChangeLog	2013-12-19 01:35:02 UTC (rev 160812)
@@ -1,3 +1,16 @@
+2013-12-18  Gustavo Noronha Silva  <g...@gnome.org>
+
+        [GTK][CMake] make libjavascriptcoregtk a public shared library again
+        https://bugs.webkit.org/show_bug.cgi?id=125512
+
+        Reviewed by Martin Robinson.
+
+        * CMakeLists.txt: make _javascript_Core always be a shared library for the GTK+ port.
+        * Source/cmake/WebKitHelpers.cmake: make -fvisibility=hidden not be applied for GTK+,
+        visibility of some symbols is required for threading to be initialized properly by
+        WebKit2 processes, and we will rely on a linker script that will be added later on,
+        for production builds.
+
 2013-12-16  Martin Robinson  <mrobin...@igalia.com>
 
         [GTK] [CMake] Add support for building WebKit1

Modified: trunk/Source/_javascript_Core/CMakeLists.txt (160811 => 160812)


--- trunk/Source/_javascript_Core/CMakeLists.txt	2013-12-19 01:22:56 UTC (rev 160811)
+++ trunk/Source/_javascript_Core/CMakeLists.txt	2013-12-19 01:35:02 UTC (rev 160812)
@@ -761,7 +761,7 @@
     set_target_properties(_javascript_Core PROPERTIES OUTPUT_NAME ${_javascript_Core_OUTPUT_NAME})
 endif ()
 
-if (SHARED_CORE)
+if (${_javascript_Core_LIBRARY_TYPE} STREQUAL "SHARED_LIBRARY")
     set_target_properties(_javascript_Core PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})
     install(TARGETS _javascript_Core DESTINATION "${LIB_INSTALL_DIR}")
 endif ()

Modified: trunk/Source/_javascript_Core/ChangeLog (160811 => 160812)


--- trunk/Source/_javascript_Core/ChangeLog	2013-12-19 01:22:56 UTC (rev 160811)
+++ trunk/Source/_javascript_Core/ChangeLog	2013-12-19 01:35:02 UTC (rev 160812)
@@ -1,3 +1,14 @@
+2013-12-18  Gustavo Noronha Silva  <g...@gnome.org>
+
+        [GTK][CMake] make libjavascriptcoregtk a public shared library again
+        https://bugs.webkit.org/show_bug.cgi?id=125512
+
+        Reviewed by Martin Robinson.
+
+        * CMakeLists.txt: use target type instead of SHARED_CORE to decide whether
+        _javascript_Core is a shared library, since it's always shared for GTK+ regardless
+        of SHARED_CORE.
+
 2013-12-18  Benjamin Poulain  <benja...@webkit.org>
 
         Add a simple stack abstraction for x86_64

Modified: trunk/Source/cmake/WebKitHelpers.cmake (160811 => 160812)


--- trunk/Source/cmake/WebKitHelpers.cmake	2013-12-19 01:22:56 UTC (rev 160811)
+++ trunk/Source/cmake/WebKitHelpers.cmake	2013-12-19 01:35:02 UTC (rev 160812)
@@ -24,7 +24,9 @@
             set(OLD_COMPILE_FLAGS "-fno-tree-sra ${OLD_COMPILE_FLAGS}")
         endif ()
 
-        if (NOT SHARED_CORE)
+        # For GTK+ we will rely on a linker script to deal with symbol visibility on
+        # production builds, we want all symbols visible for development builds.
+        if (NOT SHARED_CORE AND NOT ${PORT} STREQUAL "GTK")
             set(OLD_COMPILE_FLAGS "-fvisibility=hidden ${OLD_COMPILE_FLAGS}")
         endif ()
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to