# The name of our project is "BDM".  CMakeLists files in this project can
# refer to the root source directory of the project as ${BDM_SOURCE_DIR} and
# to the root binary directory of the project as ${BDM_BINARY_DIR}.
project (BDM)

# In order to be able to use the newly written FindXXX package, the 
# location of the FindXXX.cmake file must be added to the cmake modules 
# list from within a CMakeLists.txt file as follows:
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}\\CMake_modules\\")

######################
#Platform specific
IF(WIN32)

# IF YOU WANT TO USE YOUR OWN INSTALLATION OF ITTP AND/OR ACML LIBRARIES,
# THEN IT IS NECESSARY TO CREATE TEXT FILE "\WIN32\LOCAL_PATHS.TXT" WITH 
# COPIES OF THE TWO FOLLOWING LINES AND THEN CORECT BOTH INVOLVED PATHS
	SET(ITPP_DIR "${BDM_SOURCE_DIR}\\win32\\itpp-4.0.1")
	SET(ACML_DIR "${BDM_SOURCE_DIR}\\win32\\acml3.6.0")

	INCLUDE(\\win32\\local_paths.txt OPTIONAL)	

	FIND_PACKAGE(ITPP REQUIRED)
	FIND_PACKAGE(ACML REQUIRED)

	IF(ITPP_FOUND)
	   INCLUDE_DIRECTORIES(${ITPP_INCLUDE_DIR})
	   LINK_DIRECTORIES(${NATIVE_ITPP_LIB_PATH})
	ENDIF(ITPP_FOUND)

	IF(ACML_FOUND)
	   INCLUDE_DIRECTORIES(${ACML_INCLUDE_DIR})
	ENDIF(ACML_FOUND)

ELSE(WIN32)
	FIND_PACKAGE(ITPP REQUIRED)

	IF(ITPP_FOUND)
	   INCLUDE_DIRECTORIES(${ITPP_INCLUDE_DIR})
	   LINK_DIRECTORIES(${NATIVE_ITPP_LIB_PATH})
	ENDIF(ITPP_FOUND)

	#This is for UNIX makefile which does only one release at a time.
	SET(CMAKE_BUILD_TYPE Debug)
	SET(CMAKE_CXX_FLAGS_DEBUG "-g -Wall")
ENDIF(WIN32)

# Recurse into the "dbm" and "tests" subdirectories.  This does not actually
# cause another cmake executable to run.  The same process will walk through
# the project's entire directory structure.
add_subdirectory (bdm)
add_subdirectory (tests)
add_subdirectory (simulator_zdenek)
add_subdirectory (simulator_zdenek/ekf_example)
