REGRESSION(CMake): Make it possible to build without introspection
authorcarlosgc@webkit.org <carlosgc@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 1 Nov 2014 09:55:47 +0000 (09:55 +0000)
committercarlosgc@webkit.org <carlosgc@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 1 Nov 2014 09:55:47 +0000 (09:55 +0000)
https://bugs.webkit.org/show_bug.cgi?id=138006

Reviewed by Philippe Normand.

.:

Add ENABLE_INTROSPECTION option.

* Source/PlatformGTK.cmake: Dot not add gir global target if
introspection is disabled.
* Source/cmake/OptionsGTK.cmake: Do not add gir individual targets if
introspection is disabled.

Source/JavaScriptCore:

Do not install introspection files when introspection is disabled.

* PlatformGTK.cmake:

Source/WebKit2:

Do not install introspection files when introspection is disabled.

* PlatformGTK.cmake:

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

ChangeLog
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/PlatformGTK.cmake
Source/PlatformGTK.cmake
Source/WebKit2/ChangeLog
Source/WebKit2/PlatformGTK.cmake
Source/cmake/OptionsGTK.cmake

index 0071a34..29970a9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2014-11-01  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        REGRESSION(CMake): Make it possible to build without introspection
+        https://bugs.webkit.org/show_bug.cgi?id=138006
+
+        Reviewed by Philippe Normand.
+
+        Add ENABLE_INTROSPECTION option.
+
+        * Source/PlatformGTK.cmake: Dot not add gir global target if
+        introspection is disabled.
+        * Source/cmake/OptionsGTK.cmake: Do not add gir individual targets if
+        introspection is disabled.
+
 2014-10-31  Adrian Perez de Castro  <aperez@igalia.com>
 
         [GTK] Support script message handlers WebKitUserContentManager
index cfd1909..be67533 100644 (file)
@@ -1,3 +1,14 @@
+2014-11-01  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        REGRESSION(CMake): Make it possible to build without introspection
+        https://bugs.webkit.org/show_bug.cgi?id=138006
+
+        Reviewed by Philippe Normand.
+
+        Do not install introspection files when introspection is disabled.
+
+        * PlatformGTK.cmake:
+
 2014-10-31  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
 
         Use std::unique_ptr for TypeCountSet
index 1aa0ae9..437ac78 100644 (file)
@@ -23,12 +23,15 @@ install(FILES API/JavaScript.h
         DESTINATION "${WEBKITGTK_HEADER_INSTALL_DIR}/JavaScriptCore"
 )
 
-install(FILES ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
-        DESTINATION ${INTROSPECTION_INSTALL_GIRDIR}
-)
-install(FILES ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.typelib
-        DESTINATION ${INTROSPECTION_INSTALL_TYPELIBDIR}
-)
+if (ENABLE_INTROSPECTION)
+    install(FILES ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.gir
+            DESTINATION ${INTROSPECTION_INSTALL_GIRDIR}
+    )
+    install(FILES ${CMAKE_BINARY_DIR}/JavaScriptCore-${WEBKITGTK_API_VERSION}.typelib
+            DESTINATION ${INTROSPECTION_INSTALL_TYPELIBDIR}
+    )
+endif ()
+
 add_definitions(-DSTATICALLY_LINKED_WITH_WTF)
 
 list(APPEND JavaScriptCore_LIBRARIES
index a0e421a..0ce6df1 100644 (file)
@@ -1,7 +1,9 @@
 add_subdirectory(${WEBCORE_DIR}/platform/gtk/po)
 
 # This allows exposing a 'gir' target which builds all GObject introspection files.
-add_custom_target(gir ALL DEPENDS ${GObjectIntrospectionTargets})
+if (ENABLE_INTROSPECTION)
+    add_custom_target(gir ALL DEPENDS ${GObjectIntrospectionTargets})
+endif ()
 
 list(APPEND DocumentationDependencies
     GObjectDOMBindings
index 423abec..119a4df 100644 (file)
@@ -1,3 +1,14 @@
+2014-11-01  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        REGRESSION(CMake): Make it possible to build without introspection
+        https://bugs.webkit.org/show_bug.cgi?id=138006
+
+        Reviewed by Philippe Normand.
+
+        Do not install introspection files when introspection is disabled.
+
+        * PlatformGTK.cmake:
+
 2014-10-31  Dan Bernstein  <mitz@apple.com>
 
         Removed a reference to a file that’s been deleted.
index 18748c6..66842e7 100644 (file)
@@ -830,14 +830,17 @@ install(FILES ${WebKit2GTK_INSTALLED_HEADERS}
               ${WebKit2WebExtension_INSTALLED_HEADERS}
         DESTINATION "${WEBKITGTK_HEADER_INSTALL_DIR}/webkit2"
 )
-install(FILES ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
-              ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.gir
-        DESTINATION ${INTROSPECTION_INSTALL_GIRDIR}
-)
-install(FILES ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.typelib
-              ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.typelib
-        DESTINATION ${INTROSPECTION_INSTALL_TYPELIBDIR}
-)
+
+if (ENABLE_INTROSPECTION)
+    install(FILES ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.gir
+                  ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.gir
+            DESTINATION ${INTROSPECTION_INSTALL_GIRDIR}
+    )
+    install(FILES ${CMAKE_BINARY_DIR}/WebKit2-${WEBKITGTK_API_VERSION}.typelib
+                  ${CMAKE_BINARY_DIR}/WebKit2WebExtension-${WEBKITGTK_API_VERSION}.typelib
+            DESTINATION ${INTROSPECTION_INSTALL_TYPELIBDIR}
+    )
+endif ()
 
 file(WRITE ${CMAKE_BINARY_DIR}/gtkdoc-webkit2gtk.cfg
     "[webkit2gtk]\n"
index a75b90e..e3f5f7f 100644 (file)
@@ -15,6 +15,7 @@ set(ENABLE_CREDENTIAL_STORAGE ON CACHE BOOL "Whether or not to enable support fo
 set(ENABLE_GTKDOC OFF CACHE BOOL "Whether or not to use generate gtkdoc.")
 set(ENABLE_X11_TARGET ON CACHE BOOL "Whether to enable support for the X11 windowing target.")
 set(ENABLE_WAYLAND_TARGET OFF CACHE BOOL "Whether to enable support for the Wayland windowing target.")
+set(ENABLE_INTROSPECTION ON CACHE BOOL "Whether to enable GObject introspection.")
 
 # These are shared variables, but we special case their definition so that we can use the
 # CMAKE_INSTALL_* variables that are populated by the GNUInstallDirs macro.
@@ -350,10 +351,12 @@ endif ()
 # Add a typelib file to the list of all typelib dependencies. This makes it easy to
 # expose a 'gir' target with all gobject-introspection files.
 macro(ADD_TYPELIB typelib)
-    get_filename_component(target_name ${typelib} NAME_WE)
-    add_custom_target(${target_name}-gir ALL DEPENDS ${typelib})
-    list(APPEND GObjectIntrospectionTargets ${target_name}-gir)
-    set(GObjectIntrospectionTargets ${GObjectIntrospectionTargets} PARENT_SCOPE)
+    if (ENABLE_INTROSPECTION)
+        get_filename_component(target_name ${typelib} NAME_WE)
+        add_custom_target(${target_name}-gir ALL DEPENDS ${typelib})
+        list(APPEND GObjectIntrospectionTargets ${target_name}-gir)
+        set(GObjectIntrospectionTargets ${GObjectIntrospectionTargets} PARENT_SCOPE)
+    endif ()
 endmacro()
 
 # CMake does not automatically add --whole-archive when building shared objects from