CMakeLists.txt 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. set(server_SRCS
  2. StdInc.cpp
  3. CGameHandler.cpp
  4. CQuery.cpp
  5. CVCMIServer.cpp
  6. NetPacksServer.cpp
  7. NetPacksLobbyServer.cpp
  8. )
  9. set(server_HEADERS
  10. StdInc.h
  11. CGameHandler.h
  12. CQuery.h
  13. CVCMIServer.h
  14. )
  15. assign_source_group(${server_SRCS} ${server_HEADERS})
  16. if(ANDROID) # android needs client/server to be libraries, not executables, so we can't reuse the build part of this script
  17. return()
  18. endif()
  19. add_executable(vcmiserver ${server_SRCS} ${server_HEADERS})
  20. set(server_LIBS vcmi)
  21. if(CMAKE_SYSTEM_NAME MATCHES FreeBSD)
  22. set(server_LIBS execinfo ${server_LIBS})
  23. endif()
  24. target_link_libraries(vcmiserver PRIVATE ${server_LIBS} minizip::minizip)
  25. target_include_directories(vcmiserver
  26. PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}
  27. )
  28. if(WIN32)
  29. set_target_properties(vcmiserver
  30. PROPERTIES
  31. OUTPUT_NAME "VCMI_server"
  32. PROJECT_LABEL "VCMI_server"
  33. )
  34. endif()
  35. vcmi_set_output_dir(vcmiserver "")
  36. set_target_properties(vcmiserver PROPERTIES ${PCH_PROPERTIES})
  37. cotire(vcmiserver)
  38. install(TARGETS vcmiserver DESTINATION ${BIN_DIR})