Mercurial > hg > freeDiameter
view extensions/rt_default/CMakeLists.txt @ 304:ad3c46016584
Added install directives for cmake; also allow default directory to seek for extensions and configuration files
author | Sebastien Decugis <sdecugis@nict.go.jp> |
---|---|
date | Fri, 14 May 2010 17:26:53 +0900 |
parents | 4b62e4a92828 |
children | 61f78fdbacc2 |
line wrap: on
line source
# The rt_default extension PROJECT("Configurable routing extension" C) # Check if REG_STARTEND is provided on the host SET(CHECK_REG_STARTEND_SOURCE_CODE " #include <unistd.h> #include <regex.h> int main() { return regexec(NULL, NULL, 0, NULL, REG_STARTEND); } ") CHECK_C_SOURCE_COMPILES("${CHECK_REG_STARTEND_SOURCE_CODE}" HAVE_REG_STARTEND) # Generate the host.h file CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/rt_default-host.h.in ${CMAKE_CURRENT_BINARY_DIR}/rt_default-host.h) # Parser files BISON_FILE(rtd_conf.y) FLEX_FILE(rtd_conf.l) SET_SOURCE_FILES_PROPERTIES(lex.rtd_conf.c rtd_conf.tab.c PROPERTIES COMPILE_FLAGS "-I ${CMAKE_CURRENT_SOURCE_DIR}") # List of source files SET( RT_DEFAULT_SRC rt_default.c rt_default.h lex.rtd_conf.c rtd_conf.tab.c rtd_conf.tab.h rtd_rules.c ) INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) # Overwrite the debug level for the extension code if configured, example: cmake -DDEBUG_LEVEL_RT_DEFAULT:STATIC=CALL ... OPTION(DEBUG_LEVEL_RT_DEFAULT "Overwrite debug level for the extension rt_default if defined (valid values: FULL, ANNOYING, CALL...)" OFF) IF (DEBUG_LEVEL_RT_DEFAULT) ADD_DEFINITIONS(-DTRACE_LEVEL=${DEBUG_LEVEL_RT_DEFAULT}) ENDIF (DEBUG_LEVEL_RT_DEFAULT) IF (NOT CMAKE_BUILD_TYPE MATCHES "Debug") MARK_AS_ADVANCED(DEBUG_LEVEL_RT_DEFAULT) ENDIF (NOT CMAKE_BUILD_TYPE MATCHES "Debug") # Compile these files as a freeDiameter extension FD_ADD_EXTENSION(rt_default ${RT_DEFAULT_SRC}) #### ## INSTALL section ## # We install with the daemon component because it is a base feature. INSTALL(TARGETS rt_default LIBRARY DESTINATION ${DEFAULT_EXTENSIONS_PATH} COMPONENT freeDiameter-daemon)