1 Revision history for Shaderc 2 3 v2017.2-dev 2017-03-10 4 - Support GLSL 4.6 and ESSL 3.2 5 - Add options for automatically set bindings for (uniform) resources that 6 don't have bindings set in shader source. 7 - Add option for using HLSL IO mappings as expressed in source. 8 - Add options for setting resource binding base numbers. 9 - Add option to use HLSL resource register numbers for bindings. 10 - HLSL compilation now defaults to HLSL packing rules. 11 (This change is inherited from Glslang commit 7cca140.) 12 - CMake install rules uses GNUInstallDirs. For example, install to lib64 13 when that is the norm for the target system. 14 15 v2017.1 2017-03-10 16 - Add option to automatically assign bindings to uniform variables 17 that don't have an explicit 'binding' layout in the shader source. 18 - Enable NVIDIA extensions by default in GLSL compilation 19 - README mentions language bindings provided by 3rd parties. 20 - README describes the known-good branch on GitHub 21 - Fixed examples in shaderc.h; added C API use to examples/online-compile 22 - Fixes issues: 23 #289: Don't output an object file when compilation fails. 24 #296: Enable use of the CMake in Android Studio. 25 26 v2016.2 2016-12-13 27 - Describe Shaderc's level of stability. 28 - Support HLSL compilation, exposing functionality in Glslang. 29 - Supported in C, C++ API 30 - glslc accepts "-x hlsl", and assumes .hlsl files are HLSL. 31 - glslc accepts "-fentry-point=<name>" to set entry point name, 32 overriding default value "main". 33 - Support setting shader resource limits in C, C++ APIs, and in 34 glslc 35 - glslc adds -flimit=<setting> 36 - glslc adds --show-limits to display defaults and valid resource 37 limit syntax. 38 - glslc adds "-flimit-file <file>" support to read Glslang resource 39 configuration files, i.e. the output of "glslangValidator -c". 40 - Enable AMD extensions by default in GLSL compilation 41 - Fixes issues: 42 #281: Work around Android build issue with abspath on Windows 43 #283: Increase default maxDrawBuffers to 4, to match Vulkan/GLES3.0 44 45 v2016.1 2016-10-12 46 - C API for assembling now takes an options object 47 - Support compilation options to optimize for size. 48 - Maintain compatibility with recent SPIRV-Tools and Glslang versions. 49 - Update examples. 50 - Build cleanups. 51 - Fixes issues: 52 #238: Fix invocation of python scripts during build 53 54 v2016.0 2016-07-07 55 56 - Adds v<year>.<index> versioning, with "-dev" suffix to indicate work in 57 progress. The intent is to summarize and report functionalities more easily 58 for incorporating into downstream projects. 59 60 - Summary of functionalities (See the README.md for more details): 61 - Provides libraries and command line tools for generating SPIR-V modules 62 - Supports GLSL source code or SPIR-V assembly as input 63 - Supports SPIR-V binary or assembly text as output 64 - Command line options follow GCC/Clang conventions 65 - Supports various semantics (OpenGL, OpenGL Compatible and Vulkan) 66 - Supports #include 67 - Supports user-defined macros 68 - Supports dependency information dumping 69