CMAKE_MINIMUM_REQUIRED(VERSION 2.8)

SET( PROJECT_NAME ErrorHandling_Tutorial)
PROJECT(${PROJECT_NAME})

# Set your files and resources here
SET( SOURCE_DIRECTORY ${PROJECT_SOURCE_DIR}/src )

INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} )

ADD_EXECUTABLE( Assertion ${SOURCE_DIRECTORY}/assert.cxx )

ADD_EXECUTABLE( Exception ${SOURCE_DIRECTORY}/exception.cxx )

## Add c++11 flag to compilation if GCC is detected 
IF(CMAKE_COMPILER_IS_GNUCXX)
	INCLUDE( CheckCXXCompilerFlag )
	CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
	CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
	IF( COMPILER_SUPPORTS_CXX11 )
		SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
	ELSEIF(COMPILER_SUPPORTS_CXX0X )
		SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
	ELSE()
		MESSAGE(ERROR "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")
	ENDIF()
ENDIF(CMAKE_COMPILER_IS_GNUCXX) 
