texturev.lua 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. project ("texturev")
  2. uuid (os.uuid("texturev") )
  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/texturev/**"),
  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 { "wasm*" }
  101. kind "ConsoleApp"
  102. configuration { "linux-* or freebsd" }
  103. links {
  104. "X11",
  105. "GL",
  106. "pthread",
  107. }
  108. configuration { "rpi" }
  109. links {
  110. "X11",
  111. "GLESv2",
  112. "EGL",
  113. "bcm_host",
  114. "vcos",
  115. "vchiq_arm",
  116. "pthread",
  117. }
  118. configuration { "osx*" }
  119. linkoptions {
  120. "-framework Cocoa",
  121. "-framework Metal",
  122. "-framework QuartzCore",
  123. "-framework OpenGL",
  124. }
  125. configuration { "ios*" }
  126. kind "ConsoleApp"
  127. linkoptions {
  128. "-framework CoreFoundation",
  129. "-framework Foundation",
  130. "-framework OpenGLES",
  131. "-framework UIKit",
  132. "-framework QuartzCore",
  133. }
  134. configuration { "xcode*", "ios" }
  135. kind "WindowedApp"
  136. configuration { "qnx*" }
  137. targetextension ""
  138. links {
  139. "EGL",
  140. "GLESv2",
  141. }
  142. configuration {}
  143. strip()