CMakeLists.txt 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. set (ATOMIC_TOOL_SOURCES AtomicTool.cpp AtomicTool.h)
  2. if (WIN32)
  3. add_definitions(-DATOMIC_WIN32_CONSOLE)
  4. endif(WIN32)
  5. add_executable(AtomicTool ${ATOMIC_TOOL_SOURCES})
  6. target_link_libraries(AtomicTool ToolCore AtomicNETScript Poco Atomic)
  7. if (WIN32)
  8. target_link_libraries(AtomicTool Iphlpapi Wldap32)
  9. endif()
  10. target_link_libraries(AtomicTool libcurl)
  11. # Custom target which is always considered out of date, checks for zero size/missing script bindings and generates
  12. add_custom_target( AtomicToolCheckScripts
  13. WORKING_DIRECTORY "${ATOMIC_SOURCE_DIR}"
  14. COMMAND "${CMAKE_COMMAND}" -E make_directory \"${ATOMIC_SOURCE_DIR}/Artifacts/Build/AtomicTool\"
  15. COMMAND "${CMAKE_COMMAND}" -E copy_if_different \"$<TARGET_FILE:AtomicTool>\" \"${ATOMIC_SOURCE_DIR}/Artifacts/Build/AtomicTool/\"
  16. COMMAND ${ATOMIC_NODE_JAKE};build:genscripts[false] )
  17. add_dependencies (AtomicToolCheckScripts AtomicTool)
  18. # Copy AtomicTool to Artifacts
  19. add_custom_command( TARGET AtomicTool POST_BUILD
  20. COMMAND "${CMAKE_COMMAND}"
  21. ARGS -E make_directory \"${ATOMIC_SOURCE_DIR}/Artifacts/Build/AtomicTool\"
  22. COMMAND "${CMAKE_COMMAND}"
  23. ARGS -E copy_if_different \"$<TARGET_FILE:AtomicTool>\" \"${ATOMIC_SOURCE_DIR}/Artifacts/Build/AtomicTool/\"
  24. COMMENT "Copying AtomicTool to Build Artifacts" )
  25. if (WIN32)
  26. # Copy the D3D shader compiler (for pre-Windows 8)
  27. add_custom_command( TARGET AtomicTool POST_BUILD
  28. COMMAND ${CMAKE_COMMAND}
  29. ARGS -E copy_if_different \"${D3DCOMPILER_47_DLL}\" \"$<TARGET_FILE_DIR:AtomicTool>/D3DCompiler_47.dll\"
  30. COMMAND "${CMAKE_COMMAND}"
  31. ARGS -E make_directory \"${ATOMIC_SOURCE_DIR}/Artifacts/Build/AtomicTool\"
  32. COMMAND ${CMAKE_COMMAND}
  33. ARGS -E copy_if_different \"${D3DCOMPILER_47_DLL}\" \"${ATOMIC_SOURCE_DIR}/Artifacts/Build/AtomicTool/D3DCompiler_47.dll\"
  34. COMMENT "Copying D3DShader compiler to Build Artifacts" )
  35. endif(WIN32)
  36. add_custom_target ( GenerateScriptBindings
  37. WORKING_DIRECTORY "${ATOMIC_SOURCE_DIR}"
  38. COMMAND ${ATOMIC_NODE_JAKE};build:genscripts[true];--trace
  39. DEPENDS AtomicTool )
  40. add_custom_target ( GenerateAtomicNET
  41. WORKING_DIRECTORY "${ATOMIC_SOURCE_DIR}"
  42. COMMAND ${ATOMIC_NODE_JAKE};build:genAtomicNET[desktop,$<$<CONFIG:debug>:"Debug">$<$<CONFIG:release>:"Release">];--trace
  43. DEPENDS AtomicTool )