forked from mirror/yaml-cpp
				
			
			You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			50 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			CMake
		
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			CMake
		
	
| find_package(Threads REQUIRED)
 | |
| 
 | |
| set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
 | |
| set(BUILD_MOCK ON CACHE BOOL "" FORCE)
 | |
| set(CMAKE_POLICY_DEFAULT_CMP0048 NEW)
 | |
| 
 | |
| add_subdirectory(
 | |
|   "${CMAKE_CURRENT_SOURCE_DIR}/gtest-1.10.0"
 | |
|   "${CMAKE_CURRENT_BINARY_DIR}/prefix")
 | |
| 
 | |
| include_directories(SYSTEM "${CMAKE_CURRENT_SOURCE_DIR}/gtest-1.10.0/googletest/include")
 | |
| 
 | |
| set(test-new-api-pattern "new-api/*.cpp")
 | |
| set(test-source-pattern "*.cpp" "integration/*.cpp" "node/*.cpp")
 | |
| if (CMAKE_VERSION VERSION_GREATER 3.11)
 | |
|   list(INSERT test-new-api-pattern 0 CONFIGURE_DEPENDS)
 | |
|   list(INSERT test-source-pattern 0 CONFIGURE_DEPENDS)
 | |
| endif()
 | |
| 
 | |
| file(GLOB test-new-api-sources ${test-new-api-pattern})
 | |
| file(GLOB test-sources ${test-source-pattern})
 | |
| 
 | |
| add_executable(yaml-cpp-tests "")
 | |
| target_sources(yaml-cpp-tests
 | |
|   PRIVATE
 | |
|     ${test-new-api-sources}
 | |
|     ${test-sources})
 | |
| target_include_directories(yaml-cpp-tests
 | |
|   PRIVATE
 | |
|     ${CMAKE_CURRENT_SOURCE_DIR}/integration
 | |
|     ${CMAKE_CURRENT_SOURCE_DIR}
 | |
|     ${PROJECT_SOURCE_DIR}/src)
 | |
| target_compile_options(yaml-cpp-tests
 | |
|   PRIVATE
 | |
|     $<$<CXX_COMPILER_ID:Clang>:-Wno-c99-extensions -Wno-variadic-macros -Wno-sign-compare>
 | |
|     $<$<CXX_COMPILER_ID:GNU>:-Wno-variadic-macros -Wno-sign-compare>)
 | |
| target_link_libraries(yaml-cpp-tests
 | |
|   PRIVATE
 | |
|     Threads::Threads
 | |
|     yaml-cpp
 | |
|     gmock)
 | |
| 
 | |
| set_property(TARGET yaml-cpp-tests PROPERTY CXX_STANDARD_REQUIRED ON)
 | |
| if (NOT DEFINED CMAKE_CXX_STANDARD)
 | |
|   set_target_properties(yaml-cpp-tests PROPERTIES CXX_STANDARD 11)
 | |
| endif()
 | |
| 
 | |
| 
 | |
| add_test(yaml-cpp::test yaml-cpp-tests)
 |