CMakeLists.txt 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. set(vcmiqt_SRCS
  2. StdInc.cpp
  3. jsonutils.cpp
  4. launcherdirs.cpp
  5. )
  6. set(vcmiqt_HEADERS
  7. StdInc.h
  8. MessageBox.h
  9. jsonutils.h
  10. launcherdirs.h
  11. convpathqstring.h
  12. vcmiqt.h
  13. )
  14. assign_source_group(${vcmiqt_SRCS} ${vcmiqt_HEADERS})
  15. if(ENABLE_STATIC_LIBS OR NOT (ENABLE_EDITOR AND ENABLE_LAUNCHER))
  16. add_library(vcmiqt STATIC ${vcmiqt_SRCS} ${vcmiqt_HEADERS})
  17. target_compile_definitions(vcmiqt PRIVATE VCMIQT_STATIC)
  18. set(TARGET_IS_SHARED OFF)
  19. else()
  20. add_library(vcmiqt SHARED ${vcmiqt_SRCS} ${vcmiqt_HEADERS})
  21. target_compile_definitions(vcmiqt PRIVATE VCMIQT_SHARED)
  22. set(TARGET_IS_SHARED ON)
  23. endif()
  24. if(WIN32)
  25. set_target_properties(vcmiqt
  26. PROPERTIES
  27. OUTPUT_NAME "VCMI_vcmiqt"
  28. PROJECT_LABEL "VCMI_vcmiqt"
  29. )
  30. endif()
  31. target_link_libraries(vcmiqt vcmi Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Widgets)
  32. target_include_directories(vcmiqt PUBLIC
  33. ${CMAKE_CURRENT_SOURCE_DIR}
  34. )
  35. if(TARGET_IS_SHARED)
  36. install(TARGETS vcmiqt RUNTIME DESTINATION ${LIB_DIR} LIBRARY DESTINATION ${LIB_DIR})
  37. endif()
  38. vcmi_set_output_dir(vcmiqt "")
  39. enable_pch(vcmiqt)