• Home
  • Raw
  • Download

Lines Matching +full:build +full:- +full:generator

1 # SPIR-V Headers
3 This repository contains machine-readable files for the
4 [SPIR-V Registry](https://www.khronos.org/registry/spir-v/).
8 * JSON files describing the grammar for the SPIR-V core instruction set
11 * A tool to build the headers from the JSON grammar.
13 Headers are provided in the [include](include) directory, with up-to-date
18 not tied to SPIR-V specification versions.
22 When a new version or revision of the SPIR-V specification is published,
23 the SPIR-V Working Group will push new commits onto master, updating
26 [The SPIR-V XML registry file](include/spirv/spir-v.xml)
30 - request allocation of new enum ranges in the XML registry file
31 - register a new magic number for a SPIR-V generator
32 - reserve specific tokens in the JSON grammar
34 ### Registering a SPIR-V Generator Magic Number
36 Tools that generate SPIR-V should use a magic number in the SPIR-V to help identify the
37 generator.
41 - keeping generator numbers in numeric order
42 - filling out all the existing fields
48 - pointing to what extension has more information, when possible
49 - keeping enumerants in numeric order
50 - when there are aliases, listing the preferred spelling first
51 - adding the statement `"version" : "None"`
56 mkdir build
57 cd build
59 cmake --build . --target install
65 `-DCMAKE_INSTALL_PREFIX=/other/path` on the first `cmake` command.
70 A CMake-based project can use the headers without installing, as follows:
73 2. Use `${SPIRV-Headers_SOURCE_DIR}/include}` in a `target_include_directories`
87 A Bazel-based project can use the headers without installing, as follows:
89 1. Add SPIRV-Headers as a submodule of your project, and add a
91 SPIRV-Headers under `external/spirv-headers`, then add the following to your
97 path = "external/spirv-headers",
101 2. Add one of the following to the `deps` attribute of your build target based
135 ## Generating headers from the JSON grammar for the SPIR-V core instruction set
142 The header-generation project is under the `tools/buildHeaders` directory.
143 Use CMake to build and install the project, in a `build` subdirectory (under `tools/buildHeaders`).
145 header-generator binary to generate the headers from the JSON grammar.
151 mkdir build
152 cd build
154 cmake --build . --target install
160 - this generator is used in a broader context within Khronos to generate the specification,
162 - the C++ structures built may similarly include more than strictly necessary, for the same reason
178 invoke the build script as follows:
201 Copyright (c) 2015-2018 The Khronos Group Inc.