new cmake config

git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@516 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
legrand 2007-07-05 08:26:33 +00:00
commit a1b212cabc
8 changed files with 42 additions and 43 deletions

View file

@ -12,12 +12,8 @@ INCLUDE(mo-conf.cmake OPTIONAL)
### 1) Main project config ### 1) Main project config
###################################################################################### ######################################################################################
IF(NOT DEFINED ${PROJECT_NAME} OR ${PROJECT_NAME} STREQUAL "Project")
SET(PROJECT_NAME "ParadisEO-MO")
ENDIF(NOT DEFINED ${PROJECT_NAME} OR ${PROJECT_NAME} STREQUAL "Project")
# set the project name # set the project name
PROJECT(${PROJECT_NAME}) PROJECT(ParadisEO-MO)
# check cmake version compatibility # check cmake version compatibility
CMAKE_MINIMUM_REQUIRED(VERSION 2.4 FATAL_ERROR) CMAKE_MINIMUM_REQUIRED(VERSION 2.4 FATAL_ERROR)
@ -52,7 +48,7 @@ INCLUDE(CheckLibraryExists)
###################################################################################### ######################################################################################
IF(NOT DEFINED MO_DIR) IF(NOT DEFINED MO_DIR)
SET(MO_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE PATH "ParadisEO-MO main directory") SET(MO_DIR ${ParadisEO-MO_SOURCE_DIR} CACHE PATH "ParadisEO-MO main directory")
ENDIF(NOT DEFINED MO_DIR) ENDIF(NOT DEFINED MO_DIR)
# Need main EO directory path # Need main EO directory path
@ -68,11 +64,11 @@ IF(NOT DEFINED EO_SRC_DIR)
ENDIF(NOT DEFINED EO_SRC_DIR) ENDIF(NOT DEFINED EO_SRC_DIR)
IF(NOT DEFINED MO_SRC_DIR) IF(NOT DEFINED MO_SRC_DIR)
SET(MO_SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src) SET(MO_SRC_DIR ${MO_DIR}/src)
ENDIF(NOT DEFINED MO_SRC_DIR) ENDIF(NOT DEFINED MO_SRC_DIR)
IF(NOT DEFINED MO_DOC_DIR) IF(NOT DEFINED MO_DOC_DIR)
SET(MO_DOC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/doc) SET(MO_DOC_DIR ${MO_DIR}/doc)
ENDIF(NOT DEFINED MO_DOC_DIR) ENDIF(NOT DEFINED MO_DOC_DIR)
###################################################################################### ######################################################################################

View file

@ -3,31 +3,22 @@
###################################################################################### ######################################################################################
### In this file, you can specify many CMake variables used to build paradisEO-MO. ### In this file, you can specify many CMake variables used to build paradisEO-MO.
### For example, if you don't want ot give the EO path each time on the command line, ### For example, if you don't want ot give the EO path each time on the command line,
### uncomment the line the "SET(PROJECT_NAME...)" and set your favorite name. ### uncomment the line the "SET(EO_DIR...)" and set your path.
### The section numbers are the same as those used in the CMakeLists.txt file. ### The section numbers are the same as those used in the CMakeLists.txt file.
###################################################################################### ######################################################################################
###################################################################################### ######################################################################################
######################################################################################
### 0) OPTIONNAL - Overwrite project default config
######################################################################################
# SET(PROJECT_NAME "ParadisEO-MO")
######################################################################################
###################################################################################### ######################################################################################
### 3) OPTIONNAL - Overwrite default paths ### 3) OPTIONNAL - Overwrite default paths
###################################################################################### ######################################################################################
# SET(MOEO_DIR "<your path>" CACHE PATH "ParadisEO-MO main directory") # SET(MO_DIR "<your path>" CACHE PATH "ParadisEO-MO main directory")
# SET(EO_DIR "<path to ParadisEO-EO>" CACHE PATH "ParadisEO-EO main directory") # SET(EO_DIR "<path to ParadisEO-EO>" CACHE PATH "ParadisEO-EO main directory")
# SET(EO_SRC_DIR "<path to ParadisEO-EO src dir>") # SET(EO_SRC_DIR "<path to ParadisEO-EO src dir>")
# SET(MOEO_SRC_DIR "<path to ParadisEO-MO src dir>") # SET(MO_SRC_DIR "<path to ParadisEO-MO src dir>")
# SET(MOEO_DOC_DIR "<path to ParadisEO-MO doc dir>") # SET(MO_DOC_DIR "<path to ParadisEO-MO doc dir>")
###################################################################################### ######################################################################################

