CMakeLists.txt 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. cmake_minimum_required(VERSION 3.19)
  2. project(qmsetup VERSION 0.1.1.1)
  3. # ----------------------------------
  4. # Configure Options
  5. # ----------------------------------
  6. option(QMSETUP_VCPKG_TOOLS_HINT "Install executables to tools directory" OFF)
  7. option(QMSETUP_STATIC_RUNTIME "Static link runtime libraries on Windows" ON)
  8. # ----------------------------------
  9. # CMake Settings
  10. # ----------------------------------
  11. if(NOT DEFINED CMAKE_RUNTIME_OUTPUT_DIRECTORY)
  12. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
  13. endif()
  14. if(NOT DEFINED CMAKE_LIBRARY_OUTPUT_DIRECTORY)
  15. set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
  16. endif()
  17. if(NOT DEFINED CMAKE_ARCHIVE_OUTPUT_DIRECTORY)
  18. set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
  19. endif()
  20. if(MSVC)
  21. set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /manifest:no")
  22. set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /manifest:no")
  23. set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /manifest:no")
  24. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /utf-8")
  25. if(NOT DEFINED CMAKE_DEBUG_POSTFIX)
  26. set(CMAKE_DEBUG_POSTFIX "d")
  27. endif()
  28. endif()
  29. # ----------------------------------
  30. # Project Variables
  31. # ----------------------------------
  32. set(QMSETUP_VERSION ${PROJECT_VERSION})
  33. set(QMSETUP_INSTALL_NAME ${PROJECT_NAME})
  34. set(QMSETUP_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
  35. include(cmake/QMSetupAPI.cmake)
  36. add_subdirectory(src)