mirror of https://github.com/oxen-io/lokinet
fix up cmake lokimq target
This commit is contained in:
parent
78b40d6725
commit
686b13b2f3
|
@ -78,6 +78,7 @@ include(cmake/target_link_libraries_system.cmake)
|
|||
include(cmake/add_import_library.cmake)
|
||||
include(cmake/add_log_tag.cmake)
|
||||
include(cmake/libatomic.cmake)
|
||||
include(cmake/link_dep_libs.cmake)
|
||||
|
||||
if (STATIC_LINK)
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_STATIC_LIBRARY_SUFFIX})
|
||||
|
@ -148,10 +149,14 @@ endif()
|
|||
|
||||
option(FORCE_LOKIMQ_SUBMODULE "force using lokimq submodule" OFF)
|
||||
if(NOT FORCE_LOKIMQ_SUBMODULE)
|
||||
find_package(LokiMQ 1.2)
|
||||
pkg_check_modules(LOKIMQ liblokimq>=1.2)
|
||||
endif()
|
||||
if(LokiMQ_FOUND)
|
||||
message(STATUS "using system lokimq")
|
||||
if(LOKIMQ_FOUND)
|
||||
add_library(lokimq INTERFACE)
|
||||
link_dep_libs(lokimq INTERFACE "${LOKIMQ_LIBRARY_DIRS}" ${LOKIMQ_LIBRARIES})
|
||||
target_include_directories(lokimq INTERFACE ${LOKIMQ_INCLUDE_DIRS})
|
||||
add_library(lokimq::lokimq ALIAS lokimq)
|
||||
message(STATUS "Found system liblokimq ${LOKIMQ_VERSION}")
|
||||
else()
|
||||
message(STATUS "using lokimq submodule")
|
||||
add_subdirectory(${CMAKE_SOURCE_DIR}/external/loki-mq)
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
find_package(PkgConfig)
|
||||
if (PKG_CONFIG_FOUND)
|
||||
pkg_check_modules(PC_LOKIMQ QUIET liblokimq>=${LokiMQ_VERSION})
|
||||
endif()
|
||||
|
||||
find_path(LOKIMQ_INCLUDE_DIR lokimq/lokimq.h
|
||||
HINTS ${PC_LOKIMQ_INCLUDEDIR} ${PC_LOKIMQ_INCLUDE_DIRS})
|
||||
|
||||
find_library(LOKIMQ_LIBRARY NAMES lokimq
|
||||
HINTS ${PC_LOKIMQ_LIBDIR} ${PC_LOKIMQ_LIBRARY_DIRS})
|
||||
|
||||
mark_as_advanced(LOKIMQ_INCLUDE_DIR LOKIMQ_LIBRARY)
|
||||
|
||||
set(LOKIMQ_LIBRARIES ${LOKIMQ_LIBRARY} ${PC_LOKIMQ_LIBRARIES})
|
||||
set(LOKIMQ_INCLUDE_DIRS ${LOKIMQ_INCLUDE_DIR})
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(LokiMQ DEFAULT_MSG
|
||||
LOKIMQ_LIBRARY LOKIMQ_INCLUDE_DIR)
|
||||
|
||||
mark_as_advanced(LOKIMQ_INCLUDE_DIR LOKIMQ_LIBRARY)
|
|
@ -0,0 +1,13 @@
|
|||
# Properly links a target to a list of library names by finding the given libraries. Takes:
|
||||
# - a target
|
||||
# - a linktype (e.g. INTERFACE, PUBLIC, PRIVATE)
|
||||
# - a library search path (or "" for defaults)
|
||||
# - any number of library names
|
||||
function(link_dep_libs target linktype libdirs)
|
||||
foreach(lib ${ARGN})
|
||||
find_library(link_lib-${lib} NAMES ${lib} PATHS ${libdirs})
|
||||
if(link_lib-${lib})
|
||||
target_link_libraries(${target} ${linktype} ${link_lib-${lib}})
|
||||
endif()
|
||||
endforeach()
|
||||
endfunction()
|
Loading…
Reference in New Issue