root/CMakeLists.txt

Revision 214fc9d7a7c8ed9ee8fd8b8c51b19287374157e8, 1.4 kB (checked in by Philip Herron <redbrain@…>, 2 years ago)

basic cmake support

  • Property mode set to 100644
Line 
1project(crules)
2cmake_minimum_required(VERSION 2.6)
3add_subdirectory(src)
4
5FIND_PATH(READLINE_INCLUDE_DIR readline/readline.h)
6FIND_LIBRARY(READLINE_LIBRARY NAMES readline)
7
8IF (READLINE_INCLUDE_DIR AND READLINE_LIBRARY)
9SET(READLINE_FOUND TRUE)
10ENDIF (READLINE_INCLUDE_DIR AND READLINE_LIBRARY)
11
12IF (READLINE_FOUND)
13IF (NOT Readline_FIND_QUIETLY)
14MESSAGE(STATUS "Found GNU readline: ${READLINE_LIBRARY}")
15ENDIF (NOT Readline_FIND_QUIETLY)
16ELSE (READLINE_FOUND)
17IF (Readline_FIND_REQUIRED)
18MESSAGE(FATAL_ERROR "Could not find GNU readline")
19ENDIF (Readline_FIND_REQUIRED)
20ENDIF (READLINE_FOUND)
21
22set(CMAKE_MODULE_PATH "cmake/")
23find_package(BISON)
24find_package(FLEX)
25
26BISON_TARGET(MyParser src/ss_parser.y src/ss_parser.c)
27FLEX_TARGET(MyScanner src/ss_lexical.l src/ss_lexical.c)
28ADD_FLEX_BISON_DEPENDENCY(MyScanner MyParser)
29
30include_directories (include)
31ADD_LIBRARY(parser STATIC
32  ${BISON_MyParser_OUTPUTS}
33  ${FLEX_MyScanner_OUTPUTS}
34  )
35
36set (Crules_VERSION 0.44)
37# does this system provide the log and exp functions?
38include (${CMAKE_ROOT}/Modules/CheckFunctionExists.cmake)
39
40check_function_exists (strlen HAVE_STRLEN)
41check_function_exists (strdup HAVE_STRDUP)
42
43# configure a header file to pass some of the CMake settings
44# to the source code
45configure_file (
46  "src/config.h.in.cmake"
47  "src/config.h.cmake"
48  )
49
50# add the binary tree to the search path for include files
51# so that we will find TutorialConfig.h
52include_directories("${PROJECT_BINARY_DIR}")
Note: See TracBrowser for help on using the browser.