| tag | 70ba86aa9e9fc995549519c980dbf62f52a990e0 | |
|---|---|---|
| tagger | Dejan Mircevski <deki@google.com> | Tue Feb 16 13:25:13 2016 -0500 |
| object | e549e7b21b2ad60f01b8ecae10f01044be3dc4ab |
The first-ever commit in GitHub.
| commit | e549e7b21b2ad60f01b8ecae10f01044be3dc4ab | [log] [tgz] |
|---|---|---|
| author | Andrew Woloszyn <awoloszyn@google.com> | Thu Jul 16 11:07:40 2015 -0400 |
| committer | Lei Zhang <antiagainst@google.com> | Thu Aug 06 09:50:25 2015 -0400 |
| tree | 7ccffc4917abbcd325300f145254459a8caf1b22 |
Initial commit of shaderc.
A collection of tools, libraries and tests for shader compilation.
Shaderc is experimental, and subject to significant incompatible changes.
For licensing terms, please see the LICENSE file. If interested in contributing to this project, please see CONTRIBUTING.md.
This is not an official Google product (experimental or otherwise), it is just code that happens to be owned by Google. That may change if Shaderc gains contributions from others. See the CONTRIBUTING.md file for more information. See also the AUTHORS and CONTRIBUTORS files.
glslc/: an executable to compile GLSL to SPIR-Vlibshaderc/: a library for compiling shader strings into SPIR-Vlibshaderc_util/: a utility library used by multiple shaderc componentsthird_party/: third party open source packages; see belowshaderc depends on a fork of the Khronos reference GLSL compiler glslang. shaderc also depends on the testing framework googlemock.
In the following example, $SOURCE_DIR is the directory you intend to clone shaderc into.
Check out the source code:
git clone https://github.com/google/shaderc $SOURCE_DIR cd $SOURCE_DIR/third_party svn checkout http://googlemock.googlecode.com/svn/tags/release-1.7.0
gmock-1.7.0 git clone https://github.com/google/glslang.git glslang cd $SOURCE_DIR/
Decide where to place the build outputs. In the following steps, we'll call it $BUILD_DIR. Any new directory should work. We recommend building outside the source tree, but it is common to build in a subdirectory of $SOURCE_DIR, such as $SOURCE_DIR/build.
3a) Build without code coverage (Linux, Windows with Ninja):
cd $BUILD_DIR
cmake -GNinja -DCMAKE_BUILD_TYPE={Debug|Release|RelWithDebInfo} $SOURCE_DIR
ninja
ctest
3b) Build without coverage (Windows with MSVC):
cd $BUILD_DIR
cmake $SOURCE_DIR
cmake --build . --config {Release|Debug|MinSizeRel|RelWithDebInfo}
ctest -C {Release|Debug|MinSizeRel|RelWithDebInfo}
3c) Build with code coverage (Linux):
cd $BUILD_DIR
cmake -GNinja -DCMAKE_BUILD_TYPE=Debug -DENABLE_CODE_COVERAGE=ON
$SOURCE_DIR
ninja
ninja report-coverage
Then the coverage report can be found under the `$BUILD_DIR/coverage-report directory.
For building, testing, and profiling shaderc, the following common tools should be installed:
On Linux, the following tools should be installed:
gcc package on Ubuntu.lcov package on Ubuntu.lcov package on Ubuntu.On Windows, the following tools should be installed and available on your path.
Optional: for all platforms