mirror of
				https://github.com/red0124/ssp.git
				synced 2025-10-31 21:26:45 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			42 lines
		
	
	
		
			1015 B
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1015 B
		
	
	
	
		
			CMake
		
	
	
	
	
	
| cmake_minimum_required(VERSION 3.14)
 | |
| 
 | |
| project(ssp_tests CXX)
 | |
| 
 | |
| # ---- Dependencies ----
 | |
| 
 | |
| include(FetchContent)
 | |
| fetchcontent_declare(ssp SOURCE_DIR "${PROJECT_SOURCE_DIR}/..")
 | |
| fetchcontent_makeavailable(ssp)
 | |
| 
 | |
| if(CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
 | |
|     target_compile_options(ssp INTERFACE -Wall -Wextra)
 | |
| endif()
 | |
| 
 | |
| include(FetchContent)
 | |
| fetchcontent_declare(
 | |
|     DOCTEST
 | |
|     GIT_REPOSITORY https://github.com/red0124/doctest
 | |
|     GIT_TAG origin/master
 | |
|     GIT_SHALLOW TRUE
 | |
| )
 | |
| 
 | |
| fetchcontent_makeavailable(DOCTEST)
 | |
| set(DOCTEST "${FETCHCONTENT_BASE_DIR}/doctest-src")
 | |
| 
 | |
| # ---- Test ----
 | |
| 
 | |
| enable_testing()
 | |
| 
 | |
| foreach(name IN ITEMS test_splitter test_parser test_converter test_extractions)
 | |
|     add_executable("${name}" "${name}.cpp")
 | |
|     target_link_libraries(
 | |
|         "${name}"
 | |
|         PRIVATE ssp::ssp fast_float doctest::doctest
 | |
|     )
 | |
|     target_compile_definitions(
 | |
|         "${name}"
 | |
|         PRIVATE DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN CMAKE_GITHUB_CI
 | |
|     )
 | |
|     add_test(NAME "${name}" COMMAND "${name}")
 | |
| endforeach()
 |