• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2020-2024 The Khronos Group Inc.
2// SPDX-License-Identifier: CC-BY-4.0
3
4= COPYING File for the KhronosGroup/Vulkan-Docs Project
5
6== Licenses
7
8The Vulkan-Docs project uses several licenses.
9
10* The source files (in asciidoctor and other formats) for the Vulkan
11  Specification, reference pages, and supporting documentation are licensed
12  under the Creative Commons Attribution 4.0 International License (SPDX
13  license identifier "`CC-BY-4.0`").
14* Header files, scripts, programs, XML files, and other tooling used or
15  generated as part of the build process are typically licensed under the
16  Apache License, Version 2.0 (SPDX license identifier "`Apache-2.0`").
17* For compatibility with external developers working in GPLed projects who
18  have requested it, link:xml/vk.xml[`vk.xml`] and
19  link:xml/video.xml[`video.xml`] are licensed under a dual (SPDX license
20  identifier "`Apache-2.0 OR MIT`" License).
21* Fonts derived from the M+ Font Project, found in
22  link:config/fonts/[`config/fonts/`] are licensed under the M+ Font License
23  (SPDX license identifier "`LicenseRef-MPLUS`"). This is an open source
24  license but is not OSI-approved, and is found at
25  https://osdn.net/softwaremap/trove_list.php?form_cat=370
26* Code which converts the single-file HTML specification to a chunked
27  HTML document, kept in
28  link:scripts/asciidoctor-chunker[`scripts/asciidoctor-chunker`], is
29  licensed under the MIT license. The home of the
30  link:https://github.com/wshito/asciidoctor-chunker[chunker project] is
31  found on GitHub.
32* There are a few remaining files adopted from other open source projects,
33  such as a copy of the KaTeX distribution. Such files continue under their
34  original MIT licenses, or in a few cases, like
35  link:scripts/htmldiff/htmldiff[`scripts/htmldiff/htmldiff`], had no
36  license statement. We have not added SPDX license identifiers to such
37  externally originated files.
38* Some generated, transient files produced during the course of building the
39  specification, headers, or other targets may not have copyrights. These
40  are typically very short asciidoc fragments describing parts of the Vulkan
41  API, and are incorporated by reference into specification or reference
42  page builds.
43
44Users outside Khronos who create and post Vulkan Specifications, whether
45modified or not, should use the CC-BY-4.0 license on the *output* documents
46(HTML, PDF, etc.) they generate. This is the default when building the
47Specification.
48
49
50== Frequently Asked Questions
51
52Q: Why are the HTML and PDF Specifications posted on Khronos' website under
53a license which is neither CC-BY nor Apache-2.0?
54
55A: The Specifications posted by Khronos in the Vulkan Registry are licensed
56under the proprietary Khronos Specification License. Only these
57Specifications are Ratified by the Khronos Board of Promoters, and therefore
58they are the only Specifications covered by the Khronos Intellectual
59Property Rights Policy.
60
61
62Q: Does Khronos allow the creation and distribution of modified versions of
63the Vulkan Specification, such as translations to other languages?
64
65A: Yes. Such modified Specifications, since they are not created by Khronos,
66should be placed under the CC-BY license. If you believe your modifications
67are of general interest, consider contributing them back by making a pull
68request (PR) on the Vulkan-Docs project.
69
70
71Q: Can I contribute changes to the Vulkan Specification?
72
73A: Yes, by opening an Issue or Pull Request (PR) on the
74link:https://github.com/KhronosGroup/Vulkan-Docs/[Vulkan-Docs] GitHub
75project.
76You must execute a click-through Contributor License Agreement, which brings
77your changes under the umbrella of the Khronos IP policy.
78
79
80Q: Can you change the license on your files so they are compatible with my
81license?
82
83A: We are using a dual license on `vk.xml` and `video.xml`, to make them
84compatible with GPL-licensed projects such as externally-generated language
85bindings.
86This replaces an earlier Apache 2.0 + "Exception Clause" license on the file
87with a more standard methodology, and allows use of the SPDX license
88identifier "`Apache-2.0 OR MIT`" to denote the license.
89
90If you *require* GPL compatibility for use of other Apache-2.0 licensed
91files in our repository, please raise an issue identifying the files and we
92will consider changing those specific files to the dual license as well.
93
94