CMakeLists.txt 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. project (Atomic)
  2. cmake_minimum_required (VERSION 2.8)
  3. set (CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/Build/CMake/Modules)
  4. include(AtomicUtils)
  5. add_definitions(-DATOMIC_ROOT_SOURCE_DIR="${CMAKE_SOURCE_DIR}" -DATOMIC_ROOT_BUILD_DIR="${CMAKE_BINARY_DIR}")
  6. add_definitions( -DATOMIC_API= -DATOMIC_STATIC_DEFINE -DATOMIC_ATOMIC2D -DATOMIC_LOGGING -DATOMIC_PROFILING)
  7. if (NOT DEFINED ATOMIC_DEV_BUILD)
  8. set(ATOMIC_DEV_BUILD 1)
  9. ENDIF()
  10. if (ATOMIC_DEV_BUILD)
  11. add_definitions("-DATOMIC_DEV_BUILD=1")
  12. endif()
  13. # Disable until https://github.com/AtomicGameEngine/AtomicGameEngine/issues/554 is addressed
  14. # add_definitions("-DATOMIC_SOURCE_BUILD=1")
  15. # this is here as QtCreator is having trouble picking up #include <Atomic/*> without it
  16. include_directories(${CMAKE_SOURCE_DIR}/Source ${CMAKE_SOURCE_DIR}/Source/AtomicEditor/Source)
  17. set (ATOMIC_LINK_LIBRARIES Atomic Box2D Duktape TurboBadger FreeType JO LZ4 PugiXml STB)
  18. if (NOT ATOMIC_BUILD_2D)
  19. add_definitions( -DATOMIC_PHYSICS -DATOMIC_3D)
  20. set (ATOMIC_LINK_LIBRARIES ${ATOMIC_LINK_LIBRARIES} Bullet StanHull)
  21. endif()
  22. if (NOT EMSCRIPTEN)
  23. add_definitions( -DATOMIC_NETWORK)
  24. set (ATOMIC_LINK_LIBRARIES ${ATOMIC_LINK_LIBRARIES} SDL Civetweb Recast Detour DetourCrowd DetourTileCache kNet libcurl )
  25. endif()
  26. add_definitions( -DATOMIC_WEB )
  27. if (MSVC)
  28. include(AtomicWindows)
  29. elseif(APPLE)
  30. if (IOS)
  31. include(AtomicIOS)
  32. else()
  33. include(AtomicMac)
  34. endif()
  35. elseif(LINUX)
  36. include(AtomicLinux)
  37. elseif(ANDROID)
  38. include(AtomicAndroid)
  39. elseif(EMSCRIPTEN)
  40. include(AtomicWeb)
  41. endif()
  42. find_program(CLDOC cldoc)
  43. if(CLDOC)
  44. add_custom_target(docs
  45. DEPENDS AtomicEngineDocs
  46. )
  47. endif()
  48. add_subdirectory(Source)