From 4c64d7daef8819d644ab78a911067b16943f023d Mon Sep 17 00:00:00 2001 From: Dimitri Staessens Date: Mon, 2 Feb 2026 22:50:17 +0100 Subject: build: Refactor CMake back to in-tree CMakeLists This moves the build definitions back to src/ subdirectories (CMakeLists.txt per component). Configuration and dependencies are kept out of tree. Configuration options are bundled into cmake/config/ modules. Dependencies are grouped by component (system/, crypt/, eth/, coverage/, etc.). It now consistently uses target-based commands (target_include_directories, target_link_libraries) instead of global include_directories(). Proper PRIVATE/PUBLIC visibility for executable link libraries. CONFIG_OUROBOROS_DEBUG now properly set based on being a valid debug config (not just checking the string name). It also adds OuroborosTargets export for find_package() support and CMake package config files (OuroborosConfig.cmake) for easier integration with CMake projects. The build logic now follows more idiomatic CMake practices with configuration separated from target definitions. Signed-off-by: Dimitri Staessens Signed-off-by: Sander Vrijders --- cmake/doc.cmake | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) (limited to 'cmake/doc.cmake') diff --git a/cmake/doc.cmake b/cmake/doc.cmake index 16991f82..f75cde5b 100644 --- a/cmake/doc.cmake +++ b/cmake/doc.cmake @@ -28,20 +28,12 @@ set(MAN_NAMES irm.8 ) -macro(INSTALL_MAN __mans) - foreach (_man ${ARGV}) - string(REGEX REPLACE "^.+[.]([1-9]).gz" "\\1" _mansect ${_man}) - install(FILES ${_man} DESTINATION "${CMAKE_INSTALL_MANDIR}/man${_mansect}") - endforeach (_man) -endmacro(INSTALL_MAN __mans) - find_program(GZIP_EXECUTABLE NAMES gzip DOC "Will gzip the man pages") - mark_as_advanced(GZIP_EXECUTABLE) -if (GZIP_EXECUTABLE) +if(GZIP_EXECUTABLE) # Create the doc output directory file(MAKE_DIRECTORY ${DOC_BINARY_DIR}) @@ -59,6 +51,4 @@ if (GZIP_EXECUTABLE) endforeach () add_custom_target(man ALL DEPENDS ${MAN_FILES}) - - INSTALL_MAN(${MAN_FILES}) -endif () +endif() -- cgit v1.2.3