root/tags/release-1.0-rc1/CMakeLists.txt

Revision 37, 3.3 KB (checked in by anton, 3 years ago)

Cmake files fixed

Line 
1CMAKE_MINIMUM_REQUIRED(VERSION 2.3)
2PROJECT(PGROUTING)
3
4#-----------------------------------------------------------------------------
5# PGROUTING version number.
6SET(PGROUTING_VERSION_MAJOR "1")
7SET(PGROUTING_VERSION_MINOR "0")
8SET(PGROUTING_VERSION_PATCH "0")
9
10SET(PGROUTING_VERSION_STRING "${PGROUTING_VERSION_MAJOR}.${PGROUTING_VERSION_MINOR}.${PGROUTING_VERSION_PATCH}-RC1")
11
12add_subdirectory(cmake)
13SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
14
15include (MacroLibrary)
16
17macro_optional_find_package(PostgreSQL)
18
19EXEC_PROGRAM(pg_config
20 ARGS --pkglibdir
21 OUTPUT_VARIABLE LIB_DIR)
22
23IF(LIB_DIR)
24  MESSAGE("Output directory for libraries is set to ${LIB_DIR}")
25ELSE(LIB_DIR)
26  SET(LIB_DIR ${PGROUTING_BINARY_DIR}/lib)
27  MESSAGE("pg_config not found, output directory for libraries is set to ${PGROUTING_BINARY_DIR}/lib")
28ENDIF(LIB_DIR)
29
30if(PGROUTING_CORE_INCLUDE_DIR)
31   set(PGROUTING_CORE_FOUND TRUE)
32
33else(PGROUTING_CORE_INCLUDE_DIR)
34 FIND_PATH(PGROUTING_CORE_INCLUDE_DIR dijkstra.h
35      PATHS
36      ${CMAKE_CURRENT_SOURCE_DIR}/core/src
37      )
38
39  if(PGROUTING_CORE_INCLUDE_DIR)
40    set(PGROUTING_CORE_FOUND TRUE)
41    message(STATUS "Found PGROUTING_CORE core: ${PGROUTING_CORE_INCLUDE_DIR}")
42    INCLUDE_DIRECTORIES(${PGROUTING_CORE_INCLUDE_DIR})
43  else(PGROUTING_CORE_INCLUDE_DIR)
44    set(PGROUTING_CORE_FOUND FALSE)
45    message(STATUS "PGROUTING_CORE core not found.")
46  endif(PGROUTING_CORE_INCLUDE_DIR)
47
48  mark_as_advanced(PGROUTING_CORE_INCLUDE_DIR)
49
50endif(PGROUTING_CORE_INCLUDE_DIR)
51
52OPTION(WITH_TSP "Build TSP library" OFF)
53OPTION(WITH_DD "Build Driving distance library" OFF)
54
55# Recurse into the subdirectories.  This does not actually
56# cause another cmake executable to run.  The same process will walk through
57# the project's entire directory structure.
58SUBDIRS(core/src)
59
60IF(WITH_TSP)
61ADD_SUBDIRECTORY(extra/tsp/src)
62macro_optional_find_package(GAUL)
63ENDIF(WITH_TSP)
64
65IF(WITH_DD)
66ADD_SUBDIRECTORY(extra/driving_distance/src)
67macro_optional_find_package(CGAL)
68ENDIF(WITH_DD)
69
70#SET(LIBRARY_OUTPUT_PATH ${PGROUTING_BINARY_DIR}/lib)
71
72IF(UNIX)
73  SET(LIBRARY_OUTPUT_PATH ${LIB_DIR})
74  SET(SQL_INSTALL_PATH /usr/share/postlbs)
75ELSE(UNIX)
76  SET(LIBRARY_OUTPUT_PATH ${PGROUTING_BINARY_DIR}/lib)
77  SET(SQL_INSTALL_PATH ${PGROUTING_BINARY_DIR}/lib)
78ENDIF(UNIX)
79
80SET(PGROUTING_INCLUDE_DIRECTORIES ${PGROUTING_SOURCE_DIR}/core ${PGROUTING_SOURCE_DIR}/core/src ${PGROUTING_SOURCE_DIR}/extra ${PGROUTING_SOURCE_DIR}/extra/tsp ${PGROUTING_SOURCE_DIR}/extra/tsp/src ${PGROUTING_SOURCE_DIR}/extra/driving_distance ${PGROUTING_SOURCE_DIR}/extra/driving_distance/src
81)
82
83INCLUDE_DIRECTORIES(. ${PGROUTING_INCLUDE_DIRECTORIES})
84
85SET(CMAKE_CXX_FLAGS=-O2 -g -Wall -fpic)
86
87CONFIGURE_FILE(core/sql/routing_core.sql ${SQL_INSTALL_PATH}/routing_core.sql COPYONLY)
88CONFIGURE_FILE(core/sql/routing_core_wrappers.sql ${SQL_INSTALL_PATH}/routing_core_wrappers.sql COPYONLY)
89
90IF(WITH_TSP)
91CONFIGURE_FILE(extra/tsp/sql/routing_tsp.sql ${SQL_INSTALL_PATH}/routing_tsp.sql COPYONLY)
92CONFIGURE_FILE(extra/tsp/sql/routing_tsp_wrappers.sql ${SQL_INSTALL_PATH}/routing_tsp_wrappers.sql COPYONLY)
93ENDIF(WITH_TSP)
94
95IF(WITH_DD)
96CONFIGURE_FILE(extra/driving_distance/sql/routing_dd.sql ${SQL_INSTALL_PATH}/routing_dd.sql COPYONLY)
97CONFIGURE_FILE(extra/driving_distance/sql/routing_dd_wrappers.sql ${SQL_INSTALL_PATH}/routing_dd_wrappers.sql COPYONLY)
98ENDIF(WITH_DD)
Note: See TracBrowser for help on using the browser.