CMakeLists.txt 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. include_directories(${CMAKE_CURRENT_SOURCE_DIR}
  2. ${CMAKE_SOURCE_DIR}/Source/ThirdParty
  3. ${CMAKE_SOURCE_DIR}/Source/ThirdParty/rapidjson/include
  4. ${CMAKE_SOURCE_DIR}/Source/ThirdParty/kNet/include
  5. ${CMAKE_SOURCE_DIR}/Source/ThirdParty/FreeType/include
  6. ${CMAKE_SOURCE_DIR}/Source/ThirdParty/Box2D)
  7. file (GLOB CONTAINER_SOURCE Container/*.cpp Container/*.h)
  8. file (GLOB CORE_SOURCE Core/*.cpp Core/*.h)
  9. file (GLOB MATH_SOURCE Math/*.cpp Math/*.h)
  10. file (GLOB ENGINE_SOURCE Engine/*.cpp Engine/*.h)
  11. file (GLOB INPUT_SOURCE Input/*.cpp Input/*.h)
  12. file (GLOB IO_SOURCE IO/*.cpp IO/*.h)
  13. file (GLOB RESOURCE_SOURCE Resource/*.cpp Resource/*.h)
  14. file (GLOB AUDIO_SOURCE Audio/*.cpp Audio/*.h)
  15. file (GLOB NETWORK_SOURCE Network/*.cpp Network/*.h)
  16. if (NOT EMSCRIPTEN)
  17. file (GLOB IPC_SOURCE IPC/*.cpp IPC/*.h)
  18. endif()
  19. file (GLOB ATOMIC2D_SOURCE Atomic2D/*.cpp Atomic2D/*.h)
  20. file (GLOB SCENE_SOURCE Scene/*.cpp Scene/*.h)
  21. file (GLOB UI_SOURCE UI/*.cpp UI/*.h)
  22. if (NOT ATOMIC_BUILD_2D)
  23. file (GLOB ATOMIC3D_SOURCE Atomic3D/*.cpp Atomic3D/*.h)
  24. file (GLOB PHYSICS_SOURCE Physics/*.cpp Physics/*.h)
  25. file (GLOB NAVIGATION_SOURCE Navigation/*.cpp Navigation/*.h)
  26. file (GLOB ENVIRONMENT_SOURCE Environment/*.cpp Environment/*.h)
  27. endif()
  28. file (GLOB GRAPHICS_SOURCE Graphics/*.cpp Graphics/*.h)
  29. if (MSVC)
  30. file (GLOB GRAPHICS_IMPL_SOURCE Graphics/Direct3D9/*.cpp Graphics/Direct3D9/*.h)
  31. else()
  32. # for kNet
  33. add_definitions (-DUNIX)
  34. file (GLOB GRAPHICS_IMPL_SOURCE Graphics/OpenGL/*.cpp Graphics/OpenGL/*.h)
  35. endif()
  36. if (ANDROID)
  37. endif()
  38. if (APPLE)
  39. if (NOT IOS)
  40. set (PLATFORM_SOURCE IO/MacFileWatcher.mm)
  41. else()
  42. endif()
  43. endif()
  44. if (EMSCRIPTEN)
  45. endif()
  46. set (SOURCE_FILES ${CONTAINER_SOURCE} ${CORE_SOURCE} ${ENGINE_SOURCE} ${INPUT_SOURCE}
  47. ${AUDIO_SOURCE} ${IO_SOURCE} ${MATH_SOURCE}
  48. ${RESOURCE_SOURCE} ${PHYSICS_SOURCE} ${IPC_SOURCE}
  49. ${GRAPHICS_SOURCE} ${GRAPHICS_IMPL_SOURCE}
  50. ${ATOMIC3D_SOURCE}
  51. ${ATOMIC2D_SOURCE} ${ENVIRONMENT_SOURCE}
  52. ${SCENE_SOURCE} ${UI_SOURCE}
  53. ${PLATFORM_SOURCE})
  54. if (NOT EMSCRIPTEN)
  55. set (SOURCE_FILES ${SOURCE_FILES} ${NETWORK_SOURCE} ${NAVIGATION_SOURCE})
  56. endif()
  57. add_library(Atomic ${SOURCE_FILES})