Skip to content

Commit ac874e1

Browse files
committed
Push Vulkan Base changes without doing a full spec update, to verify
Antora build in Github Actions.
1 parent ac3d066 commit ac874e1

File tree

132 files changed

+5964
-4732
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

132 files changed

+5964
-4732
lines changed

.gitlab-ci.yml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,33 @@ vksc-generate:
120120
expire_in: 1 week
121121
allow_failure: true
122122

123+
# Generate the vulkan base specification and generate any associated files (such as vulkan_base.h)
124+
vulkanbase-generate:
125+
stage: build
126+
script:
127+
- NODE_PATH="/usr/lib/node_modules"
128+
- export NODE_PATH
129+
- VULKAN_API="vulkanbase"
130+
- export VULKAN_API
131+
# Build the actual spec (both chunked and single-page HTML), and other common targets
132+
- ./makeSpec -clean -spec all -version vkb1.4 -genpath genvkb QUIET= -j${nproc} -Otarget manhtmlpages validusage styleguide registry chunked html
133+
- ./makeSpec -clean -spec all -version vkc1.4 -genpath genvkc QUIET= -j${nproc} -Otarget manhtmlpages validusage styleguide registry chunked html
134+
- ./makeSpec -clean -spec all -version vkg1.4 -genpath genvkg QUIET= -j${nproc} -Otarget manhtmlpages validusage styleguide registry chunked html
135+
# Check consistency of internal xrefs and anchors in the output, now
136+
# that an HTML output is available
137+
#- make check-xrefs
138+
# Build headers, for use by all later stages
139+
- ( cd xml && make GENERATED=../genvkb install test GENOPTS="-feature VK_BASE_VERSION_1_0 -feature VK_BASE_VERSION_1_1 -feature VK_BASE_VERSION_1_2 -feature VK_BASE_VERSION_1_3 -feature VK_BASE_VERSION_1_4 -emitExtensions '^$$'" )
140+
- ( cd xml && make GENERATED=../genvkc install test GENOPTS="-feature VK_BASE_VERSION_1_0 -feature VK_COMPUTE_VERSION_1_0 -feature VK_BASE_VERSION_1_1 -feature VK_COMPUTE_VERSION_1_1 -feature VK_BASE_VERSION_1_2 -feature VK_COMPUTE_VERSION_1_2 -feature VK_BASE_VERSION_1_3 -feature VK_COMPUTE_VERSION_1_3 -feature VK_BASE_VERSION_1_4 -feature VK_COMPUTE_VERSION_1_4 -emitExtensions '^$$'" )
141+
- ( cd xml && make GENERATED=../genvkg install test GENOPTS="-feature VK_BASE_VERSION_1_0 -feature VK_COMPUTE_VERSION_1_0 -feature VK_GRAPHICS_VERSION_1_0 -feature VK_BASE_VERSION_1_1 -feature VK_COMPUTE_VERSION_1_1 -feature VK_GRAPHICS_VERSION_1_1 -feature VK_BASE_VERSION_1_2 -feature VK_COMPUTE_VERSION_1_2 -feature VK_GRAPHICS_VERSION_1_2 -feature VK_BASE_VERSION_1_3 -feature VK_COMPUTE_VERSION_1_3 -feature VK_GRAPHICS_VERSION_1_3 -feature VK_BASE_VERSION_1_4 -feature VK_COMPUTE_VERSION_1_4 -feature VK_GRAPHICS_VERSION_1_4 -emitExtensions '^$$'" )
142+
artifacts:
143+
when: always
144+
paths:
145+
- genvkb/
146+
- genvkc/
147+
- genvkg/
148+
expire_in: 2 weeks
149+
allow_failure: true
123150

124151
# Generate the vulkan C++ header (vulkan.hpp)
125152
hpp-generate:

Makefile

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@
3333
# default to 'vulkan'
3434
VULKAN_API ?= vulkan
3535
ifeq ($(VULKAN_API),vulkan)
36-
VERSIONS := VK_VERSION_1_0 VK_VERSION_1_1 VK_VERSION_1_2 VK_VERSION_1_3
36+
VERSIONS := VK_VERSION_1_0 VK_VERSION_1_1 VK_VERSION_1_2 VK_VERSION_1_3 VK_VERSION_1_4
37+
else ifeq ($(VULKAN_API),vulkanbase)
38+
VERSIONS := VK_BASE_VERSION_1_0 VK_BASE_VERSION_1_1 VK_BASE_VERSION_1_2 VK_BASE_VERSION_1_3 VK_BASE_VERSION_1_4
3739
else
3840
VERSIONS := VK_VERSION_1_0 VK_VERSION_1_1 VK_VERSION_1_2 VKSC_VERSION_1_0
3941
endif
@@ -159,16 +161,16 @@ SPECREVISION = 1.0.$(SCPATCHVERSION)
159161
BASEOPTS = -a baserevnumber="$(VKSPECREVISION)"
160162
else
161163

