diff --git a/CMakeLists.txt b/CMakeLists.txt index 258adda..97476aa 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,27 +4,32 @@ project(cyberiadaml VERSION 1.0) include(cmake/CPM.cmake) -CPMUsePackageLock(package-lock.cmake) -CPMAddPackage("gh:GNOME/libxml2@2.13.2") - set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -D__DEBUG__") -add_library(cyberiadaml SHARED cyberiadaml.c utf8enc.c cyb_types.c cyb_string.c geometry.c) -target_include_directories(cyberiadaml PUBLIC - $ - $ - "${LIBXML2_INCLUDE_DIR}") -target_link_directories(cyberiadaml PUBLIC "${LIBXML2_LIBRARY}") -target_link_libraries(cyberiadaml PUBLIC - "${LIBXML2_LIBRARIES}" - m) +CPMAddPackage("gh:GNOME/libxml2@2.13.2") -add_executable(cyberiada_test test.c) -target_include_directories(cyberiada_test PUBLIC - $ - $) -target_link_directories(cyberiada_test PUBLIC "${PROJECT_BINARY_DIR}") -target_link_libraries(cyberiada_test PUBLIC cyberiadaml) +add_library( + cyberiadaml + SHARED + src/cyberiadaml.c + src/utf8enc.c + src/cyb_types.c + src/cyb_string.c + src/geometry.c +) + +target_include_directories(cyberiadaml PRIVATE + $ + $) + +target_link_libraries(cyberiadaml PRIVATE LibXml2::LibXml2) + +add_executable(cyberiada_test src/test.c) +target_include_directories(cyberiada_test PRIVATE + $ + $) +target_link_directories(cyberiada_test PRIVATE "${PROJECT_BINARY_DIR}") +target_link_libraries(cyberiada_test PRIVATE cyberiadaml) install(TARGETS cyberiadaml DESTINATION lib EXPORT cyberiadaml) install(FILES cyberiadaml.h ${CMAKE_CURRENT_SOURCE_DIR}/cyberiadaml.h @@ -33,7 +38,10 @@ install(EXPORT cyberiadaml DESTINATION lib/cmake) configure_file( ${PROJECT_SOURCE_DIR}/cyberiadaml-config.cmake.in - ${PROJECT_BINARY_DIR}/cyberiadaml-config.cmake @ONLY) + ${PROJECT_BINARY_DIR}/cyberiadaml-config.cmake @ONLY +) -install(FILES ${PROJECT_BINARY_DIR}/cyberiadaml-config.cmake - DESTINATION lib/cmake) +install( + FILES ${PROJECT_BINARY_DIR}/cyberiadaml-config.cmake + DESTINATION lib/cmake +) diff --git a/cyb_error.h b/src/cyb_error.h similarity index 100% rename from cyb_error.h rename to src/cyb_error.h diff --git a/cyb_string.c b/src/cyb_string.c similarity index 100% rename from cyb_string.c rename to src/cyb_string.c diff --git a/cyb_string.h b/src/cyb_string.h similarity index 100% rename from cyb_string.h rename to src/cyb_string.h diff --git a/cyb_types.c b/src/cyb_types.c similarity index 100% rename from cyb_types.c rename to src/cyb_types.c diff --git a/cyb_types.h b/src/cyb_types.h similarity index 100% rename from cyb_types.h rename to src/cyb_types.h diff --git a/cyberiadaml.c b/src/cyberiadaml.c similarity index 100% rename from cyberiadaml.c rename to src/cyberiadaml.c diff --git a/cyberiadaml.h b/src/cyberiadaml.h similarity index 100% rename from cyberiadaml.h rename to src/cyberiadaml.h diff --git a/geometry.c b/src/geometry.c similarity index 100% rename from geometry.c rename to src/geometry.c diff --git a/geometry.h b/src/geometry.h similarity index 100% rename from geometry.h rename to src/geometry.h diff --git a/test.c b/src/test.c similarity index 100% rename from test.c rename to src/test.c diff --git a/test_utf8.c b/src/test_utf8.c similarity index 100% rename from test_utf8.c rename to src/test_utf8.c diff --git a/utf8enc.c b/src/utf8enc.c similarity index 100% rename from utf8enc.c rename to src/utf8enc.c diff --git a/utf8enc.h b/src/utf8enc.h similarity index 100% rename from utf8enc.h rename to src/utf8enc.h