Changeset 197297 in webkit
- Timestamp:
- Feb 28, 2016, 12:11:02 PM (9 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ChangeLog
r197145 r197297 1 2016-02-28 Konstantin Tokarev <annulen@yandex.ru> 2 3 [cmake] Allow using FindGLIB in case glib is optional dependency. 4 https://bugs.webkit.org/show_bug.cgi?id=154796 5 6 Reviewed by Michael Catanzaro. 7 8 FindGLIB caused internal CMake error in case GLIBCONFIG_INCLUDE_DIR is 9 not defined. 10 11 * Source/cmake/FindGLIB.cmake: 12 1 13 2016-02-25 Myles C. Maxfield <mmaxfield@apple.com> 2 14 -
trunk/Source/cmake/FindGLIB.cmake
r171962 r197297 70 70 set(GLIB_INCLUDE_DIRS ${GLIB_INCLUDE_DIR} ${GLIBCONFIG_INCLUDE_DIR}) 71 71 72 # Version detection 73 file(READ "${GLIBCONFIG_INCLUDE_DIR}/glibconfig.h" GLIBCONFIG_H_CONTENTS) 74 string(REGEX MATCH "#define GLIB_MAJOR_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}") 75 set(GLIB_VERSION_MAJOR "${CMAKE_MATCH_1}") 76 string(REGEX MATCH "#define GLIB_MINOR_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}") 77 set(GLIB_VERSION_MINOR "${CMAKE_MATCH_1}") 78 string(REGEX MATCH "#define GLIB_MICRO_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}") 79 set(GLIB_VERSION_MICRO "${CMAKE_MATCH_1}") 80 set(GLIB_VERSION "${GLIB_VERSION_MAJOR}.${GLIB_VERSION_MINOR}.${GLIB_VERSION_MICRO}") 72 if (${GLIBCONFIG_INCLUDE_DIR}) 73 # Version detection 74 file(READ "${GLIBCONFIG_INCLUDE_DIR}/glibconfig.h" GLIBCONFIG_H_CONTENTS) 75 string(REGEX MATCH "#define GLIB_MAJOR_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}") 76 set(GLIB_VERSION_MAJOR "${CMAKE_MATCH_1}") 77 string(REGEX MATCH "#define GLIB_MINOR_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}") 78 set(GLIB_VERSION_MINOR "${CMAKE_MATCH_1}") 79 string(REGEX MATCH "#define GLIB_MICRO_VERSION ([0-9]+)" _dummy "${GLIBCONFIG_H_CONTENTS}") 80 set(GLIB_VERSION_MICRO "${CMAKE_MATCH_1}") 81 set(GLIB_VERSION "${GLIB_VERSION_MAJOR}.${GLIB_VERSION_MINOR}.${GLIB_VERSION_MICRO}") 81 82 82 # Additional Glib components. We only look for libraries, as not all of them83 # have corresponding headers and all headers are installed alongside the main84 # glib ones.85 foreach (_component ${GLIB_FIND_COMPONENTS})86 if (${_component} STREQUAL "gio")87 find_library(GLIB_GIO_LIBRARIES NAMES gio-2.0 HINTS ${_GLIB_LIBRARY_DIR})88 set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GIO_LIBRARIES)89 elseif (${_component} STREQUAL "gobject")90 find_library(GLIB_GOBJECT_LIBRARIES NAMES gobject-2.0 HINTS ${_GLIB_LIBRARY_DIR})91 set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GOBJECT_LIBRARIES)92 elseif (${_component} STREQUAL "gmodule")93 find_library(GLIB_GMODULE_LIBRARIES NAMES gmodule-2.0 HINTS ${_GLIB_LIBRARY_DIR})94 set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GMODULE_LIBRARIES)95 elseif (${_component} STREQUAL "gthread")96 find_library(GLIB_GTHREAD_LIBRARIES NAMES gthread-2.0 HINTS ${_GLIB_LIBRARY_DIR})97 set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GTHREAD_LIBRARIES)98 elseif (${_component} STREQUAL "gio-unix")99 # gio-unix is compiled as part of the gio library, but the include paths100 # are separate from the shared glib ones. Since this is currently only used101 # by WebKitGTK+ we don't go to extraordinary measures beyond pkg-config.102 pkg_check_modules(GIO_UNIX QUIET gio-unix-2.0)103 endif ()104 endforeach ()83 # Additional Glib components. We only look for libraries, as not all of them 84 # have corresponding headers and all headers are installed alongside the main 85 # glib ones. 86 foreach (_component ${GLIB_FIND_COMPONENTS}) 87 if (${_component} STREQUAL "gio") 88 find_library(GLIB_GIO_LIBRARIES NAMES gio-2.0 HINTS ${_GLIB_LIBRARY_DIR}) 89 set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GIO_LIBRARIES) 90 elseif (${_component} STREQUAL "gobject") 91 find_library(GLIB_GOBJECT_LIBRARIES NAMES gobject-2.0 HINTS ${_GLIB_LIBRARY_DIR}) 92 set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GOBJECT_LIBRARIES) 93 elseif (${_component} STREQUAL "gmodule") 94 find_library(GLIB_GMODULE_LIBRARIES NAMES gmodule-2.0 HINTS ${_GLIB_LIBRARY_DIR}) 95 set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GMODULE_LIBRARIES) 96 elseif (${_component} STREQUAL "gthread") 97 find_library(GLIB_GTHREAD_LIBRARIES NAMES gthread-2.0 HINTS ${_GLIB_LIBRARY_DIR}) 98 set(ADDITIONAL_REQUIRED_VARS ${ADDITIONAL_REQUIRED_VARS} GLIB_GTHREAD_LIBRARIES) 99 elseif (${_component} STREQUAL "gio-unix") 100 # gio-unix is compiled as part of the gio library, but the include paths 101 # are separate from the shared glib ones. Since this is currently only used 102 # by WebKitGTK+ we don't go to extraordinary measures beyond pkg-config. 103 pkg_check_modules(GIO_UNIX QUIET gio-unix-2.0) 104 endif () 105 endforeach () 105 106 106 include(FindPackageHandleStandardArgs) 107 FIND_PACKAGE_HANDLE_STANDARD_ARGS(GLIB REQUIRED_VARS GLIB_INCLUDE_DIRS GLIB_LIBRARIES ${ADDITIONAL_REQUIRED_VARS} 108 VERSION_VAR GLIB_VERSION) 107 include(FindPackageHandleStandardArgs) 108 FIND_PACKAGE_HANDLE_STANDARD_ARGS(GLIB REQUIRED_VARS GLIB_INCLUDE_DIRS GLIB_LIBRARIES ${ADDITIONAL_REQUIRED_VARS} 109 VERSION_VAR GLIB_VERSION) 110 endif () 109 111 110 112 mark_as_advanced(
Note:
See TracChangeset
for help on using the changeset viewer.