aboutsummaryrefslogblamecommitdiffstatshomepage
path: root/CMakeLists.txt
blob: 3015fb23e54897dfa103f82d9f6fce92329f70dd (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                                   
 

                     
                           
 
                            

                                       


                                                         
                                                         
                                                    
                                                                             
                                                                         
                                               
 






                                                       




                                                   
                      
                       

                                            
cmake_minimum_required(VERSION 3.5) # for Boost::* imported targets

project(pdb_repo CXX)

include(cmake/common.cmake)

find_package(Boost REQUIRED)
add_subdirectory(3rdparty/boost/nowide)

file(GLOB_RECURSE pdb_repo_include "include/*.hpp")
file(GLOB_RECURSE pdb_repo_src "src/*.cpp")
add_library(pdb_repo ${pdb_repo_include} ${pdb_repo_src})
target_compile_definitions(pdb_repo PUBLIC _NO_CVCONST_H)
target_include_directories(pdb_repo PUBLIC include/)
target_include_directories(pdb_repo SYSTEM PUBLIC 3rdparty/microsoft/SafeInt)
target_link_libraries(pdb_repo PUBLIC Boost::boost PRIVATE Boost::nowide)
target_link_libraries(pdb_repo PRIVATE dbghelp)

if(MINGW)
    # FILE_ID_INFO and friends require at least 0x0602:
    target_compile_definitions(pdb_repo PUBLIC
        NTDDI_VERSION=NTDDI_WIN8
        _WIN32_WINNT=_WIN32_WINNT_WIN8)
endif()

if(MSVC_VERSION EQUAL 1900)
    # DbgHelp warnings on Visual Studio 2015:
    target_compile_options(pdb_repo PUBLIC /wd4091)
endif()

add_subdirectory(test)
add_subdirectory(utils)

install(FILES LICENSE.txt DESTINATION share)