CMakeLists.txt 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. cmake_minimum_required(VERSION 3.14)
  2. include(FetchContent)
  3. project(nmrpflash VERSION 1.0)
  4. set(CMAKE_CXX_STANDARD 17)
  5. set(CMAKE_CXX_STANDARD_REQUIRED True)
  6. set(CMAKE_CXX_FLAGS "-g -Wall -Wno-c++11-narrowing")
  7. set(CMAKE_CXX_FLAGS_DEBUG "-g -Wall -Wno-c++11-narrowing")
  8. set(CMAKE_OSX_ARCHITECTURES "arm64;x86_64")
  9. set(CMAKE_OSX_SYSROOT "/Library/Developer/CommandLineTools/SDKs/MacOSX11.1.sdk")
  10. find_package(Boost 1.74.0 REQUIRED)
  11. FetchContent_Declare(GSL
  12. GIT_REPOSITORY "https://github.com/microsoft/GSL"
  13. GIT_TAG "v3.1.0"
  14. )
  15. FetchContent_MakeAvailable(GSL)
  16. include_directories(
  17. ${PROJECT_BINARY_DIR}
  18. "${PROJECT_SOURCE_DIR}/include"
  19. ${Boost_INCLUDE_DIRS}
  20. "${GSL_SOURCE_DIR}/include"
  21. )
  22. add_executable(test src/test.cpp)
  23. add_subdirectory(libnmrpflash)
  24. target_link_libraries(test PUBLIC libnmrpflash -lpcap)
  25. if (APPLE)
  26. target_link_libraries(test PUBLIC "-framework CoreFoundation")
  27. endif()
  28. target_include_directories(test PUBLIC
  29. "${PROJECT_BINARY_DIR}"
  30. "${PROJECT_SOURCE_DIR}/include"
  31. "${PROJECT_SOURCE_DIR}/libnmrpflash"
  32. )