CMakeLists.txt 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. #
  2. # Portions Copyright (c) 2017 the Atomic project.
  3. #
  4. # Permission is hereby granted, free of charge, to any person obtaining a copy
  5. # of this software and associated documentation files (the "Software"), to deal
  6. # in the Software without restriction, including without limitation the rights
  7. # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  8. # copies of the Software, and to permit persons to whom the Software is
  9. # furnished to do so, subject to the following conditions:
  10. #
  11. # The above copyright notice and this permission notice shall be included in
  12. # all copies or substantial portions of the Software.
  13. #
  14. # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  15. # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  16. # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  17. # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  18. # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  19. # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  20. # THE SOFTWARE.
  21. #
  22. # When porting build scripts of third party libs please be aware:
  23. # * Atomic removed all instances of `install_header_files()` macro calls. Do not bring them back.
  24. # * Atomic added extra `set (INCLUDE_DIRS ...)`. Do not remove them.
  25. # * Atomic added extra `target_link_libraries(...)`. Do not remove them.
  26. # * Atomic added extra `target_compile_definitions(...)`. Do not remove them.
  27. # * Atomic added extra `target_include_directories(...)`. Do not remove them.
  28. # * If file contains a license with copyright attributed to Atomic project - this file is written and maintained by
  29. # Atomic team and should not be synced with upstream.
  30. # Changes should be marked with "ATOMIC BEGIN|END" or "ATOMIC FIX" comments.
  31. add_subdirectory(Box2D)
  32. add_subdirectory(Duktape)
  33. add_subdirectory(FreeType)
  34. add_subdirectory(JO)
  35. add_subdirectory(LZ4)
  36. add_subdirectory(PugiXml)
  37. add_subdirectory(STB)
  38. add_subdirectory(TurboBadger)
  39. add_subdirectory(zlib)
  40. if (NOT ATOMIC_BUILD_2D)
  41. add_subdirectory(Bullet)
  42. add_subdirectory(StanHull)
  43. endif()
  44. add_subdirectory(SDL)
  45. add_subdirectory(Recast)
  46. add_subdirectory(Detour)
  47. add_subdirectory(DetourCrowd)
  48. add_subdirectory(DetourTileCache)
  49. if (NOT WEB)
  50. add_subdirectory(Civetweb)
  51. add_subdirectory(kNet)
  52. if (NOT WIN32)
  53. add_subdirectory(openssl)
  54. endif()
  55. set (CURL_STATICLIB 1)
  56. add_subdirectory(libcurl)
  57. endif()
  58. if (NOT IOS AND NOT ANDROID AND NOT WEB)
  59. add_subdirectory(Assimp)
  60. if (NOT LINUX)
  61. add_subdirectory(LibCpuId)
  62. endif()
  63. add_subdirectory(Poco)
  64. if (ATOMIC_EDITOR)
  65. add_subdirectory(nativefiledialog)
  66. endif ()
  67. add_subdirectory(libsquish)
  68. endif ()
  69. if (ATOMIC_DATABASE_SQLITE)
  70. add_subdirectory(SQLite)
  71. endif ()
  72. if (ATOMIC_DATABASE_ODBC)
  73. add_subdirectory(nanodbc)
  74. endif ()
  75. if (LINUX OR APPLE OR ATOMIC_OPENGL AND NOT IOS)
  76. add_subdirectory(GLEW)
  77. endif()
  78. if (WIN32)
  79. add_subdirectory(MojoShader)
  80. endif()
  81. add_subdirectory(ASIO)
  82. add_subdirectory(rapidjson)
  83. add_subdirectory(WebSocketPP)
  84. if (ATOMIC_IK)
  85. add_subdirectory(ik)
  86. endif ()
  87. add_subdirectory(imgui)
  88. if (ATOMIC_PROFILING)
  89. add_subdirectory(easy_profiler)
  90. endif ()