summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/bgfx/scripts/genie.lua
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/bgfx/scripts/genie.lua')
-rw-r--r--3rdparty/bgfx/scripts/genie.lua80
1 files changed, 64 insertions, 16 deletions
diff --git a/3rdparty/bgfx/scripts/genie.lua b/3rdparty/bgfx/scripts/genie.lua
index 05bc713595a..516833df6dc 100644
--- a/3rdparty/bgfx/scripts/genie.lua
+++ b/3rdparty/bgfx/scripts/genie.lua
@@ -1,5 +1,5 @@
--
--- Copyright 2010-2018 Branimir Karadzic. All rights reserved.
+-- Copyright 2010-2019 Branimir Karadzic. All rights reserved.
-- License: https://github.com/bkaradzic/bgfx#license-bsd-2-clause
--
@@ -19,13 +19,13 @@ newoption {
}
newoption {
- trigger = "with-profiler",
- description = "Enable build with intrusive profiler.",
+ trigger = "with-wayland",
+ description = "Use Wayland backend.",
}
newoption {
- trigger = "with-scintilla",
- description = "Enable building with Scintilla editor.",
+ trigger = "with-profiler",
+ description = "Enable build with intrusive profiler.",
}
newoption {
@@ -48,13 +48,40 @@ newoption {
description = "Enable building examples.",
}
+newaction {
+ trigger = "idl",
+ description = "Generate bgfx interface source code",
+ execute = function ()
+
+ local gen = require "bgfx-codegen"
+
+ local function generate(tempfile, outputfile, indent)
+ local codes = gen.apply(tempfile)
+ codes = gen.format(codes, {indent = indent})
+ gen.write(codes, outputfile)
+ print("Generating: " .. outputfile)
+ end
+
+ generate("temp.bgfx.h" , "../include/bgfx/c99/bgfx.h", " ")
+ generate("temp.bgfx.idl.inl", "../src/bgfx.idl.inl", "\t")
+ generate("temp.defines.h", "../include/bgfx/defines.h", "\t")
+
+ do
+ local csgen = require "bindings-cs"
+ csgen.write(csgen.gen(), "../bindings/cs/bgfx.cs")
+ end
+
+ os.exit()
+ end
+}
+
solution "bgfx"
configurations {
"Debug",
"Release",
}
- if _ACTION == "xcode4" then
+ if _ACTION:match "xcode*" then
platforms {
"Universal",
}
@@ -107,6 +134,10 @@ end
function copyLib()
end
+if _OPTIONS["with-wayland"] then
+ defines { "WL_EGL_PLATFORM=1" }
+end
+
if _OPTIONS["with-sdl"] then
if os.is("windows") then
if not os.getenv("SDL2_DIR") then
@@ -139,8 +170,8 @@ function exampleProjectDefaults()
}
links {
- "example-common",
"example-glue",
+ "example-common",
"bgfx",
"bimg_decode",
"bimg",
@@ -151,6 +182,13 @@ function exampleProjectDefaults()
defines { "ENTRY_CONFIG_USE_SDL=1" }
links { "SDL2" }
+ configuration { "linux or freebsd" }
+ if _OPTIONS["with-wayland"] then
+ links {
+ "wayland-egl",
+ }
+ end
+
configuration { "osx" }
libdirs { "$(SDL2_DIR)/lib" }
@@ -162,13 +200,19 @@ function exampleProjectDefaults()
links { "glfw3" }
configuration { "linux or freebsd" }
- links {
- "Xrandr",
- "Xinerama",
- "Xi",
- "Xxf86vm",
- "Xcursor",
- }
+ if _OPTIONS["with-wayland"] then
+ links {
+ "wayland-egl",
+ }
+ else
+ links {
+ "Xrandr",
+ "Xinerama",
+ "Xi",
+ "Xxf86vm",
+ "Xcursor",
+ }
+ end
configuration { "osx" }
linkoptions {
@@ -305,13 +349,13 @@ function exampleProjectDefaults()
"-weak_framework Metal",
}
- configuration { "xcode4", "ios" }
+ configuration { "xcode*", "ios" }
kind "WindowedApp"
files {
path.join(BGFX_DIR, "examples/runtime/iOS-Info.plist"),
}
- configuration { "xcode4", "tvos" }
+ configuration { "xcode*", "tvos" }
kind "WindowedApp"
files {
path.join(BGFX_DIR, "examples/runtime/tvOS-Info.plist"),
@@ -448,6 +492,9 @@ or _OPTIONS["with-combined-examples"] then
, "36-sky"
, "37-gpudrivenrendering"
, "38-bloom"
+ , "39-assao"
+ , "40-svt"
+ , "41-tess"
)
-- C99 source doesn't compile under WinRT settings
@@ -467,4 +514,5 @@ if _OPTIONS["with-tools"] then
dofile "texturec.lua"
dofile "texturev.lua"
dofile "geometryc.lua"
+ dofile "geometryv.lua"
end