CMake: FindGLIB2 to include gthread2 sub-library
Avoids undefined references to g_thread_init. Fixes: QTBUG-86727 Change-Id: Ic41b0dab9e4e23083faf4e9abcf7acc517172e49 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This commit is contained in:
parent
9bcabd71a7
commit
32309fb446
@ -64,6 +64,13 @@ find_library(GLIB2_LIBRARIES
|
||||
HINTS ${PC_GLIB2_LIBDIR}
|
||||
)
|
||||
|
||||
pkg_check_modules(PC_GTHREAD2 QUIET gthread-2.0)
|
||||
|
||||
find_library(GTHREAD2_LIBRARIES
|
||||
NAMES gthread-2.0
|
||||
HINTS ${PC_GTHREAD2_LIBDIR}
|
||||
)
|
||||
|
||||
# search the glibconfig.h include dir under the same root where the library is found
|
||||
get_filename_component(glib2LibDir "${GLIB2_LIBRARIES}" PATH)
|
||||
|
||||
@ -82,13 +89,14 @@ set(GLIB2_INCLUDE_DIR "${GLIB2_INCLUDE_DIRS}")
|
||||
set(GLIB2_LIBRARY "${GLIB2_LIBRARIES}")
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(GLIB2 DEFAULT_MSG GLIB2_LIBRARIES GLIB2_INCLUDE_DIRS)
|
||||
find_package_handle_standard_args(GLIB2 DEFAULT_MSG GLIB2_LIBRARIES GTHREAD2_LIBRARIES GLIB2_INCLUDE_DIRS)
|
||||
|
||||
if(GLIB2_FOUND AND NOT TARGET GLIB2::GLIB2)
|
||||
add_library(GLIB2::GLIB2 UNKNOWN IMPORTED)
|
||||
set_target_properties(GLIB2::GLIB2 PROPERTIES
|
||||
IMPORTED_LOCATION "${GLIB2_LIBRARIES}"
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${GLIB2_INCLUDE_DIRS}")
|
||||
INTERFACE_LINK_LIBRARIES "${GTHREAD2_LIBRARIES}"
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${GLIB2_INCLUDE_DIRS}")
|
||||
endif()
|
||||
|
||||
mark_as_advanced(GLIB2_INCLUDE_DIRS GLIB2_INCLUDE_DIR
|
||||
|
Loading…
x
Reference in New Issue
Block a user