View file

@ -1,9 +1,10 @@
###################################################################################### ######################################################################################
### 2) Definitions (required for tsp target) ### 1) Definitions (required for tsp target)
###################################################################################### ######################################################################################
SET(TSP_EXAMPLE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/examples/tsp CACHE PATH "TSP example directory") SET(TSP_SRC_DIR ${ParadisEO-MO_SOURCE_DIR}/tutorial/examples/tsp CACHE PATH "TSP src directory")
SET(TSP_BINARY_DIR ${ParadisEO-MO_BINARY_DIR}/tutorial/examples/tsp CACHE PATH "TSP binary directory")
###################################################################################### ######################################################################################

View file

@ -7,7 +7,7 @@
INCLUDE_DIRECTORIES(${EO_SRC_DIR}) INCLUDE_DIRECTORIES(${EO_SRC_DIR})
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/utils) INCLUDE_DIRECTORIES(${EO_SRC_DIR}/utils)
INCLUDE_DIRECTORIES(${MO_SRC_DIR}) INCLUDE_DIRECTORIES(${MO_SRC_DIR})
INCLUDE_DIRECTORIES(${TSP_EXAMPLE_DIR}/src) INCLUDE_DIRECTORIES(${TSP_SRC_DIR})
###################################################################################### ######################################################################################
@ -18,8 +18,7 @@ INCLUDE_DIRECTORIES(${TSP_EXAMPLE_DIR}/src)
# --> UNIX # --> UNIX
IF(UNIX) IF(UNIX)
LINK_DIRECTORIES(${EO_SRC_DIR} ${EO_SRC_DIR}/utils ${TSP_EXAMPLE_DIR}/build) LINK_DIRECTORIES(${EO_SRC_DIR} ${EO_SRC_DIR}/utils ${TSP_BINARY_DIR}/lib)
# --> WIN # --> WIN
ELSEIF(WIN32) ELSEIF(WIN32)
# "CMAKE_BUILD_TYPE" supposed to be given on the command line, default=Debug # "CMAKE_BUILD_TYPE" supposed to be given on the command line, default=Debug
@ -28,10 +27,10 @@ ELSEIF(WIN32)
ENDIF (NOT DEFINED CMAKE_BUILD_TYPE) ENDIF (NOT DEFINED CMAKE_BUILD_TYPE)
IF (CMAKE_BUILD_TYPE STREQUAL Debug) IF (CMAKE_BUILD_TYPE STREQUAL Debug)
LINK_DIRECTORIES(${TSP_EXAMPLE_DIR}\\build\\debug) LINK_DIRECTORIES(${TSP_BINARY_DIR}\\debug)
LINK_DIRECTORIES(${EO_LIB_DIR}\\debug) LINK_DIRECTORIES(${EO_LIB_DIR}\\debug)
ELSEIF(CMAKE_BUILD_TYPE STREQUAL Release) ELSEIF(CMAKE_BUILD_TYPE STREQUAL Release)
LINK_DIRECTORIES(${TSP_EXAMPLE_DIR}\\build\\release) LINK_DIRECTORIES(${TSP_BINARY_DIR}\\release)
LINK_DIRECTORIES(${EO_LIB_DIR}\\release) LINK_DIRECTORIES(${EO_LIB_DIR}\\release)
ENDIF(CMAKE_BUILD_TYPE STREQUAL Debug) ENDIF(CMAKE_BUILD_TYPE STREQUAL Debug)
@ -49,8 +48,6 @@ ENDIF(UNIX)
ADD_EXECUTABLE(hill_climbing hill_climbing.cpp) ADD_EXECUTABLE(hill_climbing hill_climbing.cpp)
ADD_DEPENDENCIES(hill_climbing tsp) ADD_DEPENDENCIES(hill_climbing tsp)
SET(EXECUTABLE_OUTPUT_PATH ${TUTORIAL_LESSON1_DIR}/build)
###################################################################################### ######################################################################################

