|  |  | @ -1,6 +1,6 @@ | 
			
		
	
		
			
				
					|  |  |  | cmake_minimum_required (VERSION 2.6) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | project (MRMC-cpp) | 
			
		
	
		
			
				
					|  |  |  | project (MRMC-cpp CXX C) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | # The version number. | 
			
		
	
		
			
				
					|  |  |  | set (MRMC_CPP_VERSION_MAJOR 1) | 
			
		
	
	
		
			
				
					|  |  | @ -17,4 +17,56 @@ configure_file ( | 
			
		
	
		
			
				
					|  |  |  | # so that we will find TutorialConfig.h | 
			
		
	
		
			
				
					|  |  |  | include_directories("${PROJECT_BINARY_DIR}") | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | add_executable(MRMC-cpp src/mrmc-cpp.cpp) | 
			
		
	
		
			
				
					|  |  |  | #add_executable(MRMC-cpp src/mrmc-cpp.cpp) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | FILE(GLOB_RECURSE MRMCSources ${PROJECT_SOURCE_DIR}/src/*.cpp) | 
			
		
	
		
			
				
					|  |  |  | FILE(GLOB_RECURSE MRMCHeaders ${PROJECT_SOURCE_DIR}/src/*.h) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | SOURCE_GROUP(Headers FILES ${MRMCHeaders}) | 
			
		
	
		
			
				
					|  |  |  | SOURCE_GROUP(Sources FILES ${MRMCSources}) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | ADD_EXECUTABLE(MRMC-cpp ${MRMCSources} ${MRMCHeaders}) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | # Add base folder for better inclusion pathes | 
			
		
	
		
			
				
					|  |  |  | include_directories("${PROJECT_SOURCE_DIR}") | 
			
		
	
		
			
				
					|  |  |  | include_directories("${PROJECT_SOURCE_DIR}/src") | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | # external packages | 
			
		
	
		
			
				
					|  |  |  | FIND_PACKAGE(GTest REQUIRED) | 
			
		
	
		
			
				
					|  |  |  | FIND_PACKAGE(Boost REQUIRED) | 
			
		
	
		
			
				
					|  |  |  | FIND_PACKAGE(Doxygen REQUIRED) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | if(Boost_FOUND) | 
			
		
	
		
			
				
					|  |  |  | include_directories(${Boost_INCLUDE_DIRS}) | 
			
		
	
		
			
				
					|  |  |  | endif(Boost_FOUND) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | # add a target to generate API documentation with Doxygen | 
			
		
	
		
			
				
					|  |  |  | if(DOXYGEN_FOUND) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | SET(CMAKE_DOXYGEN_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/doc") | 
			
		
	
		
			
				
					|  |  |  | STRING(REGEX REPLACE ";" " " CMAKE_DOXYGEN_INPUT_LIST "${PROJECT_SOURCE_DIR}/src") | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doc/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | add_custom_target(doc ALL | 
			
		
	
		
			
				
					|  |  |  | ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile | 
			
		
	
		
			
				
					|  |  |  | DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile | 
			
		
	
		
			
				
					|  |  |  | COMMENT "Generating API documentation with Doxygen" VERBATIM | 
			
		
	
		
			
				
					|  |  |  | ) | 
			
		
	
		
			
				
					|  |  |  | endif(DOXYGEN_FOUND) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | if (GTEST_FOUND) | 
			
		
	
		
			
				
					|  |  |  | # For make-based builds, defines make target named test. | 
			
		
	
		
			
				
					|  |  |  | # For Visual Studio builds, defines Visual Studio project named RUN_TESTS. | 
			
		
	
		
			
				
					|  |  |  | enable_testing() | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | add_executable(MRMC-tests ${PROJECT_SOURCE_DIR}/test/mrmc-tests.cpp) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | include_directories(${GTEST_INCLUDE_DIRS}) | 
			
		
	
		
			
				
					|  |  |  | target_link_libraries(MRMC-tests ${GTEST_LIBRARIES}) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | add_test( | 
			
		
	
		
			
				
					|  |  |  |     NAME MRMC-tests | 
			
		
	
		
			
				
					|  |  |  |     COMMAND MRMC-tests | 
			
		
	
		
			
				
					|  |  |  | ) | 
			
		
	
		
			
				
					|  |  |  | endif(GTEST_FOUND) |