diff options
| author | Dimitri Staessens <dimitri@ouroboros.rocks> | 2025-12-23 11:59:45 +0100 |
|---|---|---|
| committer | Sander Vrijders <sander@ouroboros.rocks> | 2026-01-07 10:00:06 +0100 |
| commit | 48c294105f5123dc876fbad199ec1e0166d82a18 (patch) | |
| tree | c49ce8ac75a7d63c10ea1ff960eeff750c680a8e /cmake/lib/dev.cmake | |
| parent | 145be13e8c18fcb39476d8f65fed23d82320f22f (diff) | |
| download | ouroboros-48c294105f5123dc876fbad199ec1e0166d82a18.tar.gz ouroboros-48c294105f5123dc876fbad199ec1e0166d82a18.zip | |
build: Refactor CMake modules
This moves the CMake build logic out of the source tree and splits it
up into a more modular form. The tests now have a CMakeLists.txt file
in their respective source directory.
Signed-off-by: Dimitri Staessens <dimitri@ouroboros.rocks>
Signed-off-by: Sander Vrijders <sander@ouroboros.rocks>
Diffstat (limited to 'cmake/lib/dev.cmake')
| -rw-r--r-- | cmake/lib/dev.cmake | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/cmake/lib/dev.cmake b/cmake/lib/dev.cmake new file mode 100644 index 00000000..21fe140d --- /dev/null +++ b/cmake/lib/dev.cmake @@ -0,0 +1,37 @@ +set(SOURCE_FILES_DEV + cep.c + dev.c +) + +# Convert relative paths to absolute +set(SOURCE_FILES_DEV_ABS) +foreach(src ${SOURCE_FILES_DEV}) + list(APPEND SOURCE_FILES_DEV_ABS "${LIB_SOURCE_DIR}/${src}") +endforeach() + +add_library(ouroboros-dev SHARED + ${SOURCE_FILES_DEV_ABS} + ${CEP_PROTO_SRCS}) + +set_target_properties(ouroboros-dev PROPERTIES + VERSION ${PACKAGE_VERSION} + SOVERSION ${PACKAGE_VERSION_MAJOR}.${PACKAGE_VERSION_MINOR}) + +if (CMAKE_BUILD_TYPE MATCHES "Debug*") + add_compile_flags(ouroboros-dev -DCONFIG_OUROBOROS_DEBUG) +endif () + +target_include_directories(ouroboros-dev PUBLIC + ${LIB_SOURCE_DIR} + ${LIB_BINARY_DIR} + ${CMAKE_SOURCE_DIR}/include + ${CMAKE_BINARY_DIR}/include + ${CMAKE_BINARY_DIR} + ${PROTOBUF_C_INCLUDE_DIRS} + ${SYS_RND_HDR} + ${LIBGCRYPT_INCLUDE_DIR} + ${OPENSSL_INCLUDE_DIR}) + +target_link_libraries(ouroboros-dev ouroboros-common) + +install(TARGETS ouroboros-dev LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
