diff options
Diffstat (limited to '3rdparty/bgfx/scripts/genie.lua')
-rw-r--r-- | 3rdparty/bgfx/scripts/genie.lua | 80 |
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 |