CMAKE_MINIMUM_REQUIRED(VERSION 2.8)

# TODO - These should be handled by Nektar++Config.cmake
ADD_DEFINITIONS(-DNEKTAR_PLUS_PLUS_EXTENSION_EXPORTS -DNEKTAR_USING_BLAS -DNEKTAR_USING_LAPACK -DNEKTAR_MEMORY_POOL_ENABLED)

SET(ProjectName ExpressionTemplates)
PROJECT(${ProjectName})

SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR} ${CMAKE_MODULE_PATH})
INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR} )

# The first time through, set a default installation directory.
IF(NOT EXPRESSION_TEMPLATES_PASSED_FIRST_CONFIGURE)
  SET(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/dist CACHE FILEPATH "" FORCE)
ENDIF()

FIND_PACKAGE(Nektar++ REQUIRED NO_MODULE NO_DEFAULT_PATH NO_CMAKE_BUILDS_PATH NO_CMAKE_PACKAGE_REGISTRY)

IF( NEKTAR++_FOUND )
    SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR} ${NEKTAR++_ROOT_DIR} ${CMAKE_MODULE_PATH})
ENDIF()

SET(Boost_USE_STATIC_LIBS ON)
SET(Boost_USE_MULTITHREAD ON)
SET(Boost_ADDITIONAL_VERSIONS "1.48" "1.48.0" "1.47" "1.47.0" "1.40" "1.40.0" "1.35.0" "1.35")
FIND_PACKAGE(Boost COMPONENTS timer system chrono)

SET(EXPRESSION_TEMPLATE_PATH "" CACHE PATH "")

INCLUDE_DIRECTORIES(ThirdParty/include 
	${Boost_INCLUDE_DIR}
)

SUBDIRS(
    Compile
    Performance
    Testing
)

SET(TIMINGS_PASSED_FIRST_CONFIGURE ON CACHE BOOL INTERNAL)