View file

@ -7,7 +7,7 @@
INCLUDE_DIRECTORIES(${EO_SRC_DIR}) INCLUDE_DIRECTORIES(${EO_SRC_DIR})
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/utils) INCLUDE_DIRECTORIES(${EO_SRC_DIR}/utils)
INCLUDE_DIRECTORIES(${MO_SRC_DIR}) INCLUDE_DIRECTORIES(${MO_SRC_DIR})
INCLUDE_DIRECTORIES(${TSP_EXAMPLE_DIR}/src) INCLUDE_DIRECTORIES(${TSP_SRC_DIR})
###################################################################################### ######################################################################################
@ -18,7 +18,7 @@ INCLUDE_DIRECTORIES(${TSP_EXAMPLE_DIR}/src)
# --> UNIX # --> UNIX
IF(UNIX) IF(UNIX)
LINK_DIRECTORIES(${EO_SRC_DIR} ${EO_SRC_DIR}/utils ${TSP_EXAMPLE_DIR}/build) LINK_DIRECTORIES(${EO_SRC_DIR} ${EO_SRC_DIR}/utils ${TSP_BINARY_DIR}/lib)
# --> WIN # --> WIN
ELSEIF(WIN32) ELSEIF(WIN32)
@ -28,10 +28,10 @@ ELSEIF(WIN32)
ENDIF (NOT DEFINED CMAKE_BUILD_TYPE) ENDIF (NOT DEFINED CMAKE_BUILD_TYPE)
IF (CMAKE_BUILD_TYPE STREQUAL Debug) IF (CMAKE_BUILD_TYPE STREQUAL Debug)
LINK_DIRECTORIES(${TSP_EXAMPLE_DIR}\\build\\debug) LINK_DIRECTORIES(${TSP_BINARY_DIR}\\debug)
LINK_DIRECTORIES(${EO_LIB_DIR}\\debug) LINK_DIRECTORIES(${EO_LIB_DIR}\\debug)
ELSEIF(CMAKE_BUILD_TYPE STREQUAL Release) ELSEIF(CMAKE_BUILD_TYPE STREQUAL Release)
LINK_DIRECTORIES(${TSP_EXAMPLE_DIR}\\build\\release) LINK_DIRECTORIES(${TSP_BINARY_DIR}\\release)
LINK_DIRECTORIES(${EO_LIB_DIR}\\release) LINK_DIRECTORIES(${EO_LIB_DIR}\\release)
ENDIF(CMAKE_BUILD_TYPE STREQUAL Debug) ENDIF(CMAKE_BUILD_TYPE STREQUAL Debug)
@ -49,8 +49,6 @@ ENDIF(UNIX)
ADD_EXECUTABLE(tabu_search tabu_search.cpp) ADD_EXECUTABLE(tabu_search tabu_search.cpp)
ADD_DEPENDENCIES(tabu_search tsp) ADD_DEPENDENCIES(tabu_search tsp)
SET(EXECUTABLE_OUTPUT_PATH ${TUTORIAL_LESSON2_DIR}/build)
###################################################################################### ######################################################################################

View file