162-
ifneq (,$(findstring VK_VERSION_1_4,$(VERSIONS)))
164+
ifneq (,$(findstring VK_BASE_VERSION_1_4,$(VERSIONS)))
163165
SPECMINOR = 4
164166
else
165-
ifneq (,$(findstring VK_VERSION_1_3,$(VERSIONS)))
167+
ifneq (,$(findstring VK_BASE_VERSION_1_3,$(VERSIONS)))
166168
SPECMINOR = 3
167169
else
168-
ifneq (,$(findstring VK_VERSION_1_2,$(VERSIONS)))
170+
ifneq (,$(findstring VK_BASE_VERSION_1_2,$(VERSIONS)))
169171
SPECMINOR = 2
170172
else
171-
ifneq (,$(findstring VK_VERSION_1_1,$(VERSIONS)))
173+
ifneq (,$(findstring VK_BASE_VERSION_1_1,$(VERSIONS)))
172174
SPECMINOR = 1
173175
else
174176
SPECMINOR = 0

appendices/VK_EXT_discard_rectangles.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ rejected if the fragment is within any of the operational discard rectangles
3232

3333
These discard rectangles operate orthogonally to the existing scissor test
3434
functionality.
35-
ifdef::VK_VERSION_1_1,VK_KHR_device_group[]
35+
ifdef::VK_BASE_VERSION_1_1,VK_KHR_device_group[]
3636
The discard rectangles can be different for each physical device in a device
3737
group by specifying the device mask and setting discard rectangle dynamic
3838
state.
39-
endif::VK_VERSION_1_1,VK_KHR_device_group[]
39+
endif::VK_BASE_VERSION_1_1,VK_KHR_device_group[]
4040

4141
Version 2 of this extension introduces new dynamic states
4242
ename:VK_DYNAMIC_STATE_DISCARD_RECTANGLE_ENABLE_EXT and

appendices/VK_KHR_spirv_1_4.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,12 @@ API changes.
5959
Most new SPIR-V versions introduce optionally-required capabilities or have
6060
implementation-defined limits, and would need more API and specification
6161
changes specific to that version to make them available in Vulkan.
62-
ifdef::VK_VERSION_1_1[]
62+
ifdef::VK_COMPUTE_VERSION_1_1[]
6363
For example, to support the subgroup capabilities added in SPIR-V 1.3
6464
required introducing slink:VkPhysicalDeviceSubgroupProperties to allow
6565
querying the supported group operation categories, maximum supported
6666
subgroup size, etc.
67-
endif::VK_VERSION_1_1[]
67+
endif::VK_COMPUTE_VERSION_1_1[]
6868
While we could expose the parts of a new SPIR-V version that do not need
6969
accompanying changes generically, we will still end up writing extensions
7070
specific to each version for the remaining parts.

appendices/VK_KHR_synchronization2.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,10 +73,10 @@ Other miscellaneous changes include:
7373
* Relevant pipeline stage masks can now be specified as empty with the new
7474
ename:VK_PIPELINE_STAGE_NONE_KHR and ename:VK_PIPELINE_STAGE_2_NONE_KHR
7575
values.
76-
ifdef::VK_VERSION_1_2,VK_KHR_create_renderpass2[]
76+
ifdef::VK_GRAPHICS_VERSION_1_2,VK_KHR_create_renderpass2[]
7777
* slink:VkMemoryBarrier2KHR can be chained to slink:VkSubpassDependency2,
7878
overriding the original 32-bit stage and access masks.
79-
endif::VK_VERSION_1_2,VK_KHR_create_renderpass2[]
79+
endif::VK_GRAPHICS_VERSION_1_2,VK_KHR_create_renderpass2[]
8080

8181
include::{generated}/interfaces/VK_KHR_synchronization2.adoc[]
8282

appendices/boilerplate.adoc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -208,6 +208,7 @@ API version using, for example, one of the dname:VK_API_VERSION_*_* values.
208208
include::{generated}/api/defines/VK_HEADER_VERSION_COMPLETE.adoc[]
209209
--
210210

211+
ifdef::VK_BASE_VERSION_1_0[]
211212
ifndef::VKSC_VERSION_1_0[]
212213
[open,refpage='VK_API_VERSION',desc='Deprecated version number macro',type='defines']
213214
--
@@ -217,6 +218,7 @@ used.
217218
include::{generated}/api/defines/VK_API_VERSION.adoc[]
218219
--
219220
endif::VKSC_VERSION_1_0[]
221+
endif::VK_BASE_VERSION_1_0[]
220222

221223

222224
==== Vulkan Handle Macros

