CMakeLists.txt 2.28 KB
Newer Older
Thomas Moulard's avatar
Thomas Moulard committed
1
# Copyright 2010, Olivier Stasse, JRL, CNRS/AIST
2
#
Thomas Moulard's avatar
Thomas Moulard committed
3
4
5
6
7
# This file is part of dynamic-graph.
# dynamic-graph is free software: you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public License
# as published by the Free Software Foundation, either version 3 of
# the License, or (at your option) any later version.
8
#
Thomas Moulard's avatar
Thomas Moulard committed
9
10
11
12
13
14
# dynamic-graph is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Lesser Public License for more details.  You should have
# received a copy of the GNU Lesser General Public License along with
# dynamic-graph. If not, see <http://www.gnu.org/licenses/>.
15
16
17

CMAKE_MINIMUM_REQUIRED(VERSION 2.6)

18
INCLUDE(cmake/base.cmake)
19
INCLUDE(cmake/boost.cmake)
20
INCLUDE(cmake/pthread.cmake)
21
INCLUDE(cmake/cpack.cmake)
22

23
24
25
SET(PROJECT_NAME dynamic-graph)
SET(PROJECT_DESCRIPTION "Dynamic graph library")
SET(PROJECT_URL "http://github.com/jrl-umi3218/dynamic-graph")
26

27
28
SET(CUSTOM_HEADER_DIR "${PROJECT_NAME}")

29
# Defines paths.
30
SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib)
31

32
SETUP_PROJECT()
33

34
35
36
37
38
39
40
41
42
43
44
45
46
# Add configuration headers for plug-ins.
GENERATE_CONFIGURATION_HEADER(
  ${HEADER_DIR} config-tracer.hh DG_TRACER tracer_EXPORTS)
GENERATE_CONFIGURATION_HEADER(
  ${HEADER_DIR}
  config-tracer-real-time.hh DG_TRACERREALTIME tracer_real_time_EXPORTS)
GENERATE_CONFIGURATION_HEADER(
  ${HEADER_DIR}
  config-shell-procedure.hh DG_SHELLPROCEDURE shell_procedure_EXPORTS)
GENERATE_CONFIGURATION_HEADER(
  ${HEADER_DIR}
  config-contiifstream.hh DG_CONTIIFSTREAM contiifstream_EXPORTS)

47
48
49
# FIXME: to be changed into lib/dynamic-graph
# to avoid name collision when installing dynamic-graph in /usr.
SET(PLUGINDIR "lib/plugin")
50

51
52
53
54
55
# Add extra keys to pkg-config file to export the location of the
# plug-in directory in a robust manner.
SET(PKG_CONFIG_EXTRA
  "plugindirname=${PLUGINDIR}
plugindir=${CMAKE_INSTALL_PREFIX}/${PLUGINDIR}")
56

57
# Add dependency toward dynamic graph library in pkg-config file.
58
PKG_CONFIG_APPEND_LIBS("dynamic-graph")
59

60
# Search for Boost.
61
SEARCH_FOR_BOOST()
62
SEARCH_FOR_PTHREAD()
63
64
65

ADD_SUBDIRECTORY(src)
ADD_SUBDIRECTORY(include)
66
ADD_SUBDIRECTORY(tools)
67
ADD_SUBDIRECTORY(doc)
Francois Bleibel's avatar
Francois Bleibel committed
68
ADD_SUBDIRECTORY(unitTesting)
69
70

SETUP_PROJECT_FINALIZE()
71
SETUP_PROJECT_CPACK()