

######################################################################################
### 1) Include the sources
######################################################################################

INCLUDE_DIRECTORIES(${EO_SRC_DIR}/src)
INCLUDE_DIRECTORIES(${EO_SRC_DIR}/src/utils)
INCLUDE_DIRECTORIES(${MO_SRC_DIR}/src)
INCLUDE_DIRECTORIES(${TSP_SRC_DIR})
######################################################################################

######################################################################################
### 2) Specify where CMake can find the libraries
######################################################################################

LINK_DIRECTORIES(${EO_BIN_DIR}/lib ${TSP_BIN_DIR}/lib)

######################################################################################



######################################################################################
### 3) Define your target(s): just an executable here
######################################################################################

ADD_COMMANDS()
ADD_TARGET(lesson3)

IF(ENABLE_CMAKE_EXAMPLE)
	IF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005" OR CMAKE_GENERATOR STREQUAL "Visual Studio 9 2008")
		SOURCE_GROUP(src FILES tabu_search.cpp)
		
		SOURCE_GROUP(benchs FILES
			${TSP_BIN_DIR}/benchs/berlin52.tsp
			${TSP_BIN_DIR}/benchs/eil101.tsp
			${TSP_BIN_DIR}/benchs/pr2392.tsp
			${TSP_BIN_DIR}/benchs/rl5915.tsp
			${TSP_BIN_DIR}/benchs/usa13509.tsp
		)
		
		ADD_EXECUTABLE(tabu_search
			tabu_search.cpp
			${MO_BIN_DIR}/tutorial/Lesson3/param
			${TSP_BIN_DIR}/benchs/berlin52.tsp
			${TSP_BIN_DIR}/benchs/eil101.tsp
			${TSP_BIN_DIR}/benchs/pr2392.tsp
			${TSP_BIN_DIR}/benchs/rl5915.tsp
			${TSP_BIN_DIR}/benchs/usa13509.tsp
		)
	ELSE(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005" OR CMAKE_GENERATOR STREQUAL "Visual Studio 9 2008")
		ADD_EXECUTABLE(tabu_search tabu_search.cpp)
	ENDIF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005" OR CMAKE_GENERATOR STREQUAL "Visual Studio 9 2008")
ELSE(ENABLE_CMAKE_EXAMPLE)
	IF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005" OR CMAKE_GENERATOR STREQUAL "Visual Studio 9 2008")
		SOURCE_GROUP(src FILES tabu_search.cpp)
		
		SOURCE_GROUP(benchs FILES
			${TSP_BIN_DIR}/benchs/berlin52.tsp
			${TSP_BIN_DIR}/benchs/eil101.tsp
			${TSP_BIN_DIR}/benchs/pr2392.tsp
			${TSP_BIN_DIR}/benchs/rl5915.tsp
			${TSP_BIN_DIR}/benchs/usa13509.tsp
		)
		
		ADD_EXECUTABLE(tabu_search EXCLUDE_FROM_ALL
			tabu_search.cpp
			${MO_BIN_DIR}/tutorial/Lesson3/param
			${TSP_BIN_DIR}/benchs/berlin52.tsp
			${TSP_BIN_DIR}/benchs/eil101.tsp
			${TSP_BIN_DIR}/benchs/pr2392.tsp
			${TSP_BIN_DIR}/benchs/rl5915.tsp
			${TSP_BIN_DIR}/benchs/usa13509.tsp
		)
	ELSE(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005" OR CMAKE_GENERATOR STREQUAL "Visual Studio 9 2008")
		ADD_EXECUTABLE(tabu_search EXCLUDE_FROM_ALL tabu_search.cpp)
	ENDIF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005" OR CMAKE_GENERATOR STREQUAL "Visual Studio 9 2008")
ENDIF(ENABLE_CMAKE_EXAMPLE)

ADD_DEPENDENCIES(tabu_search tsp)
######################################################################################



######################################################################################
### 4) Optionnal: define your target(s)'s version: no effect for windows
######################################################################################

SET(TABUSEARCH_VERSION ${GLOBAL_VERSION})
SET_TARGET_PROPERTIES(tabu_search PROPERTIES VERSION "${TABUSEARCH_VERSION}")
######################################################################################



######################################################################################
### 5) Link the librairies for your target(s)
######################################################################################

TARGET_LINK_LIBRARIES(tabu_search tsp eo eoutils) 

######################################################################################

