X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=Build;h=1a4a262f3a1b6387683a4636af1beb222cae62ee;hp=f193a780a224a2c5cde340fb10424705460f7710;hb=HEAD;hpb=7aaec9a70b8d7733429bec043f8e33e02956f266 diff --git a/Build b/Build index f193a780..c195c2c8 100644 --- a/Build +++ b/Build @@ -8,30 +8,43 @@ package "mspgl" require "mspmath"; require "mspgui"; require "sigc++-2.0"; - if_arch "android" - { - require "opengles"; - }; - if_arch "!android" + + feature "vulkan" "Use Vulkan instead of OpenGL as backend"; + if_feature "vulkan" { - require "opengl"; + require "vulkan"; }; - generate "GLEX" + if_feature "!vulkan" { - in_suffix ".glext"; - out_suffix ".cpp"; - out_suffix ".h"; - command "scripts/extgen.py"; if_arch "android" { - argument "gles2"; + require "opengles"; + }; + if_arch "!android" + { + require "opengl"; + }; + + generate "GLEX" + { + in_suffix ".glext"; + out_suffix ".cpp"; + out_suffix ".h"; + command "scripts/extgen.py"; + if_arch "android" + { + argument "gles2"; + }; }; }; generate "RES" { in_suffix ".glsl"; + in_suffix ".samp"; + in_suffix ".mesh"; + in_suffix ".png"; out_suffix ".cpp"; command "mspdatatool"; arguments "-i" "-n" "Msp::GL"; @@ -49,18 +62,36 @@ package "mspgl" source "source/resources"; source "source/glsl"; source "source/builders"; + if_feature "vulkan" + { + source "source/backends/vulkan"; + build_info + { + incpath "source/backends/vulkan"; + }; + }; + if_feature "!vulkan" + { + source "source/backends/opengl"; + build_info + { + incpath "source/backends/opengl"; + }; + }; source "extensions"; + source "builtin_data"; source "shaderlib"; build_info { + incpath "source"; incpath "source/core"; incpath "source/materials"; incpath "source/render"; incpath "source/effects"; incpath "source/animation"; incpath "source/resources"; - incpath "source/glsl"; incpath "source/builders"; + standard CXX "c++11"; }; install true; install_map @@ -71,8 +102,10 @@ package "mspgl" map "source/effects" "include/msp/gl"; map "source/animation" "include/msp/gl"; map "source/resources" "include/msp/gl"; - map "source/glsl" "include/msp/gl"; + map "source/glsl" "include/msp/gl/glsl"; map "source/builders" "include/msp/gl"; + map "source/backends/opengl" "include/msp/gl"; + map "source/backends/vulkan" "include/msp/gl"; map "extensions" "include/msp/gl/extensions"; }; }; @@ -86,9 +119,30 @@ package "mspgl" program "desertpillars" { - source "demos/desertpillars.cpp"; + source "demos/desertpillars/source"; + require "sigc++-2.0"; + use "mspgl"; + build_info + { + standard CXX "c++14"; + }; + }; + + program "forestpond" + { + source "demos/forestpond/source"; require "sigc++-2.0"; use "mspgl"; + build_info + { + standard CXX "c++14"; + }; + }; + + program "glslcompiler" + { + source "tools/glslcompiler.cpp"; + use "mspgl"; }; source_tarball