PolycodeDependencies.cmake 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. # Find the required dependency libraries to use the polycode static library.
  2. #
  3. # Required variables by this cmake file:
  4. # ${POLYCODE_CMAKE_DIR} points to the directory with all of polycode's cmake scripts(including this one)
  5. # ${POLYCODE_RELEASE_DIR} points to the directory where the binares are produced to(Polycode/Release/${SYSTEM_NAME}) by default
  6. #
  7. # Sets ${POLYCODE_DEPENDENCY_LIBS} to something you can pass to TARGET_LINK_LIBRARIES
  8. # It will use the "debug" and "optimized" cmake keywords, so it will not work for anything other than TARGET_LINK_LIBRARIES
  9. #
  10. #
  11. # Uses INCLUDE_DIRECTORIES AND LINK_DIRECTORIES to add the necessary directories for the given links/includes to work.
  12. INCLUDE(${POLYCODE_CMAKE_DIR}/PolycodeIncludes.cmake)
  13. INCLUDE(${POLYCODE_CMAKE_DIR}/FindBullet.cmake)
  14. INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/Include
  15. ${POLYCODE_RELEASE_DIR}/Framework/Core/include
  16. ${POLYCODE_RELEASE_DIR}/Framework/Modules/include
  17. ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include
  18. ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/include/AL
  19. ${PolycodeIDE_SOURCE_DIR}/include)
  20. LINK_DIRECTORIES(${POLYCODE_RELEASE_DIR}/Framework/Core/lib
  21. ${POLYCODE_RELEASE_DIR}/Framework/Modules/lib
  22. ${POLYCODE_RELEASE_DIR}/Framework/Bindings/Lua/Core/lib
  23. ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/lib)
  24. IF(MSVC OR MINGW)
  25. SET(POLYCODE_DEPENDENCY_LIBS
  26. PolycodeLua_d
  27. Polycore_d
  28. ${ZLIB_LIBRARIES}
  29. ${LUA_LIBRARY}
  30. ${OPENGL_LIBRARIES}
  31. ${OPENAL_LIBRARY}
  32. ${PNG_LIBRARIES}
  33. ${FREETYPE_LIBRARIES}
  34. ${PHYSFS_LIBRARY}
  35. ${OGG_LIBRARY}
  36. ${VORBIS_LIBRARY}
  37. ${VORBISFILE_LIBRARY}
  38. opengl32
  39. glu32
  40. winmm
  41. ws2_32
  42. Polycode2DPhysics
  43. Polycode3DPhysics
  44. PolycodeUI
  45. optimized ${BOX2D_RELEASE_LIBRARY}
  46. debug ${BOX2D_DEBUG_LIBRARY}
  47. optimized ${LIBBULLETMULTITHREADED}
  48. optimized ${LIBBULLETSOFTBODY}
  49. optimized ${LIBBULLETDYNAMICS}
  50. optimized ${LIBBULLETCOLLISION}
  51. optimized ${LIBBULLETMATH}
  52. debug ${LIBBULLETMULTITHREADED_DEBUG}
  53. debug ${LIBBULLETSOFTBODY_DEBUG}
  54. debug ${LIBBULLETDYNAMICS_DEBUG}
  55. debug ${LIBBULLETCOLLISION_DEBUG}
  56. debug ${LIBBULLETMATH_DEBUG})
  57. ELSEIF(APPLE)
  58. # TODO: Add apple support
  59. ELSE(MSVC OR MINGW)
  60. SET(POLYCODE_DEPENDENCY_LIBS
  61. rt
  62. pthread
  63. PolycodeLua_d
  64. PolycodeUI_d
  65. Polycore_d
  66. ${LUA_LIBRARY}
  67. ${FREETYPE_LIBRARIES}
  68. ${VORBISFILE_LIBRARY}
  69. ${VORBIS_LIBRARY}
  70. ${OGG_LIBRARY}
  71. ${OPENAL_LIBRARY}
  72. ${PHYSFS_LIBRARY}
  73. ${PNG_LIBRARIES}
  74. ${ZLIB_LIBRARY}
  75. ${OPENGL_LIBRARIES}
  76. ${SDL_LIBRARY}
  77. dl
  78. Polycode2DPhysics_d
  79. Polycode3DPhysics_d
  80. ${BOX2D_RELEASE_LIBRARY}
  81. optimized ${LIBBULLETMULTITHREADED}
  82. optimized ${LIBBULLETSOFTBODY}
  83. optimized ${LIBBULLETDYNAMICS}
  84. optimized ${LIBBULLETCOLLISION}
  85. optimized ${LIBBULLETMATH}
  86. debug ${LIBBULLETMULTITHREADED_DEBUG}
  87. debug ${LIBBULLETSOFTBODY_DEBUG}
  88. debug ${LIBBULLETDYNAMICS_DEBUG}
  89. debug ${LIBBULLETCOLLISION_DEBUG}
  90. debug ${LIBBULLETMATH_DEBUG})
  91. ENDIF(MSVC OR MINGW)