- 16 Jul, 2020 2 commits
-
-
John Kessenich authored
When a return value's type has no precision qualification (e.g., the return expression is formed from a constructor), and the formal function return type has a precision qualification, back propagate that from the return type to the type of the return value's expression.
-
John Kessenich authored
runtests: Check error codes, set LD_LIBRARY_PATH
-
- 15 Jul, 2020 1 commit
-
-
Ben Clayton authored
`glslangValidator` will only return [the codes 0..6](https://github.com/KhronosGroup/glslang/blob/b481744aea1ecf52ee4591afaa0f5e270b9d1636/StandAlone/StandAlone.cpp#L117-L125). Fail the test if anything else is returned (like due to the exe crashing). Also set `LD_LIBRARY_PATH` to contain the `lib` directory before calling glslang.
-
- 14 Jul, 2020 8 commits
-
-
John Kessenich authored
Kokoro: Print test output to stdout
-
John Kessenich authored
Give build_info.py the executable bit
-
Ben Clayton authored
-
John Kessenich authored
Fix recently found non-determinism with gl_WorldToObject3x4EXT.
-
John Kessenich authored
-
John Kessenich authored
CMake: Move project() to top of CMakeLists.txt
-
John Kessenich authored
Add bison license to LICENSE.txt
-
John Kessenich authored
This problem needs to be fixed, but in parallel, we need to see master and any other changes to it passing all tests. The removed test is ray-tracing centric, and may indicate non-determinism in recent code added for that functionality.
-
- 13 Jul, 2020 8 commits
-
-
Ben Clayton authored
-
Ben Clayton authored
Also remove `NOTICE` from message() about PCHs - it seems to print this in the actual message, contrary to the documentation where it is used as a severity.
-
Ben Clayton authored
-
John Kessenich authored
Revert "Merge pull request #2330 from ShabbyX/optimize_for_angle"
-
John Kessenich authored
-
John Kessenich authored
This reverts commit 1ee5d1c0, reversing changes made to 906d48a7.
-
John Kessenich authored
-
John Kessenich authored
-
- 12 Jul, 2020 4 commits
-
-
John Kessenich authored
Add missing comma from license-checker.cfg
-
Ben Clayton authored
Fixes license checker presubmit.
-
John Kessenich authored
Common: include standard headers before doing any defines
-
Christopher Degawa authored
currently, due to ```c++ \#if (defined(_MSC_VER) && _MSC_VER < 1900 /*vs2015*/) || defined MINGW_HAS_SECURE_API #include <basetsd.h> #ifndef snprintf #define snprintf sprintf_s #endif #define safe_vsprintf(buf,max,format,args) vsnprintf_s((buf), (max), (max), (format), (args)) ``` defining `snprintf` to `sprintf_s` essentially unconditionally, this will break the stdio.h+cstdio system header for mingw-w64 g++ in msys2 with shaderc https://github.com/google/shaderc/issues/1065 an alternative change would be https://raw.githubusercontent.com/shinchiro/mpv-winbuild-cmake/master/packages/glslang-0001-fix-gcc-10.1-error.patch in which the `|| defined MINGW_HAS_SECURE_API` part is removed Signed-off-by:Christopher Degawa <ccom@randomderp.com>
-
- 11 Jul, 2020 1 commit
-
-
John Kessenich authored
Optimize for angle
-
- 10 Jul, 2020 5 commits
-
-
John Kessenich authored
Fix CMake rules when nesting CMake projects
-
Ben Clayton authored
`${CMAKE_SOURCE_DIR}` points to the outer project root, not the current directory. Fixes building of `glslang` when included into another CMake project. -
John Kessenich authored
Attempt to fix chromium builds
-
Ben Clayton authored
It would seem that `glslang_sources` has a private dependency on `glslang_build_info`, so `glslang_validator` cannot transitively `#include` the generated `glslang/build_info.h` header. Add `glslang_build_info` as a direct dependency to `glslang_validator`. Also remove the duplicate dependency on `glslang_build_info` in `glslang_sources_common` Note: This is a speculative fix as I can build Chromium fine without these changes. Not sure what's different between these configs.
-
John Kessenich authored
Generate build information from CHANGES.md
-
- 09 Jul, 2020 2 commits
-
-
Ben Clayton authored
This PR significantly reworks the way glslang is versioned. Instead of committing changes to the `GLSLANG_MINOR_VERSION` define in `glslang/Public/ShaderLang.h`, and using `make-revision` to generate `GLSLANG_PATCH_LEVEL` in `glslang/Include/revision.h`, all version information is now derived from the new `CHANGES.md` file. `CHANGES.md` acts as the single source of truth for glslang version information, along with a convenient place to put all release notes for each notable change made. `CHANGES.md` is parsed using the new `build_info.py` python script. This script can read basic template files to produce new source files, which it does to read the new `build_info.h.tmpl` to generate (at build time) a glslang private header at `<build-dir>/include/glslang/build_info.h`. I've written generators for each of the CMake, Bazel, gn, and `Android.mk` build scripts. The new version code conforms to the Semantic Versioning 2.0 spec. This new version is also used by the CMake rules to produce versioned shared objects, including a major-versioned SONAME. New APIs: --------- * `glslang::GetVersion()` returns a `Version` struct with the version major, minor, patch and flavor. Breaking API changes: --------------------- * The public defines `GLSLANG_MINOR_VERSION` and `GLSLANG_PATCH_LEVEL` have been entirely removed. * `glslang/Public/ShaderLang.h` and `glslang/Include/revision.h` have been deleted. * Instead, `<build-dir>/include/glslang/build_info.h` is created in the build directory, and `<build-dir>/include` is a CMake `PUBLIC` (dependee-inherited) include directory for the glslang targets. * `<build-dir>/include/glslang/build_info.h` contains the following new #defines: `GLSLANG_VERSION_MAJOR`, `GLSLANG_VERSION_MINOR`, `GLSLANG_VERSION_PATCH`, `GLSLANG_VERSION_FLAVOR`, `GLSLANG_VERSION_GREATER_THAN(major, minor, patch)`, `GLSLANG_VERSION_GREATER_OR_EQUAL_TO(major, minor, patch)`, `GLSLANG_VERSION_LESS_THAN(major, minor, patch)`, `GLSLANG_VERSION_LESS_OR_EQUAL_TO(major, minor, patch)` * The CMake install output directory contains a copy of `build_info.h` at: `include/glslang/build_info.h` * Python3 is now always required to build glslang (likely always required for transitive dependency builds).
-
John Kessenich authored
Use CMake's builtin functionality for pre-compiled headers
-
- 08 Jul, 2020 2 commits
-
-
Shahbaz Youssefi authored
glslang.y is specialized to remove what is not supported or won't be supported by ANGLE. This change shaves about 125KB off of ANGLE's binary size with minor improvement to the cost of SetupBuiltinSymbolTable. Signed-off-by:Shahbaz Youssefi <ShabbyX@gmail.com>
-
Shahbaz Youssefi authored
This change strips a few features similar to GLSLANG_WEB but doesn't remove every detail like the latter. It also hardcodes profile/version to core/450. In particular, TBuiltIns::initialize is specialized to remove most of what is not supported or won't be supported by ANGLE. The result of this function is parsed with TParseContext::parseShaderStrings which is a performance bottleneck. This change shaves about 300KB off of ANGLE's binary size and reduces the cost of SetupBuiltinSymbolTable to nearly a sixth. Signed-off-by:Shahbaz Youssefi <ShabbyX@gmail.com>
-
- 07 Jul, 2020 7 commits
-
-
John Kessenich authored
Make sure glslang_angle has a definition in BUILD.gn
-
Ryan Harrison authored
Set the value to false if the environment doesn't declare this variable.
-
Ben Clayton authored
`glslang_pch()` did manual mangling of the compiler flags to enable pre-compiled headers. I couldn't get this approach to work with the `MachineIndependent` subdirectory, but fortunately CMake has added first-class support for precompiled headers in 3.16, which does work with subdirectories. Moved `glslang_pch()` to the other global function declarations. `glslang_pch()` is a no-op when using CMake earlier than `3.16`. CMake's PCH implementation does not need the `pch.cpp` files, so just remove them.
-
John Kessenich authored
Remove GLSLANG_BUILD_PIC flag
-
John Kessenich authored
Add new rules to .gitignore
-
Ben Clayton authored
On closer inspection, it appears that nearly all the targets use the `POSITION_INDEPENDENT_CODE` target option anyway. Simplify all this away by always being PIC.
-
Ben Clayton authored
`GenericCodeGen` and `MachineIndependent` were missing from the generated visual studio solutions. Add these.
-