| cmake_minimum_required(VERSION 3.5.0) | 
 |  | 
 | project(prjxray) | 
 | option(PRJXRAY_BUILD_TESTING "" OFF) | 
 |  | 
 | # Add sanitizers-cmake package | 
 | set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/third_party/sanitizers-cmake/cmake" ${CMAKE_MODULE_PATH}) | 
 | find_package(Sanitizers) | 
 | if(NOT CMAKE_BUILD_TYPE) | 
 | 	set(CMAKE_BUILD_TYPE Release CACHE STRING | 
 | 		"Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." | 
 | 		FORCE) | 
 | endif() | 
 |  | 
 | # Hack for missing option in cctz | 
 | option(BUILD_TESTING "" OFF) | 
 |  | 
 | if(PRJXRAY_BUILD_TESTING) | 
 | 	enable_testing() | 
 | endif() | 
 |  | 
 | add_subdirectory(third_party/googletest EXCLUDE_FROM_ALL) | 
 | add_subdirectory(third_party/gflags EXCLUDE_FROM_ALL) | 
 | add_subdirectory(third_party/cctz EXCLUDE_FROM_ALL) | 
 | add_subdirectory(third_party/abseil-cpp EXCLUDE_FROM_ALL) | 
 |  | 
 | include(CheckCXXCompilerFlag) | 
 | CHECK_CXX_COMPILER_FLAG("-Wundefined-var-template" CXX_COMPILER_SUPPORTS_UNDEF_VAR) | 
 | if(${CXX_COMPILER_SUPPORTS_UNDEF_VAR}) | 
 |     add_compile_options("-Wno-undefined-var-template") | 
 | endif() | 
 |  | 
 | option(YAML_CPP_BUILD_TESTS "" OFF) | 
 | add_subdirectory(third_party/yaml-cpp EXCLUDE_FROM_ALL) | 
 | target_include_directories(yaml-cpp PUBLIC | 
 | 	$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/third_party/yaml-cpp/include> | 
 | 	) | 
 |  | 
 | add_compile_options(-Wall -Werror) | 
 |  | 
 | add_subdirectory(lib) | 
 | add_subdirectory(tools) |