diff --git a/cmake/FindSlog2.cmake b/cmake/FindSlog2.cmake new file mode 100644 index 00000000000..8ff00e4157b --- /dev/null +++ b/cmake/FindSlog2.cmake @@ -0,0 +1,19 @@ +# Find the Slog2 library + +# Will make the target Slog2::Slog2 available when found. + +find_library(Slog2_LIBRARY NAMES "slog2") +find_path(Slog2_INCLUDE_DIR NAMES "sys/slog2.h" DOC "The Slog2 Include path") + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Slog2 DEFAULT_MSG Slog2_INCLUDE_DIR Slog2_LIBRARY) + +mark_as_advanced(Slog2_INCLUDE_DIR Slog2_LIBRARY) + +if(Slog2_FOUND) + add_library(__Slog2 IMPORTED) + target_link_libraries(__Slog2 INTERFACE ${Slog2_LIBRARY}) + target_include_directories(__Slog2 INTERFACE ${Slog2_INCLUDE_DIR}) + + add_library(Slog2::Slog2 ALIAS __Slog2) +endif() diff --git a/src/corelib/configure.cmake b/src/corelib/configure.cmake index 7436ced79ba..163a5980eca 100644 --- a/src/corelib/configure.cmake +++ b/src/corelib/configure.cmake @@ -24,6 +24,8 @@ find_package(PCRE2) set_package_properties(PCRE2 PROPERTIES TYPE REQUIRED) find_package(PPS) set_package_properties(PPS PROPERTIES TYPE OPTIONAL) +find_package(Slog2) +set_package_properties(Slog2 PROPERTIES TYPE OPTIONAL) #### Tests @@ -477,7 +479,7 @@ qt_feature("renameat2" PRIVATE ) qt_feature("slog2" PRIVATE LABEL "slog2" - CONDITION libs.slog2 OR FIXME + CONDITION Slog2_FOUND ) qt_feature("statx" PRIVATE LABEL "statx() in libc" diff --git a/util/cmake/configurejson2cmake.py b/util/cmake/configurejson2cmake.py index 5c137c394f0..a54a692fac5 100755 --- a/util/cmake/configurejson2cmake.py +++ b/util/cmake/configurejson2cmake.py @@ -74,6 +74,7 @@ def map_library(lib: str) -> Union[str, LibraryMapping, List[str]]: 'pcre2': ['PCRE2', 'REQUIRED'], 'posix_iconv': None, 'pps': 'PPS', + 'slog2': 'Slog2', 'sun_iconv': None, 'udev': 'Libudev', 'vulkan': 'Vulkan',