geometryv.lua 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. project ("geometryv")
  2. uuid (os.uuid("geometryv") )
  3. kind "ConsoleApp"
  4. configuration {}
  5. includedirs {
  6. path.join(BX_DIR, "include"),
  7. path.join(BIMG_DIR, "include"),
  8. path.join(BGFX_DIR, "include"),
  9. path.join(BGFX_DIR, "3rdparty"),
  10. path.join(BGFX_DIR, "examples/common"),
  11. path.join(MODULE_DIR, "include"),
  12. path.join(MODULE_DIR, "3rdparty"),
  13. }
  14. files {
  15. path.join(MODULE_DIR, "tools/geometryv/**"),
  16. }
  17. links {
  18. "example-common",
  19. "bimg_decode",
  20. "bimg",
  21. "bgfx",
  22. "bx",
  23. }
  24. if _OPTIONS["with-sdl"] then
  25. defines { "ENTRY_CONFIG_USE_SDL=1" }
  26. links { "SDL2" }
  27. configuration { "x32", "windows" }
  28. libdirs { "$(SDL2_DIR)/lib/x86" }
  29. configuration { "x64", "windows" }
  30. libdirs { "$(SDL2_DIR)/lib/x64" }
  31. configuration {}
  32. end
  33. if _OPTIONS["with-glfw"] then
  34. defines { "ENTRY_CONFIG_USE_GLFW=1" }
  35. links { "glfw3" }
  36. configuration { "linux or freebsd" }
  37. links {
  38. "Xrandr",
  39. "Xinerama",
  40. "Xi",
  41. "Xxf86vm",
  42. "Xcursor",
  43. }
  44. configuration { "osx" }
  45. linkoptions {
  46. "-framework CoreVideo",
  47. "-framework IOKit",
  48. }
  49. configuration {}
  50. end
  51. configuration { "vs*" }
  52. linkoptions {
  53. "/ignore:4199", -- LNK4199: /DELAYLOAD:*.dll ignored; no imports found from *.dll
  54. }
  55. links { -- this is needed only for testing with GLES2/3 on Windows with VS2008
  56. "DelayImp",
  57. }
  58. configuration { "vs201*" }
  59. linkoptions { -- this is needed only for testing with GLES2/3 on Windows with VS201x
  60. "/DELAYLOAD:\"libEGL.dll\"",
  61. "/DELAYLOAD:\"libGLESv2.dll\"",
  62. }
  63. configuration { "mingw-*" }
  64. targetextension ".exe"
  65. configuration { "vs20* or mingw*" }
  66. links {
  67. "comdlg32",
  68. "gdi32",
  69. "psapi",
  70. }
  71. configuration { "winstore*" }
  72. removelinks {
  73. "DelayImp",
  74. "gdi32",
  75. "psapi"
  76. }
  77. links {
  78. "d3d11",
  79. "d3d12",
  80. "dxgi"
  81. }
  82. linkoptions {
  83. "/ignore:4264" -- LNK4264: archiving object file compiled with /ZW into a static library; note that when authoring Windows Runtime types it is not recommended to link with a static library that contains Windows Runtime metadata
  84. }
  85. -- WinRT targets need their own output directories are build files stomp over each other
  86. targetdir (path.join(BGFX_BUILD_DIR, "arm_" .. _ACTION, "bin", _name))
  87. objdir (path.join(BGFX_BUILD_DIR, "arm_" .. _ACTION, "obj", _name))
  88. configuration { "mingw-clang" }
  89. kind "ConsoleApp"
  90. configuration { "android*" }
  91. kind "ConsoleApp"
  92. targetextension ".so"
  93. linkoptions {
  94. "-shared",
  95. }
  96. links {
  97. "EGL",
  98. "GLESv2",
  99. }
  100. configuration { "asmjs" }
  101. kind "ConsoleApp"
  102. targetextension ".bc"
  103. configuration { "linux-* or freebsd" }
  104. links {
  105. "X11",
  106. "GL",
  107. "pthread",
  108. }
  109. configuration { "rpi" }
  110. links {
  111. "X11",
  112. "GLESv2",
  113. "EGL",
  114. "bcm_host",
  115. "vcos",
  116. "vchiq_arm",
  117. "pthread",
  118. }
  119. configuration { "osx" }
  120. linkoptions {
  121. "-framework Cocoa",
  122. "-framework Metal",
  123. "-framework QuartzCore",
  124. "-framework OpenGL",
  125. }
  126. configuration { "ios*" }
  127. kind "ConsoleApp"
  128. linkoptions {
  129. "-framework CoreFoundation",
  130. "-framework Foundation",
  131. "-framework OpenGLES",
  132. "-framework UIKit",
  133. "-framework QuartzCore",
  134. }
  135. configuration { "xcode4", "ios" }
  136. kind "WindowedApp"
  137. configuration { "qnx*" }
  138. targetextension ""
  139. links {
  140. "EGL",
  141. "GLESv2",
  142. }
  143. configuration {}
  144. strip()