summaryrefslogtreecommitdiff
path: root/src/irmd/CMakeLists.txt
diff options
context:
space:
mode:
authordimitri staessens <[email protected]>2017-08-18 15:56:55 +0200
committerdimitri staessens <[email protected]>2017-08-21 10:25:19 +0200
commit8f58e5a3ec0e4a15fc8ae0911cc864f5dbf86c6e (patch)
tree0535742162921dc0d19c16f5b02d2f1c8f4fc493 /src/irmd/CMakeLists.txt
parenteefae235dd7af96eef3dc4f82f706170c379d260 (diff)
downloadouroboros-8f58e5a3ec0e4a15fc8ae0911cc864f5dbf86c6e.tar.gz
ouroboros-8f58e5a3ec0e4a15fc8ae0911cc864f5dbf86c6e.zip
build: Revise the build system
This revises the build system to have configuration per system component. System settings can now be set using cmake. The standard compliance defines were removed from configuration header and are set in the sources where needed. Also some small code refactors, such as moving the data for shims out of the ipcp structure to the respective shims were performed.
Diffstat (limited to 'src/irmd/CMakeLists.txt')
-rw-r--r--src/irmd/CMakeLists.txt22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/irmd/CMakeLists.txt b/src/irmd/CMakeLists.txt
index 930c7b05..3339991a 100644
--- a/src/irmd/CMakeLists.txt
+++ b/src/irmd/CMakeLists.txt
@@ -4,6 +4,28 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR})
include_directories(${CMAKE_SOURCE_DIR}/include)
include_directories(${CMAKE_BINARY_DIR}/include)
+set(IRMD_ACCEPT_TIMEOUT 100 CACHE STRING
+ "Timeout for accept in IRMD mainloop threads (ms)")
+set(IRMD_REQ_ARR_TIMEOUT 500 CACHE STRING
+ "Timeout for an application to respond to a new flow (ms)")
+set(IRMD_FLOW_TIMEOUT 5000 CACHE STRING
+ "Timeout for a flow allocation response (ms)")
+set(BOOTSTRAP_TIMEOUT 5000 CACHE STRING
+ "Timeout for an IPCP to bootstrap (ms)")
+set(ENROLL_TIMEOUT 60000 CACHE STRING
+ "Timeout for an IPCP to enroll (ms)")
+set(REG_TIMEOUT 10000 CACHE STRING
+ "Timeout for registering a name (ms)")
+set(QUERY_TIMEOUT 3000 CACHE STRING
+ "Timeout to query a name with an IPCP (ms)")
+set(IRMD_MIN_THREADS 8 CACHE STRING
+ "Minimum number of worker threads in the IRMd.")
+set(IRMD_ADD_THREADS 8 CACHE STRING
+ "Number of extra threads to start when the IRMD faces thread starvation")
+
+configure_file("${CMAKE_CURRENT_SOURCE_DIR}/config.h.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/config.h" @ONLY)
+
set(SOURCE_FILES
# Add source files here
api_table.c