premake4.lua 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. project "App_ExampleBrowser"
  2. hasCL = findOpenCL("clew")
  3. if (hasCL) then
  4. -- project ("App_Bullet3_OpenCL_Demos_" .. vendor)
  5. initOpenCL("clew")
  6. end
  7. language "C++"
  8. kind "ConsoleApp"
  9. includedirs {
  10. ".",
  11. "../../src",
  12. "../ThirdPartyLibs",
  13. }
  14. if _OPTIONS["lua"] then
  15. includedirs{"../ThirdPartyLibs/lua-5.2.3/src"}
  16. links {"lua-5.2.3"}
  17. defines {"ENABLE_LUA"}
  18. files {"../LuaDemo/LuaPhysicsSetup.cpp"}
  19. end
  20. links{"gwen", "OpenGL_Window","BulletSoftBody", "BulletInverseDynamicsUtils", "BulletInverseDynamics", "BulletDynamics","BulletCollision","LinearMath","Bullet3Common"}
  21. initOpenGL()
  22. initGlew()
  23. if (hasCL) then
  24. links {
  25. "Bullet3OpenCL_clew",
  26. "Bullet3Dynamics",
  27. "Bullet3Collision",
  28. "Bullet3Geometry",
  29. "Bullet3Common",
  30. }
  31. end
  32. defines {"INCLUDE_CLOTH_DEMOS"}
  33. files {
  34. "*.cpp",
  35. "*.h",
  36. "GwenGUISupport/*.cpp",
  37. "GwenGUISupport/*.h",
  38. "../SharedMemory/PhysicsClientC_API.cpp",
  39. "../SharedMemory/PhysicsClientC_API.h",
  40. "../SharedMemory/PhysicsServerExample.cpp",
  41. "../SharedMemory/PhysicsClientExample.cpp",
  42. "../SharedMemory/PhysicsServer.cpp",
  43. "../SharedMemory/PhysicsServerSharedMemory.cpp",
  44. "../SharedMemory/PhysicsClientSharedMemory.cpp",
  45. "../SharedMemory/PhysicsClient.cpp",
  46. "../SharedMemory/PosixSharedMemory.cpp",
  47. "../SharedMemory/Win32SharedMemory.cpp",
  48. "../SharedMemory/PhysicsDirect.cpp",
  49. "../SharedMemory/PhysicsDirect.h",
  50. "../SharedMemory/PhysicsDirectC_API.cpp",
  51. "../SharedMemory/PhysicsDirectC_API.h",
  52. "../SharedMemory/PhysicsLoopBack.cpp",
  53. "../SharedMemory/PhysicsLoopBack.h",
  54. "../SharedMemory/PhysicsLoopBackC_API.cpp",
  55. "../SharedMemory/PhysicsLoopBackC_API.h",
  56. "../SharedMemory/PhysicsServerCommandProcessor.cpp",
  57. "../SharedMemory/PhysicsServerCommandProcessor.h",
  58. "../MultiThreading/MultiThreadingExample.cpp",
  59. "../MultiThreading/b3PosixThreadSupport.cpp",
  60. "../MultiThreading/b3Win32ThreadSupport.cpp",
  61. "../MultiThreading/b3ThreadSupportInterface.cpp",
  62. "../InverseDynamics/InverseDynamicsExample.cpp",
  63. "../InverseDynamics/InverseDynamicsExample.h",
  64. "../BasicDemo/BasicExample.*",
  65. "../Tutorial/*",
  66. "../Collision/*",
  67. "../Collision/Internal/*",
  68. "../Benchmarks/*",
  69. "../CommonInterfaces/*",
  70. "../ForkLift/ForkLiftDemo.*",
  71. "../Importers/**",
  72. "../../Extras/Serialize/BulletWorldImporter/*",
  73. "../../Extras/Serialize/BulletFileLoader/*",
  74. "../Planar2D/Planar2D.*",
  75. "../RenderingExamples/*",
  76. "../VoronoiFracture/*",
  77. "../SoftDemo/*",
  78. "../RollingFrictionDemo/*",
  79. "../FractureDemo/*",
  80. "../DynamicControlDemo/*",
  81. "../Constraints/*",
  82. "../Vehicles/*",
  83. "../Raycast/*",
  84. "../MultiBody/MultiDofDemo.cpp",
  85. "../MultiBody/TestJointTorqueSetup.cpp",
  86. "../MultiBody/Pendulum.cpp",
  87. "../MultiBody/MultiBodyConstraintFeedback.cpp",
  88. "../MultiBody/InvertedPendulumPDControl.cpp",
  89. "../ThirdPartyLibs/stb_image/*",
  90. "../ThirdPartyLibs/Wavefront/tiny_obj_loader.*",
  91. "../ThirdPartyLibs/tinyxml/*",
  92. "../Utils/b3Clock.*",
  93. "../Utils/b3ResourcePath.*",
  94. "../GyroscopicDemo/GyroscopicSetup.cpp",
  95. "../GyroscopicDemo/GyroscopicSetup.h",
  96. "../ThirdPartyLibs/urdf/urdfdom/urdf_parser/src/pose.cpp",
  97. "../ThirdPartyLibs/urdf/urdfdom/urdf_parser/src/model.cpp",
  98. "../ThirdPartyLibs/urdf/urdfdom/urdf_parser/src/link.cpp",
  99. "../ThirdPartyLibs/urdf/urdfdom/urdf_parser/src/joint.cpp",
  100. "../ThirdPartyLibs/urdf/urdfdom/urdf_parser/include/urdf_parser/urdf_parser.h",
  101. "../ThirdPartyLibs/urdf/urdfdom_headers/urdf_exception/include/urdf_exception/exception.h",
  102. "../ThirdPartyLibs/urdf/urdfdom_headers/urdf_model/include/urdf_model/pose.h",
  103. "../ThirdPartyLibs/urdf/urdfdom_headers/urdf_model/include/urdf_model/model.h",
  104. "../ThirdPartyLibs/urdf/urdfdom_headers/urdf_model/include/urdf_model/link.h",
  105. "../ThirdPartyLibs/urdf/urdfdom_headers/urdf_model/include/urdf_model/joint.h",
  106. "../ThirdPartyLibs/tinyxml/tinystr.cpp",
  107. "../ThirdPartyLibs/tinyxml/tinyxml.cpp",
  108. "../ThirdPartyLibs/tinyxml/tinyxmlerror.cpp",
  109. "../ThirdPartyLibs/tinyxml/tinyxmlparser.cpp",
  110. "../ThirdPartyLibs/urdf/boost_replacement/lexical_cast.h",
  111. "../ThirdPartyLibs/urdf/boost_replacement/shared_ptr.h",
  112. "../ThirdPartyLibs/urdf/boost_replacement/printf_console.cpp",
  113. "../ThirdPartyLibs/urdf/boost_replacement/printf_console.h",
  114. "../ThirdPartyLibs/urdf/boost_replacement/string_split.cpp",
  115. "../ThirdPartyLibs/urdf/boost_replacement/string_split.h",
  116. }
  117. if (hasCL and findOpenGL3()) then
  118. files {
  119. "../OpenCL/broadphase/*",
  120. "../OpenCL/CommonOpenCL/*",
  121. "../OpenCL/rigidbody/GpuConvexScene.cpp",
  122. "../OpenCL/rigidbody/GpuRigidBodyDemo.cpp",
  123. }
  124. end
  125. if os.is("Linux") then
  126. initX11()
  127. end
  128. if os.is("MacOSX") then
  129. links{"Cocoa.framework"}
  130. end