appendices/compressedtex.adoc

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ chapter of the <<data-format,Khronos Data Format Specification>>.
127127
| ename:VK_FORMAT_ASTC_12x10_SRGB_BLOCK ^|[eq]#12 {times} 10# ^|sRGB
128128
| ename:VK_FORMAT_ASTC_12x12_UNORM_BLOCK ^|[eq]#12 {times} 12# ^|Linear LDR
129129
| ename:VK_FORMAT_ASTC_12x12_SRGB_BLOCK ^|[eq]#12 {times} 12# ^|sRGB
130-
ifdef::VK_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
130+
ifdef::VK_BASE_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
131131
| ename:VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK ^|[eq]#4 {times} 4# ^|HDR
132132
| ename:VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK ^|[eq]#5 {times} 4# ^|HDR
133133
| ename:VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK ^|[eq]#5 {times} 5# ^|HDR
@@ -142,17 +142,17 @@ ifdef::VK_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
142142
| ename:VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK ^|[eq]#10 {times} 10# ^|HDR
143143
| ename:VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK ^|[eq]#12 {times} 10# ^|HDR
144144
| ename:VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK ^|[eq]#12 {times} 12# ^|HDR
145-
endif::VK_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
145+
endif::VK_BASE_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
146146
|====
147147

148-
ifndef::VK_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
148+
ifndef::VK_BASE_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
149149
ASTC textures containing any HDR blocks should: not be passed into the API
150150
using an sRGB or UNORM texture format.
151-
endif::VK_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
152-
ifdef::VK_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
151+
endif::VK_BASE_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
152+
ifdef::VK_BASE_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
153153
ASTC textures containing HDR block encodings should: be passed to the API
154154
using an ASTC SFLOAT texture format.
155-
endif::VK_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
155+
endif::VK_BASE_VERSION_1_3,VK_EXT_texture_compression_astc_hdr[]
156156

157157
[NOTE]
158158
====

appendices/deprecation.adoc

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ apiext:VK_KHR_maintenance5) and anything superseded by a new version of the
6060
same functionality (e.g. apiext:VK_KHR_synchronization2).
6161
====
6262

63-
ifdef::VK_VERSION_1_1[]
63+
ifdef::VK_BASE_VERSION_1_1[]
6464
[[deprecation-gpdp2]]
6565
=== Physical Device Queries: Deprecation via version 2
6666

@@ -75,7 +75,7 @@ used instead of flink:vkGetPhysicalDeviceFeatures.
7575
When enabling device features, slink:VkPhysicalDeviceFeatures2 should: be
7676
provided in the pname:pNext chain of slink:VkDeviceCreateInfo instead of
7777
using slink:VkDeviceCreateInfo::pNext:pEnabledFeatures.
78-
endif::VK_VERSION_1_1[]
78+
endif::VK_BASE_VERSION_1_1[]
7979

8080
[[deprecation-version-macros]]
8181
=== Version Macros: Deprecation via replacements including API variant
@@ -107,7 +107,7 @@ commands operating on that instance or any of its child objects.
107107
At the time of deprecation there were no known device-only layers and no
108108
compelling reason to create one.
109109

110-
ifdef::VK_VERSION_1_2[]
110+
ifdef::VK_GRAPHICS_VERSION_1_2[]
111111
[[deprecation-renderpass2]]
112112
=== Render Pass Functions: Deprecation via version 2
113113

@@ -116,17 +116,17 @@ introduced new versions of several render pass functions.
116116
These provide the same functionality as the Vulkan 1.0 functionality but
117117
with greater extensibility.
118118

119-
ifdef::VK_VERSION_1_4[]
119+
ifdef::VK_GRAPHICS_VERSION_1_4[]
120120
[NOTE]
121121
====
122122
Render pass objects and all related commands are further
123123
<<deprecation-dynamicrendering, deprecated by dynamic rendering>> in Vulkan
124124
1.4.
125125
====
126-
endif::VK_VERSION_1_4[]
127-
endif::VK_VERSION_1_2[]
126+
endif::VK_GRAPHICS_VERSION_1_4[]
127+
endif::VK_GRAPHICS_VERSION_1_2[]
128128

129-
ifdef::VK_VERSION_1_4[]
129+
ifdef::VK_GRAPHICS_VERSION_1_4[]
130130
=== [[deprecation-dynamicrendering]]Render Pass Objects: Deprecation via dynamic rendering
131131

132132
In Vulkan 1.3, the apiext:VK_KHR_dynamic_rendering extension was promoted
@@ -155,5 +155,5 @@ unless/until replacements are created.
155155
Outside of vendor extensions, applications are advised to make use of
156156
flink:vkCmdBeginRendering and flink:vkCmdEndRendering to manage render
157157
passes from this API version onward.
158-
endif::VK_VERSION_1_4[]
158+
endif::VK_GRAPHICS_VERSION_1_4[]
159159
endif::VKSC_VERSION_1_0[]

0 commit comments

Comments
 (0)