add cyberiadaml CMake package

This commit is contained in:
Alexey Fedoseev
2024-05-09 21:52:58 +03:00
parent 91339d4545
commit 41b4982635
2 changed files with 23 additions and 4 deletions

View File

@@ -9,7 +9,8 @@ endif()
add_library(cyberiadaml SHARED cyberiadaml.c utf8enc.c cyb_types.c cyb_string.c) add_library(cyberiadaml SHARED cyberiadaml.c utf8enc.c cyb_types.c cyb_string.c)
target_include_directories(cyberiadaml PUBLIC target_include_directories(cyberiadaml PUBLIC
"${CMAKE_CURRENT_SOURCE_DIR}" $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<INSTALL_INTERFACE:include/cyberiada>
"${LIBXML2_INCLUDE_DIR}") "${LIBXML2_INCLUDE_DIR}")
target_link_directories(cyberiadaml PUBLIC "${LIBXML2_LIBRARY}") target_link_directories(cyberiadaml PUBLIC "${LIBXML2_LIBRARY}")
target_link_libraries(cyberiadaml PUBLIC target_link_libraries(cyberiadaml PUBLIC
@@ -17,10 +18,20 @@ target_link_libraries(cyberiadaml PUBLIC
m) m)
add_executable(cyberiada_test test.c) 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_directories(cyberiada_test PUBLIC "${PROJECT_BINARY_DIR}")
target_link_libraries(cyberiada_test PUBLIC cyberiadaml) 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 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)

View 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")