build: add add_test_module cmake macro
	
		
			
	
		
	
	
		
	
		
			Some checks failed
		
		
	
	
		
			
				
	
				continuous-integration/drone/push Build is failing
				
			
		
		
	
	
				
					
				
			
		
			Some checks failed
		
		
	
	continuous-integration/drone/push Build is failing
				
			This commit is contained in:
		
							parent
							
								
									5d1862f493
								
							
						
					
					
						commit
						a54885b02e
					
				
					 4 changed files with 17 additions and 9 deletions
				
			
		| 
						 | 
					@ -1,4 +1,2 @@
 | 
				
			||||||
add_library_module(test test.cpp entrypoint.cpp)
 | 
					add_library_module(test test.cpp entrypoint.cpp)
 | 
				
			||||||
 | 
					add_test_module(test test.tests.cpp)
 | 
				
			||||||
add_executable(test_tests ${CMAKE_CURRENT_SOURCE_DIR}/tests/test.cpp)
 | 
					 | 
				
			||||||
target_link_libraries(test_tests PRIVATE test)
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,3 @@
 | 
				
			||||||
add_library_module(time timer.cpp)
 | 
					add_library_module(time timer.cpp)
 | 
				
			||||||
 | 
					add_test_module(time timer.tests.cpp)
 | 
				
			||||||
add_executable(timer_tests ${CMAKE_CURRENT_SOURCE_DIR}/src/timer.tests.cpp)
 | 
					 | 
				
			||||||
target_include_directories(timer_tests PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include)
 | 
					 | 
				
			||||||
target_link_libraries(timer_tests PRIVATE time test)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -36,8 +36,21 @@ macro (add_executable_module exename)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    message("Adding executable ${exename} with source files: ${source_files}")
 | 
					    message("Adding executable ${exename} with source files: ${source_files}")
 | 
				
			||||||
    add_executable(${exename} ${source_files})
 | 
					    add_executable(${exename} ${source_files})
 | 
				
			||||||
    target_include_directories(${exename} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include)
 | 
					    target_include_directories(${exename} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include)
 | 
				
			||||||
    target_link_libraries(${exename} PUBLIC base)
 | 
					    target_link_libraries(${exename} PRIVATE base)
 | 
				
			||||||
 | 
					endmacro ()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					macro (add_test_module exename)
 | 
				
			||||||
 | 
					    set(source_files)
 | 
				
			||||||
 | 
					    set(source_directory "${CMAKE_CURRENT_SOURCE_DIR}/src")
 | 
				
			||||||
 | 
					    foreach (source_file ${ARGN})
 | 
				
			||||||
 | 
					        list(APPEND source_files "${source_directory}/${source_file}")
 | 
				
			||||||
 | 
					    endforeach ()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    message("Adding test executable ${exename}_tests with source files: ${source_files}")
 | 
				
			||||||
 | 
					    add_executable(${exename}_tests ${source_files})
 | 
				
			||||||
 | 
					    target_include_directories(${exename} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include)
 | 
				
			||||||
 | 
					    target_link_libraries(${exename}_tests PRIVATE ${exename} base test)
 | 
				
			||||||
endmacro ()
 | 
					endmacro ()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
macro (add_option option help)
 | 
					macro (add_option option help)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue