| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
pkg_check_modules(FUSE ...) in fuse.cmake tells CMake's pkg-config
module to use FUSE as the variable prefix. pkg-config then populates
FUSE_PREFIX with the install prefix of libfuse (i.e., usr). This
overwrote the FUSE_PREFIX cache variable set to /tmp/ouroboros in
global.cmake.
IRMd was calling mkdir("/usr", 0777) on startup and rmdir("/usr") on
shutdown. The rmdir only fails because usr isn't empty — if it ever
were (e.g., in a minimal container), it would deleted /usr.
The fix renames the pkg-config prefix from FUSE to FUSE_PKG, so
pkg-config populates FUSE_PKG_PREFIX (harmless) instead of clobbering
FUSE_PREFIX.
Signed-off-by: Dimitri Staessens <dimitri@ouroboros.rocks>
Signed-off-by: Sander Vrijders <sander@ouroboros.rocks>
|
|
|
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 <dimitri@ouroboros.rocks>
Signed-off-by: Sander Vrijders <sander@ouroboros.rocks>
|