[CMake] Options should be marked as advanced by default
authormcatanzaro@igalia.com <mcatanzaro@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 11 Apr 2015 18:13:10 +0000 (18:13 +0000)
committermcatanzaro@igalia.com <mcatanzaro@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 11 Apr 2015 18:13:10 +0000 (18:13 +0000)
https://bugs.webkit.org/show_bug.cgi?id=143572

Reviewed by Gyuyoung Kim.

Options defined with WEBKIT_OPTION_DEFINE are now advanced so that they are hidden from
users by default, unless WEBKIT_OPTION_DEFAULT_PORT_VALUE is used. Add new macros
WEBKIT_OPTION_DEFINE_PUBLIC to define an option that's not hidden by default, to be used
for adding port-specific options, and WEBKIT_OPTION_PRIVATE_PORT_VALUE to override an
option without making it public.

* Source/cmake/WebKitFeatures.cmake:

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

ChangeLog
Source/cmake/WebKitFeatures.cmake

index 525526a..33dd8ed 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2015-04-11  Michael Catanzaro  <mcatanzaro@igalia.com>
+
+        [CMake] Options should be marked as advanced by default
+        https://bugs.webkit.org/show_bug.cgi?id=143572
+
+        Reviewed by Gyuyoung Kim.
+
+        Options defined with WEBKIT_OPTION_DEFINE are now advanced so that they are hidden from
+        users by default, unless WEBKIT_OPTION_DEFAULT_PORT_VALUE is used. Add new macros
+        WEBKIT_OPTION_DEFINE_PUBLIC to define an option that's not hidden by default, to be used
+        for adding port-specific options, and WEBKIT_OPTION_PRIVATE_PORT_VALUE to override an
+        option without making it public.
+
+        * Source/cmake/WebKitFeatures.cmake:
+
 2015-04-10  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
 
         [CMake] Remove unnecessary ENABLE_WEBCORE switch
index 32c235d..c18f81b 100644 (file)
@@ -6,8 +6,18 @@ macro(WEBKIT_OPTION_DEFINE _name _description _initialvalue)
     list(APPEND _WEBKIT_AVAILABLE_OPTIONS ${_name})
 endmacro()
 
+macro(WEBKIT_OPTION_DEFINE_PUBLIC _name _description _initialvalue)
+    WEBKIT_OPTION_DEFINE(${_name} ${_description} ${_initialvalue})
+    set(_WEBKIT_AVAILABLE_OPTIONS_ISPUBLIC_${_name} TRUE)
+endmacro()
+
 macro(WEBKIT_OPTION_DEFAULT_PORT_VALUE _name _value)
     set(_WEBKIT_AVAILABLE_OPTIONS_INITIALVALUE_${_name} ${_value})
+    set(_WEBKIT_AVAILABLE_OPTIONS_ISPUBLIC_${_name} TRUE)
+endmacro()
+
+macro(WEBKIT_OPTION_PRIVATE_PORT_VALUE _name _value)
+    set(_WEBKIT_AVAILABLE_OPTIONS_INITIALVALUE_${_name} ${_value})
 endmacro()
 
 macro(WEBKIT_OPTION_DEPEND _name _depend)
@@ -160,6 +170,9 @@ endmacro()
 macro(WEBKIT_OPTION_END)
     foreach (_name ${_WEBKIT_AVAILABLE_OPTIONS})
         option(${_name} "${_WEBKIT_AVAILABLE_OPTIONS_DESCRIPTION_${_name}}" ${_WEBKIT_AVAILABLE_OPTIONS_INITIALVALUE_${_name}})
+        if (NOT _WEBKIT_AVAILABLE_OPTIONS_ISPUBLIC_${_name})
+            mark_as_advanced(FORCE ${_name})
+        endif ()
     endforeach ()
 
     set(_MAX_FEATURE_LENGTH 0)
@@ -203,6 +216,9 @@ macro(WEBKIT_OPTION_END)
         endif ()
 
         set(_MESSAGE "${_MESSAGE} ${${_name}}")
-        message(STATUS "${_MESSAGE}")
+
+        if (_WEBKIT_AVAILABLE_OPTIONS_ISPUBLIC_${_name})
+            message(STATUS "${_MESSAGE}")
+        endif ()
     endforeach ()
 endmacro()