CMake: Use in-tree dynstr if not available
This commit is contained in:
parent
584de479cb
commit
280d400877
|
@ -7,7 +7,14 @@ add_library(${PROJECT_NAME}
|
||||||
http.c
|
http.c
|
||||||
server.c
|
server.c
|
||||||
wildcard_cmp.c)
|
wildcard_cmp.c)
|
||||||
add_subdirectory(dynstr)
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_LIST_DIR}/cmake)
|
||||||
|
find_package(dynstr 0.1.0)
|
||||||
|
|
||||||
|
if(NOT DYNSTR_FOUND)
|
||||||
|
message(STATUS "Using in-tree dynstr")
|
||||||
|
add_subdirectory(dynstr)
|
||||||
|
endif()
|
||||||
|
|
||||||
target_include_directories(${PROJECT_NAME} PUBLIC include)
|
target_include_directories(${PROJECT_NAME} PUBLIC include)
|
||||||
target_link_libraries(${PROJECT_NAME} PUBLIC dynstr)
|
target_link_libraries(${PROJECT_NAME} PUBLIC dynstr)
|
||||||
install(TARGETS ${PROJECT_NAME})
|
install(TARGETS ${PROJECT_NAME})
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
mark_as_advanced(DYNSTR_LIBRARY DYNSTR_INCLUDE_DIR)
|
||||||
|
find_library(DYNSTR_LIBRARY NAMES dynstr)
|
||||||
|
find_path(DYNSTR_INCLUDE_DIR NAMES dynstr PATH_SUFFIXES include)
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
find_package_handle_standard_args(dynstr
|
||||||
|
DEFAULT_MSG DYNSTR_LIBRARY DYNSTR_INCLUDE_DIR)
|
||||||
|
|
||||||
|
if(DYNSTR_FOUND)
|
||||||
|
if(NOT TARGET dynstr)
|
||||||
|
add_library(dynstr UNKNOWN IMPORTED)
|
||||||
|
set_target_properties(dynstr PROPERTIES
|
||||||
|
INTERFACE_INCLUDE_DIRECTORIES "${DYNSTR_INCLUDE_DIR}"
|
||||||
|
IMPORTED_LOCATION "${DYNSTR_LIBRARY}")
|
||||||
|
endif()
|
||||||
|
endif()
|
Loading…
Reference in New Issue