5 SET(WEBKIT_FEATURES "")
10 MACRO(WEBKIT_SEPARATE_FEATURES _name _value)
12 LIST(APPEND ${f}_FEATURES "${_name}=${_value}")
14 ENDMACRO(WEBKIT_SEPARATE_FEATURES)
16 MACRO(WEBKIT_FEATURE_CHECK_DEPS _deps _deps_ok)
19 LIST(LENGTH ${_deps} ${_deps_ok}_LIST_SIZE)
20 IF (${${_deps_ok}_LIST_SIZE} GREATER 1)
21 FOREACH(_dep ${${_deps}})
23 SET(${_deps_ok} FALSE)
29 SET(${_deps_ok} FALSE)
34 MACRO(WEBKIT_FEATURE _feature _description _type _args)
35 IF (${_type} EQUAL ${DEPENDS})
36 WEBKIT_FEATURE_CHECK_DEPS(${_args} DEPS_OK_${_feature})
37 OPTION(${_feature} "${_description}" DEPS_OK_${_feature})
38 ELSEIF (${_type} EQUAL ${DEFAULT})
39 OPTION(${_feature} "${_description}" ${_args})
40 ELSEIF (${_type} EQUAL ${ALWAYS})
41 SET(${_feature} ${_args})
44 LIST(APPEND WEBKIT_FEATURES ${_feature})
48 WEBKIT_SEPARATE_FEATURES(${_feature} 1 ${ARGN})
49 LIST(APPEND FEATURE_DEFINES ${_feature})
52 WEBKIT_SEPARATE_FEATURES(${_feature} 0 ${ARGN})
56 MACRO(WEBKIT_PRINT_FEATURES)
57 MESSAGE(STATUS "Enabled features:")
59 SET(MAX_FEATURE_LENGTH 0)
60 FOREACH (_feature ${WEBKIT_FEATURES})
61 STRING(LENGTH ${_feature} FEATURE_LENGTH)
62 IF (FEATURE_LENGTH GREATER MAX_FEATURE_LENGTH)
63 SET(MAX_FEATURE_LENGTH ${FEATURE_LENGTH})
68 FOREACH (_feature ${WEBKIT_FEATURES})
69 STRING(LENGTH ${_feature} FEATURE_LENGTH)
73 FOREACH (IGNORE RANGE ${FEATURE_LENGTH} ${MAX_FEATURE_LENGTH})
74 SET(SPACES "${SPACES} ")
78 FOREACH (IGNORE RANGE ${FEATURE_LENGTH} ${MAX_FEATURE_LENGTH})
79 SET(SPACES "${SPACES}.")
85 MESSAGE(STATUS " ${_feature} ${SPACES} ON")
87 MESSAGE(STATUS " ${_feature} ${SPACES} OFF")
92 UNSET(MAX_FEATURE_LENGTH)