@ -7,7 +7,7 @@
INCLUDE_DIRECTORIES(${EO_SRC_DIR}) INCLUDE_DIRECTORIES(${EO_SRC_DIR})
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/utils) INCLUDE_DIRECTORIES(${EO_SRC_DIR}/utils)
INCLUDE_DIRECTORIES(${MO_SRC_DIR}) INCLUDE_DIRECTORIES(${MO_SRC_DIR})
INCLUDE_DIRECTORIES(${TSP_EXAMPLE_DIR}/src) INCLUDE_DIRECTORIES(${TSP_SRC_DIR})
###################################################################################### ######################################################################################
@ -18,7 +18,7 @@ INCLUDE_DIRECTORIES(${TSP_EXAMPLE_DIR}/src)
# --> UNIX # --> UNIX
IF(UNIX) IF(UNIX)
LINK_DIRECTORIES(${EO_SRC_DIR} ${EO_SRC_DIR}/utils ${TSP_EXAMPLE_DIR}/build) LINK_DIRECTORIES(${EO_SRC_DIR} ${EO_SRC_DIR}/utils ${TSP_BINARY_DIR}/lib)
# --> WIN # --> WIN
ELSEIF(WIN32) ELSEIF(WIN32)
@ -28,10 +28,10 @@ ELSEIF(WIN32)
ENDIF (NOT DEFINED CMAKE_BUILD_TYPE) ENDIF (NOT DEFINED CMAKE_BUILD_TYPE)
IF (CMAKE_BUILD_TYPE STREQUAL Debug) IF (CMAKE_BUILD_TYPE STREQUAL Debug)
LINK_DIRECTORIES(${TSP_EXAMPLE_DIR}\\build\\debug) LINK_DIRECTORIES(${TSP_BINARY_DIR}\\debug)
LINK_DIRECTORIES(${EO_LIB_DIR}\\debug) LINK_DIRECTORIES(${EO_LIB_DIR}\\debug)
ELSEIF(CMAKE_BUILD_TYPE STREQUAL Release) ELSEIF(CMAKE_BUILD_TYPE STREQUAL Release)
LINK_DIRECTORIES(${TSP_EXAMPLE_DIR}\\build\\release) LINK_DIRECTORIES(${TSP_BINARY_DIR}\\release)
LINK_DIRECTORIES(${EO_LIB_DIR}\\release) LINK_DIRECTORIES(${EO_LIB_DIR}\\release)
ENDIF(CMAKE_BUILD_TYPE STREQUAL Debug) ENDIF(CMAKE_BUILD_TYPE STREQUAL Debug)
@ -49,8 +49,6 @@ ENDIF(UNIX)
ADD_EXECUTABLE(simulated_annealing simulated_annealing.cpp) ADD_EXECUTABLE(simulated_annealing simulated_annealing.cpp)
ADD_DEPENDENCIES(simulated_annealing tsp) ADD_DEPENDENCIES(simulated_annealing tsp)
SET(EXECUTABLE_OUTPUT_PATH ${TUTORIAL_LESSON3_DIR}/build)
###################################################################################### ######################################################################################

View file

@ -1,4 +1,5 @@
###################################################################################### ######################################################################################
### 1) Where must cmake go now ? ### 1) Where must cmake go now ?
###################################################################################### ######################################################################################
@ -6,3 +7,5 @@
SUBDIRS(tsp) SUBDIRS(tsp)
###################################################################################### ######################################################################################

View file

@ -1,4 +1,19 @@
######################################################################################
### 0) Copy the "benchs" directory in the build directory to easily run the lessons
######################################################################################
ADD_CUSTOM_TARGET(copy_tsp_benchmarks ALL)
ADD_CUSTOM_COMMAND(
TARGET copy_tsp_benchmarks
POST_BUILD
COMMAND ${CMAKE_COMMAND}
ARGS -E copy_directory
${ParadisEO-MO_SOURCE_DIR}/tutorial/examples/tsp/benchs
${ParadisEO-MO_BINARY_DIR}/tutorial/examples/tsp/benchs)
######################################################################################
###################################################################################### ######################################################################################
### 1) Include the sources ### 1) Include the sources
@ -14,7 +29,7 @@ INCLUDE_DIRECTORIES(${MO_SRC_DIR})
### 2) Define your target(s): just the tsp here ### 2) Define your target(s): just the tsp here
###################################################################################### ######################################################################################
SET(TSP_LIB_OUTPUT_PATH ${TSP_EXAMPLE_DIR}/build) SET(TSP_LIB_OUTPUT_PATH ${TSP_BINARY_DIR}/lib)
SET(LIBRARY_OUTPUT_PATH ${TSP_LIB_OUTPUT_PATH}) SET(LIBRARY_OUTPUT_PATH ${TSP_LIB_OUTPUT_PATH})
SET (TSP_SOURCES graph.cpp SET (TSP_SOURCES graph.cpp