add cyberiadaml CMake package
This commit is contained in:
@@ -9,7 +9,8 @@ endif()
|
||||
|
||||
add_library(cyberiadaml SHARED cyberiadaml.c utf8enc.c cyb_types.c cyb_string.c)
|
||||
target_include_directories(cyberiadaml PUBLIC
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
||||
$<INSTALL_INTERFACE:include/cyberiada>
|
||||
"${LIBXML2_INCLUDE_DIR}")
|
||||
target_link_directories(cyberiadaml PUBLIC "${LIBXML2_LIBRARY}")
|
||||
target_link_libraries(cyberiadaml PUBLIC
|
||||
@@ -17,10 +18,20 @@ target_link_libraries(cyberiadaml PUBLIC
|
||||
m)
|
||||
|
||||
add_executable(cyberiada_test test.c)
|
||||
target_include_directories(cyberiada_test PUBLIC "${PROJECT_BINARY_DIR}")
|
||||
target_include_directories(cyberiada_test PUBLIC
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
||||
$<INSTALL_INTERFACE:include/cyberiada>)
|
||||
target_link_directories(cyberiada_test PUBLIC "${PROJECT_BINARY_DIR}")
|
||||
target_link_libraries(cyberiada_test PUBLIC cyberiadaml)
|
||||
|
||||
install(TARGETS cyberiadaml DESTINATION lib)
|
||||
install(TARGETS cyberiadaml DESTINATION lib EXPORT cyberiadaml)
|
||||
install(FILES cyberiadaml.h ${CMAKE_CURRENT_SOURCE_DIR}/cyberiadaml.h
|
||||
DESTINATION include/cyberiadaml)
|
||||
DESTINATION include/cyberiada)
|
||||
install(EXPORT cyberiadaml DESTINATION lib/cmake)
|
||||
|
||||
configure_file(
|
||||
${PROJECT_SOURCE_DIR}/cyberiadaml-config.cmake.in
|
||||
${PROJECT_BINARY_DIR}/cyberiadaml-config.cmake @ONLY)
|
||||
|
||||
install(FILES ${PROJECT_BINARY_DIR}/cyberiadaml-config.cmake
|
||||
DESTINATION lib/cmake)
|
||||
|
||||
8
cyberiadaml-config.cmake.in
Normal file
8
cyberiadaml-config.cmake.in
Normal file
@@ -0,0 +1,8 @@
|
||||
get_filename_component(_dir "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||
get_filename_component(_prefix "${_dir}/../.." ABSOLUTE)
|
||||
|
||||
include("${_prefix}/lib/cmake/cyberiadaml.cmake")
|
||||
|
||||
set(cyberiadaml_INCLUDE_DIRS "${_prefix}/include/")
|
||||
set(cyberiadaml_LIBRARY "${_prefix}/lib/")
|
||||
set(cyberiadaml_LIBRARIES "cyberiadaml")
|
||||
Reference in New Issue
Block a user