From b7cac8fc28594d59958e589e36fa45a96c0e8ee8 Mon Sep 17 00:00:00 2001
From: Jon Leech
Date: Fri, 1 Jul 2016 01:32:28 -0700
Subject: [PATCH 1/2] Tweak genRelease for web target directory instead of
internal in gitlab branch.
---
doc/specs/vulkan/genRelease | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/doc/specs/vulkan/genRelease b/doc/specs/vulkan/genRelease
index 905844d1..21818bf8 100755
--- a/doc/specs/vulkan/genRelease
+++ b/doc/specs/vulkan/genRelease
@@ -4,12 +4,12 @@ from genspec import *
buildBranch('1.0',
coreTargets = True,
- repoDir = '/home/tree/git/vulkan',
- outDir = '/home/tree/git/vulkan/out')
+ repoDir = '/home/tree/git/Vulkan-Docs',
+ outDir = '/home/tree/git/Vulkan-Web-Registry/specs')
buildBranch('1.0-wsi_extensions',
coreTargets = False,
- repoDir = '/home/tree/git/vulkan',
- outDir = '/home/tree/git/vulkan/out')
+ repoDir = '/home/tree/git/Vulkan-Docs',
+ outDir = '/home/tree/git/Vulkan-Web-Registry/specs')
print('echo Info: post-generation cleanup')
print('git checkout ' + coreBranch)
From e2d981c029105664380e05e61cacc1cab34b1083 Mon Sep 17 00:00:00 2001
From: Jon Leech
Date: Sun, 10 Jul 2016 18:13:41 -0700
Subject: [PATCH 2/2] Change log for July 10, 2016 Vulkan 1.0.20 spec update:
* Bump API patch number and header version number to 20 for this
update.
Github Issues:
* Replaced existing reference pages by text automatically extracted
from the specification source, or generated from vk.xml in some
cases. This isn't a complete solution for the reference pages, but
puts them in a much better state. The ref pages (only) are now
placed under a CC BY open source license, which is more current than
the obsolete license previously used.
Further improvements to the pages should not edit them directly, but
instead concentrate on the specification source from which the ref
pages are being extracted (public issues 44, 55, 160; internal issue
389).
---
.gitignore | 11 +-
ChangeLog.txt | 21 +
doc/specs/vulkan/Makefile | 79 +-
doc/specs/vulkan/README.html | 275 +-
doc/specs/vulkan/README.txt | 222 +-
doc/specs/vulkan/appendices/boilerplate.txt | 229 ++
doc/specs/vulkan/appendices/extensions.txt | 26 +-
doc/specs/vulkan/appendices/glossary.txt | 10 +-
doc/specs/vulkan/appendices/invariance.txt | 2 +-
doc/specs/vulkan/basetypes/VkBool32.txt | 12 +
doc/specs/vulkan/basetypes/VkDeviceSize.txt | 12 +
doc/specs/vulkan/basetypes/VkFlags.txt | 12 +
doc/specs/vulkan/basetypes/VkSampleMask.txt | 12 +
doc/specs/vulkan/chapters/clears.txt | 61 +-
doc/specs/vulkan/chapters/cmdbuffers.txt | 186 +-
doc/specs/vulkan/chapters/copies.txt | 160 +-
doc/specs/vulkan/chapters/descriptorsets.txt | 317 +-
doc/specs/vulkan/chapters/devsandqueues.txt | 97 +-
doc/specs/vulkan/chapters/dispatch.txt | 16 +-
doc/specs/vulkan/chapters/drawing.txt | 55 +-
doc/specs/vulkan/chapters/extensions.txt | 145 +-
doc/specs/vulkan/chapters/features.txt | 107 +-
doc/specs/vulkan/chapters/fragops.txt | 41 +-
doc/specs/vulkan/chapters/framebuffer.txt | 32 +-
doc/specs/vulkan/chapters/fundamentals.txt | 159 +-
doc/specs/vulkan/chapters/fxvertex.txt | 36 +-
doc/specs/vulkan/chapters/initialization.txt | 69 +-
doc/specs/vulkan/chapters/interfaces.txt | 35 +-
doc/specs/vulkan/chapters/memory.txt | 325 +-
doc/specs/vulkan/chapters/pipelines.txt | 189 +-
doc/specs/vulkan/chapters/primsrast.txt | 51 +-
doc/specs/vulkan/chapters/queries.txt | 86 +-
doc/specs/vulkan/chapters/renderpass.txt | 164 +-
doc/specs/vulkan/chapters/resources.txt | 257 +-
doc/specs/vulkan/chapters/samplers.txt | 26 +-
doc/specs/vulkan/chapters/shaders.txt | 22 +-
doc/specs/vulkan/chapters/sparsemem.txt | 117 +-
doc/specs/vulkan/chapters/synchronization.txt | 155 +-
doc/specs/vulkan/chapters/tessellation.txt | 2 +
doc/specs/vulkan/chapters/textures.txt | 25 +-
doc/specs/vulkan/chapters/vertexpostproc.txt | 16 +-
doc/specs/vulkan/checkLinks.py | 9 +-
doc/specs/vulkan/config/manpages.conf | 150 +-
doc/specs/vulkan/config/vkspec.conf | 29 +-
doc/specs/vulkan/defines/VK_API_VERSION.txt | 13 +
.../vulkan/defines/VK_API_VERSION_1_0.txt | 13 +
doc/specs/vulkan/defines/VK_DEFINE_HANDLE.txt | 13 +
.../VK_DEFINE_NON_DISPATCHABLE_HANDLE.txt | 18 +
.../vulkan/defines/VK_HEADER_VERSION.txt | 13 +
doc/specs/vulkan/defines/VK_MAKE_VERSION.txt | 13 +
doc/specs/vulkan/defines/VK_NULL_HANDLE.txt | 14 +
doc/specs/vulkan/defines/VK_VERSION_MAJOR.txt | 12 +
doc/specs/vulkan/defines/VK_VERSION_MINOR.txt | 12 +
doc/specs/vulkan/defines/VK_VERSION_PATCH.txt | 12 +
.../PFN_vkDebugReportCallbackEXT.txt | 20 -
doc/specs/vulkan/genRef.py | 501 +++
doc/specs/vulkan/genRelease | 14 +-
doc/specs/vulkan/genspec.py | 16 +-
doc/specs/vulkan/handles/VkBuffer.txt | 12 +
doc/specs/vulkan/handles/VkBufferView.txt | 12 +
doc/specs/vulkan/handles/VkCommandBuffer.txt | 12 +
doc/specs/vulkan/handles/VkCommandPool.txt | 12 +
doc/specs/vulkan/handles/VkDescriptorPool.txt | 12 +
doc/specs/vulkan/handles/VkDescriptorSet.txt | 12 +
.../vulkan/handles/VkDescriptorSetLayout.txt | 12 +
doc/specs/vulkan/handles/VkDevice.txt | 12 +
doc/specs/vulkan/handles/VkDeviceMemory.txt | 12 +
doc/specs/vulkan/handles/VkEvent.txt | 12 +
doc/specs/vulkan/handles/VkFence.txt | 12 +
doc/specs/vulkan/handles/VkFramebuffer.txt | 12 +
doc/specs/vulkan/handles/VkImage.txt | 12 +
doc/specs/vulkan/handles/VkImageView.txt | 12 +
doc/specs/vulkan/handles/VkInstance.txt | 12 +
doc/specs/vulkan/handles/VkPhysicalDevice.txt | 12 +
doc/specs/vulkan/handles/VkPipeline.txt | 12 +
doc/specs/vulkan/handles/VkPipelineCache.txt | 12 +
doc/specs/vulkan/handles/VkPipelineLayout.txt | 12 +
doc/specs/vulkan/handles/VkQueryPool.txt | 12 +
doc/specs/vulkan/handles/VkQueue.txt | 12 +
doc/specs/vulkan/handles/VkRenderPass.txt | 12 +
doc/specs/vulkan/handles/VkSampler.txt | 12 +
doc/specs/vulkan/handles/VkSemaphore.txt | 12 +
doc/specs/vulkan/handles/VkShaderModule.txt | 12 +
doc/specs/vulkan/insertTags.py | 112 +
.../vulkan/man/PFN_vkAllocationFunction.txt | 92 +
doc/specs/vulkan/man/PFN_vkFreeFunction.txt | 59 +
.../PFN_vkInternalAllocationNotification.txt | 60 +
.../man/PFN_vkInternalFreeNotification.txt | 58 +
.../vulkan/man/PFN_vkReallocationFunction.txt | 87 +
doc/specs/vulkan/man/PFN_vkVoidFunction.txt | 53 +
doc/specs/vulkan/man/VK_API_VERSION.txt | 45 +
doc/specs/vulkan/man/VK_API_VERSION_1_0.txt | 49 +
doc/specs/vulkan/man/VK_DEFINE_HANDLE.txt | 51 +
.../man/VK_DEFINE_NON_DISPATCHABLE_HANDLE.txt | 51 +
doc/specs/vulkan/man/VK_HEADER_VERSION.txt | 48 +
doc/specs/vulkan/man/VK_MAKE_VERSION.txt | 53 +
doc/specs/vulkan/man/VK_NULL_HANDLE.txt | 47 +
doc/specs/vulkan/man/VK_VERSION_MAJOR.txt | 46 +
doc/specs/vulkan/man/VK_VERSION_MINOR.txt | 46 +
doc/specs/vulkan/man/VK_VERSION_PATCH.txt | 46 +
doc/specs/vulkan/man/VkAccessFlagBits.txt | 39 +-
doc/specs/vulkan/man/VkAccessFlags.txt | 31 +-
.../vulkan/man/VkAllocationCallbacks.txt | 72 +-
.../man/VkAndroidSurfaceCreateFlagsKHR.txt | 26 -
.../man/VkAndroidSurfaceCreateInfoKHR.txt | 27 -
doc/specs/vulkan/man/VkApplicationInfo.txt | 56 +-
.../vulkan/man/VkAttachmentDescription.txt | 123 +-
.../man/VkAttachmentDescriptionFlagBits.txt | 34 +-
.../man/VkAttachmentDescriptionFlags.txt | 31 +-
doc/specs/vulkan/man/VkAttachmentLoadOp.txt | 34 +-
.../vulkan/man/VkAttachmentReference.txt | 44 +-
doc/specs/vulkan/man/VkAttachmentStoreOp.txt | 34 +-
doc/specs/vulkan/man/VkBindSparseInfo.txt | 64 +-
doc/specs/vulkan/man/VkBlendFactor.txt | 77 +-
doc/specs/vulkan/man/VkBlendOp.txt | 101 +-
doc/specs/vulkan/man/VkBool32.txt | 46 +
doc/specs/vulkan/man/VkBorderColor.txt | 34 +-
doc/specs/vulkan/man/VkBuffer.txt | 50 +
doc/specs/vulkan/man/VkBufferCopy.txt | 40 +-
.../vulkan/man/VkBufferCreateFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkBufferCreateFlags.txt | 42 +-
doc/specs/vulkan/man/VkBufferCreateInfo.txt | 135 +-
doc/specs/vulkan/man/VkBufferImageCopy.txt | 89 +-
.../vulkan/man/VkBufferMemoryBarrier.txt | 80 +-
.../vulkan/man/VkBufferUsageFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkBufferUsageFlags.txt | 61 +-
doc/specs/vulkan/man/VkBufferView.txt | 54 +
.../vulkan/man/VkBufferViewCreateFlags.txt | 31 +-
.../vulkan/man/VkBufferViewCreateInfo.txt | 49 +-
doc/specs/vulkan/man/VkClearAttachment.txt | 64 +-
doc/specs/vulkan/man/VkClearColorValue.txt | 55 +-
.../vulkan/man/VkClearDepthStencilValue.txt | 42 +-
doc/specs/vulkan/man/VkClearRect.txt | 41 +-
doc/specs/vulkan/man/VkClearValue.txt | 43 +-
.../vulkan/man/VkColorComponentFlagBits.txt | 44 +-
.../vulkan/man/VkColorComponentFlags.txt | 31 +-
doc/specs/vulkan/man/VkColorSpaceKHR.txt | 26 -
doc/specs/vulkan/man/VkCommandBuffer.txt | 52 +
.../man/VkCommandBufferAllocateInfo.txt | 56 +-
.../vulkan/man/VkCommandBufferBeginInfo.txt | 58 +-
.../man/VkCommandBufferInheritanceInfo.txt | 79 +-
doc/specs/vulkan/man/VkCommandBufferLevel.txt | 34 +-
.../man/VkCommandBufferResetFlagBits.txt | 34 +-
.../vulkan/man/VkCommandBufferResetFlags.txt | 31 +-
.../man/VkCommandBufferUsageFlagBits.txt | 34 +-
.../vulkan/man/VkCommandBufferUsageFlags.txt | 31 +-
doc/specs/vulkan/man/VkCommandPool.txt | 53 +
.../man/VkCommandPoolCreateFlagBits.txt | 34 +-
.../vulkan/man/VkCommandPoolCreateFlags.txt | 31 +-
.../vulkan/man/VkCommandPoolCreateInfo.txt | 62 +-
.../vulkan/man/VkCommandPoolResetFlagBits.txt | 34 +-
.../vulkan/man/VkCommandPoolResetFlags.txt | 31 +-
doc/specs/vulkan/man/VkCompareOp.txt | 46 +-
doc/specs/vulkan/man/VkComponentMapping.txt | 79 +-
doc/specs/vulkan/man/VkComponentSwizzle.txt | 34 +-
.../man/VkCompositeAlphaFlagBitsKHR.txt | 26 -
.../vulkan/man/VkCompositeAlphaFlagsKHR.txt | 26 -
.../man/VkComputePipelineCreateInfo.txt | 53 +-
doc/specs/vulkan/man/VkCopyDescriptorSet.txt | 46 +-
doc/specs/vulkan/man/VkCullModeFlagBits.txt | 44 +-
doc/specs/vulkan/man/VkCullModeFlags.txt | 31 +-
.../VkDebugReportCallbackCreateInfoEXT.txt | 27 -
.../vulkan/man/VkDebugReportErrorEXT.txt | 26 -
.../vulkan/man/VkDebugReportFlagBitsEXT.txt | 26 -
.../vulkan/man/VkDebugReportFlagsEXT.txt | 26 -
.../vulkan/man/VkDebugReportObjectTypeEXT.txt | 26 -
doc/specs/vulkan/man/VkDependencyFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkDependencyFlags.txt | 31 +-
.../vulkan/man/VkDescriptorBufferInfo.txt | 47 +-
.../vulkan/man/VkDescriptorImageInfo.txt | 53 +-
doc/specs/vulkan/man/VkDescriptorPool.txt | 51 +
.../man/VkDescriptorPoolCreateFlagBits.txt | 34 +-
.../man/VkDescriptorPoolCreateFlags.txt | 31 +-
.../vulkan/man/VkDescriptorPoolCreateInfo.txt | 86 +-
.../vulkan/man/VkDescriptorPoolResetFlags.txt | 31 +-
doc/specs/vulkan/man/VkDescriptorPoolSize.txt | 38 +-
doc/specs/vulkan/man/VkDescriptorSet.txt | 46 +
.../man/VkDescriptorSetAllocateInfo.txt | 49 +-
.../vulkan/man/VkDescriptorSetLayout.txt | 52 +
.../man/VkDescriptorSetLayoutBinding.txt | 85 +-
.../man/VkDescriptorSetLayoutCreateFlags.txt | 31 +-
.../man/VkDescriptorSetLayoutCreateInfo.txt | 42 +-
doc/specs/vulkan/man/VkDescriptorType.txt | 136 +-
doc/specs/vulkan/man/VkDevice.txt | 45 +
doc/specs/vulkan/man/VkDeviceCreateFlags.txt | 31 +-
doc/specs/vulkan/man/VkDeviceCreateInfo.txt | 61 +-
doc/specs/vulkan/man/VkDeviceMemory.txt | 48 +
.../vulkan/man/VkDeviceQueueCreateFlags.txt | 31 +-
.../vulkan/man/VkDeviceQueueCreateInfo.txt | 50 +-
doc/specs/vulkan/man/VkDeviceSize.txt | 45 +
.../vulkan/man/VkDispatchIndirectCommand.txt | 43 +-
.../man/VkDisplayModeCreateFlagsKHR.txt | 26 -
.../vulkan/man/VkDisplayModeCreateInfoKHR.txt | 27 -
.../vulkan/man/VkDisplayModeParametersKHR.txt | 27 -
.../vulkan/man/VkDisplayModePropertiesKHR.txt | 27 -
.../man/VkDisplayPlaneAlphaFlagBitsKHR.txt | 26 -
.../man/VkDisplayPlaneAlphaFlagsKHR.txt | 26 -
.../man/VkDisplayPlaneCapabilitiesKHR.txt | 27 -
.../man/VkDisplayPlanePropertiesKHR.txt | 27 -
.../vulkan/man/VkDisplayPresentInfoKHR.txt | 27 -
.../vulkan/man/VkDisplayPropertiesKHR.txt | 27 -
.../man/VkDisplaySurfaceCreateFlagsKHR.txt | 26 -
.../man/VkDisplaySurfaceCreateInfoKHR.txt | 27 -
.../man/VkDrawIndexedIndirectCommand.txt | 46 +-
.../vulkan/man/VkDrawIndirectCommand.txt | 44 +-
doc/specs/vulkan/man/VkDynamicState.txt | 95 +-
doc/specs/vulkan/man/VkEvent.txt | 53 +
doc/specs/vulkan/man/VkEventCreateFlags.txt | 31 +-
doc/specs/vulkan/man/VkEventCreateInfo.txt | 36 +-
.../vulkan/man/VkExtensionProperties.txt | 39 +-
doc/specs/vulkan/man/VkExtent2D.txt | 37 +-
doc/specs/vulkan/man/VkExtent3D.txt | 38 +-
doc/specs/vulkan/man/VkFence.txt | 52 +
.../vulkan/man/VkFenceCreateFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkFenceCreateFlags.txt | 31 +-
doc/specs/vulkan/man/VkFenceCreateInfo.txt | 46 +-
doc/specs/vulkan/man/VkFilter.txt | 34 +-
doc/specs/vulkan/man/VkFlags.txt | 53 +
doc/specs/vulkan/man/VkFormat.txt | 1068 ++++++-
.../vulkan/man/VkFormatFeatureFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkFormatFeatureFlags.txt | 67 +-
doc/specs/vulkan/man/VkFormatProperties.txt | 134 +-
doc/specs/vulkan/man/VkFramebuffer.txt | 48 +
.../vulkan/man/VkFramebufferCreateFlags.txt | 31 +-
.../vulkan/man/VkFramebufferCreateInfo.txt | 72 +-
doc/specs/vulkan/man/VkFrontFace.txt | 62 +-
.../man/VkGraphicsPipelineCreateInfo.txt | 116 +-
doc/specs/vulkan/man/VkImage.txt | 50 +
.../vulkan/man/VkImageAspectFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkImageAspectFlags.txt | 31 +-
doc/specs/vulkan/man/VkImageBlit.txt | 45 +-
doc/specs/vulkan/man/VkImageCopy.txt | 47 +-
.../vulkan/man/VkImageCreateFlagBits.txt | 63 +-
doc/specs/vulkan/man/VkImageCreateFlags.txt | 52 +-
doc/specs/vulkan/man/VkImageCreateInfo.txt | 131 +-
.../vulkan/man/VkImageFormatProperties.txt | 89 +-
doc/specs/vulkan/man/VkImageLayout.txt | 151 +-
doc/specs/vulkan/man/VkImageMemoryBarrier.txt | 105 +-
doc/specs/vulkan/man/VkImageResolve.txt | 47 +-
doc/specs/vulkan/man/VkImageSubresource.txt | 39 +-
.../vulkan/man/VkImageSubresourceLayers.txt | 40 +-
.../vulkan/man/VkImageSubresourceRange.txt | 90 +-
doc/specs/vulkan/man/VkImageTiling.txt | 39 +-
doc/specs/vulkan/man/VkImageType.txt | 40 +-
doc/specs/vulkan/man/VkImageUsageFlagBits.txt | 69 +-
doc/specs/vulkan/man/VkImageUsageFlags.txt | 67 +-
doc/specs/vulkan/man/VkImageView.txt | 51 +
.../vulkan/man/VkImageViewCreateFlags.txt | 31 +-
.../vulkan/man/VkImageViewCreateInfo.txt | 154 +-
doc/specs/vulkan/man/VkImageViewType.txt | 66 +-
doc/specs/vulkan/man/VkIndexType.txt | 34 +-
doc/specs/vulkan/man/VkInstance.txt | 50 +
.../vulkan/man/VkInstanceCreateFlags.txt | 31 +-
doc/specs/vulkan/man/VkInstanceCreateInfo.txt | 52 +-
.../vulkan/man/VkInternalAllocationType.txt | 37 +-
doc/specs/vulkan/man/VkLayerProperties.txt | 46 +-
doc/specs/vulkan/man/VkLogicOp.txt | 83 +-
doc/specs/vulkan/man/VkMappedMemoryRange.txt | 43 +-
doc/specs/vulkan/man/VkMemoryAllocateInfo.txt | 39 +-
doc/specs/vulkan/man/VkMemoryBarrier.txt | 173 +-
doc/specs/vulkan/man/VkMemoryHeap.txt | 47 +-
doc/specs/vulkan/man/VkMemoryHeapFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkMemoryHeapFlags.txt | 31 +-
doc/specs/vulkan/man/VkMemoryMapFlags.txt | 31 +-
.../vulkan/man/VkMemoryPropertyFlagBits.txt | 34 +-
.../vulkan/man/VkMemoryPropertyFlags.txt | 53 +-
doc/specs/vulkan/man/VkMemoryRequirements.txt | 43 +-
doc/specs/vulkan/man/VkMemoryType.txt | 73 +-
.../vulkan/man/VkMirSurfaceCreateFlagsKHR.txt | 26 -
.../vulkan/man/VkMirSurfaceCreateInfoKHR.txt | 27 -
doc/specs/vulkan/man/VkOffset2D.txt | 37 +-
doc/specs/vulkan/man/VkOffset3D.txt | 38 +-
doc/specs/vulkan/man/VkPhysicalDevice.txt | 51 +
.../vulkan/man/VkPhysicalDeviceFeatures.txt | 675 +++-
.../vulkan/man/VkPhysicalDeviceLimits.txt | 868 +++--
.../man/VkPhysicalDeviceMemoryProperties.txt | 141 +-
.../vulkan/man/VkPhysicalDeviceProperties.txt | 93 +-
.../man/VkPhysicalDeviceSparseProperties.txt | 78 +-
doc/specs/vulkan/man/VkPhysicalDeviceType.txt | 49 +-
doc/specs/vulkan/man/VkPipeline.txt | 46 +
doc/specs/vulkan/man/VkPipelineBindPoint.txt | 34 +-
doc/specs/vulkan/man/VkPipelineCache.txt | 56 +
.../vulkan/man/VkPipelineCacheCreateFlags.txt | 31 +-
.../vulkan/man/VkPipelineCacheCreateInfo.txt | 45 +-
.../man/VkPipelineCacheHeaderVersion.txt | 38 +-
.../VkPipelineColorBlendAttachmentState.txt | 53 +-
.../VkPipelineColorBlendStateCreateFlags.txt | 31 +-
.../VkPipelineColorBlendStateCreateInfo.txt | 57 +-
.../vulkan/man/VkPipelineCreateFlagBits.txt | 34 +-
.../vulkan/man/VkPipelineCreateFlags.txt | 31 +-
...VkPipelineDepthStencilStateCreateFlags.txt | 31 +-
.../VkPipelineDepthStencilStateCreateInfo.txt | 52 +-
.../man/VkPipelineDynamicStateCreateFlags.txt | 31 +-
.../man/VkPipelineDynamicStateCreateInfo.txt | 43 +-
...kPipelineInputAssemblyStateCreateFlags.txt | 31 +-
...VkPipelineInputAssemblyStateCreateInfo.txt | 59 +-
doc/specs/vulkan/man/VkPipelineLayout.txt | 54 +
.../man/VkPipelineLayoutCreateFlags.txt | 31 +-
.../vulkan/man/VkPipelineLayoutCreateInfo.txt | 62 +-
.../VkPipelineMultisampleStateCreateFlags.txt | 31 +-
.../VkPipelineMultisampleStateCreateInfo.txt | 55 +-
...kPipelineRasterizationStateCreateFlags.txt | 31 +-
...VkPipelineRasterizationStateCreateInfo.txt | 57 +-
.../man/VkPipelineShaderStageCreateFlags.txt | 31 +-
.../man/VkPipelineShaderStageCreateInfo.txt | 52 +-
.../vulkan/man/VkPipelineStageFlagBits.txt | 110 +-
doc/specs/vulkan/man/VkPipelineStageFlags.txt | 101 +-
...VkPipelineTessellationStateCreateFlags.txt | 31 +-
.../VkPipelineTessellationStateCreateInfo.txt | 39 +-
.../VkPipelineVertexInputStateCreateFlags.txt | 31 +-
.../VkPipelineVertexInputStateCreateInfo.txt | 46 +-
.../VkPipelineViewportStateCreateFlags.txt | 31 +-
.../man/VkPipelineViewportStateCreateInfo.txt | 47 +-
doc/specs/vulkan/man/VkPolygonMode.txt | 46 +-
doc/specs/vulkan/man/VkPresentInfoKHR.txt | 27 -
doc/specs/vulkan/man/VkPresentModeKHR.txt | 26 -
doc/specs/vulkan/man/VkPrimitiveTopology.txt | 38 +-
doc/specs/vulkan/man/VkPushConstantRange.txt | 44 +-
.../vulkan/man/VkQueryControlFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkQueryControlFlags.txt | 32 +-
.../man/VkQueryPipelineStatisticFlagBits.txt | 123 +-
.../man/VkQueryPipelineStatisticFlags.txt | 31 +-
doc/specs/vulkan/man/VkQueryPool.txt | 48 +
.../vulkan/man/VkQueryPoolCreateFlags.txt | 31 +-
.../vulkan/man/VkQueryPoolCreateInfo.txt | 50 +-
.../vulkan/man/VkQueryResultFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkQueryResultFlags.txt | 53 +-
doc/specs/vulkan/man/VkQueryType.txt | 34 +-
doc/specs/vulkan/man/VkQueue.txt | 50 +
.../vulkan/man/VkQueueFamilyProperties.txt | 131 +-
doc/specs/vulkan/man/VkQueueFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkQueueFlags.txt | 45 +-
doc/specs/vulkan/man/VkRect2D.txt | 37 +-
doc/specs/vulkan/man/VkRenderPass.txt | 50 +
.../vulkan/man/VkRenderPassBeginInfo.txt | 66 +-
.../vulkan/man/VkRenderPassCreateFlags.txt | 31 +-
.../vulkan/man/VkRenderPassCreateInfo.txt | 55 +-
doc/specs/vulkan/man/VkResult.txt | 101 +-
.../vulkan/man/VkSampleCountFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkSampleCountFlags.txt | 31 +-
doc/specs/vulkan/man/VkSampleMask.txt | 46 +
doc/specs/vulkan/man/VkSampler.txt | 49 +
doc/specs/vulkan/man/VkSamplerAddressMode.txt | 34 +-
doc/specs/vulkan/man/VkSamplerCreateFlags.txt | 31 +-
doc/specs/vulkan/man/VkSamplerCreateInfo.txt | 179 +-
doc/specs/vulkan/man/VkSamplerMipmapMode.txt | 34 +-
doc/specs/vulkan/man/VkSemaphore.txt | 49 +
.../vulkan/man/VkSemaphoreCreateFlags.txt | 31 +-
.../vulkan/man/VkSemaphoreCreateInfo.txt | 38 +-
doc/specs/vulkan/man/VkShaderModule.txt | 52 +
.../vulkan/man/VkShaderModuleCreateFlags.txt | 31 +-
.../vulkan/man/VkShaderModuleCreateInfo.txt | 43 +-
.../vulkan/man/VkShaderStageFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkShaderStageFlags.txt | 31 +-
doc/specs/vulkan/man/VkSharingMode.txt | 112 +-
.../man/VkSparseBufferMemoryBindInfo.txt | 42 +-
.../man/VkSparseImageFormatFlagBits.txt | 34 +-
.../vulkan/man/VkSparseImageFormatFlags.txt | 31 +-
.../man/VkSparseImageFormatProperties.txt | 55 +-
.../vulkan/man/VkSparseImageMemoryBind.txt | 50 +-
.../man/VkSparseImageMemoryBindInfo.txt | 42 +-
.../man/VkSparseImageMemoryRequirements.txt | 72 +-
.../man/VkSparseImageOpaqueMemoryBindInfo.txt | 42 +-
doc/specs/vulkan/man/VkSparseMemoryBind.txt | 84 +-
.../vulkan/man/VkSparseMemoryBindFlagBits.txt | 34 +-
.../vulkan/man/VkSparseMemoryBindFlags.txt | 31 +-
doc/specs/vulkan/man/VkSpecializationInfo.txt | 45 +-
.../vulkan/man/VkSpecializationMapEntry.txt | 43 +-
.../vulkan/man/VkStencilFaceFlagBits.txt | 34 +-
doc/specs/vulkan/man/VkStencilFaceFlags.txt | 31 +-
doc/specs/vulkan/man/VkStencilOp.txt | 72 +-
doc/specs/vulkan/man/VkStencilOpState.txt | 48 +-
doc/specs/vulkan/man/VkStructureType.txt | 36 +-
doc/specs/vulkan/man/VkSubmitInfo.txt | 58 +-
doc/specs/vulkan/man/VkSubpassContents.txt | 34 +-
doc/specs/vulkan/man/VkSubpassDependency.txt | 87 +-
doc/specs/vulkan/man/VkSubpassDescription.txt | 94 +-
.../vulkan/man/VkSubpassDescriptionFlags.txt | 31 +-
doc/specs/vulkan/man/VkSubresourceLayout.txt | 88 +-
.../vulkan/man/VkSurfaceCapabilitiesKHR.txt | 27 -
doc/specs/vulkan/man/VkSurfaceFormatKHR.txt | 27 -
.../man/VkSurfaceTransformFlagBitsKHR.txt | 26 -
.../vulkan/man/VkSurfaceTransformFlagsKHR.txt | 26 -
.../vulkan/man/VkSwapchainCreateFlagsKHR.txt | 26 -
.../vulkan/man/VkSwapchainCreateInfoKHR.txt | 27 -
.../vulkan/man/VkSystemAllocationScope.txt | 83 +-
.../man/VkVertexInputAttributeDescription.txt | 42 +-
.../man/VkVertexInputBindingDescription.txt | 51 +-
doc/specs/vulkan/man/VkVertexInputRate.txt | 34 +-
doc/specs/vulkan/man/VkViewport.txt | 74 +-
.../man/VkWaylandSurfaceCreateFlagsKHR.txt | 26 -
.../man/VkWaylandSurfaceCreateInfoKHR.txt | 27 -
.../man/VkWin32SurfaceCreateFlagsKHR.txt | 26 -
.../man/VkWin32SurfaceCreateInfoKHR.txt | 27 -
doc/specs/vulkan/man/VkWriteDescriptorSet.txt | 117 +-
.../vulkan/man/VkXcbSurfaceCreateFlagsKHR.txt | 26 -
.../vulkan/man/VkXcbSurfaceCreateInfoKHR.txt | 27 -
.../man/VkXlibSurfaceCreateFlagsKHR.txt | 26 -
.../vulkan/man/VkXlibSurfaceCreateInfoKHR.txt | 27 -
doc/specs/vulkan/man/apispec.txt | 349 ++-
doc/specs/vulkan/man/images/icons/note.png | Bin 0 -> 2494 bytes
doc/specs/vulkan/man/khronoscopyright.txt | 7 +-
doc/specs/vulkan/man/manpages.mak | 508 ---
.../vulkan/man/vkAcquireNextImageKHR.txt | 46 -
.../vulkan/man/vkAllocateCommandBuffers.txt | 57 +-
.../vulkan/man/vkAllocateDescriptorSets.txt | 69 +-
doc/specs/vulkan/man/vkAllocateMemory.txt | 81 +-
doc/specs/vulkan/man/vkBeginCommandBuffer.txt | 95 +-
doc/specs/vulkan/man/vkBindBufferMemory.txt | 55 +-
doc/specs/vulkan/man/vkBindImageMemory.txt | 55 +-
doc/specs/vulkan/man/vkCmdBeginQuery.txt | 65 +-
doc/specs/vulkan/man/vkCmdBeginRenderPass.txt | 80 +-
.../vulkan/man/vkCmdBindDescriptorSets.txt | 130 +-
doc/specs/vulkan/man/vkCmdBindIndexBuffer.txt | 61 +-
doc/specs/vulkan/man/vkCmdBindPipeline.txt | 72 +-
.../vulkan/man/vkCmdBindVertexBuffers.txt | 67 +-
doc/specs/vulkan/man/vkCmdBlitImage.txt | 164 +-
.../vulkan/man/vkCmdClearAttachments.txt | 98 +-
doc/specs/vulkan/man/vkCmdClearColorImage.txt | 85 +-
.../man/vkCmdClearDepthStencilImage.txt | 82 +-
doc/specs/vulkan/man/vkCmdCopyBuffer.txt | 65 +-
.../vulkan/man/vkCmdCopyBufferToImage.txt | 63 +-
doc/specs/vulkan/man/vkCmdCopyImage.txt | 130 +-
.../vulkan/man/vkCmdCopyImageToBuffer.txt | 64 +-
.../vulkan/man/vkCmdCopyQueryPoolResults.txt | 123 +-
doc/specs/vulkan/man/vkCmdDispatch.txt | 53 +-
.../vulkan/man/vkCmdDispatchIndirect.txt | 58 +-
doc/specs/vulkan/man/vkCmdDraw.txt | 62 +-
doc/specs/vulkan/man/vkCmdDrawIndexed.txt | 82 +-
.../vulkan/man/vkCmdDrawIndexedIndirect.txt | 73 +-
doc/specs/vulkan/man/vkCmdDrawIndirect.txt | 70 +-
doc/specs/vulkan/man/vkCmdEndQuery.txt | 52 +-
doc/specs/vulkan/man/vkCmdEndRenderPass.txt | 41 +-
doc/specs/vulkan/man/vkCmdExecuteCommands.txt | 74 +-
doc/specs/vulkan/man/vkCmdFillBuffer.txt | 61 +-
doc/specs/vulkan/man/vkCmdNextSubpass.txt | 67 +-
doc/specs/vulkan/man/vkCmdPipelineBarrier.txt | 177 +-
doc/specs/vulkan/man/vkCmdPushConstants.txt | 70 +-
doc/specs/vulkan/man/vkCmdResetEvent.txt | 43 +-
doc/specs/vulkan/man/vkCmdResetQueryPool.txt | 48 +-
doc/specs/vulkan/man/vkCmdResolveImage.txt | 79 +-
.../vulkan/man/vkCmdSetBlendConstants.txt | 48 +-
doc/specs/vulkan/man/vkCmdSetDepthBias.txt | 147 +-
doc/specs/vulkan/man/vkCmdSetDepthBounds.txt | 70 +-
doc/specs/vulkan/man/vkCmdSetEvent.txt | 45 +-
doc/specs/vulkan/man/vkCmdSetLineWidth.txt | 49 +-
doc/specs/vulkan/man/vkCmdSetScissor.txt | 73 +-
.../vulkan/man/vkCmdSetStencilCompareMask.txt | 72 +-
.../vulkan/man/vkCmdSetStencilReference.txt | 61 +-
.../vulkan/man/vkCmdSetStencilWriteMask.txt | 62 +-
doc/specs/vulkan/man/vkCmdSetViewport.txt | 75 +-
doc/specs/vulkan/man/vkCmdUpdateBuffer.txt | 62 +-
doc/specs/vulkan/man/vkCmdWaitEvents.txt | 173 +-
doc/specs/vulkan/man/vkCmdWriteTimestamp.txt | 77 +-
.../vulkan/man/vkCreateAndroidSurfaceKHR.txt | 46 -
doc/specs/vulkan/man/vkCreateBuffer.txt | 48 +-
doc/specs/vulkan/man/vkCreateBufferView.txt | 49 +-
doc/specs/vulkan/man/vkCreateCommandPool.txt | 59 +-
.../vulkan/man/vkCreateComputePipelines.txt | 104 +-
.../man/vkCreateDebugReportCallbackEXT.txt | 27 -
.../vulkan/man/vkCreateDescriptorPool.txt | 83 +-
.../man/vkCreateDescriptorSetLayout.txt | 82 +-
doc/specs/vulkan/man/vkCreateDevice.txt | 80 +-
.../vulkan/man/vkCreateDisplayModeKHR.txt | 48 -
.../man/vkCreateDisplayPlaneSurfaceKHR.txt | 46 -
doc/specs/vulkan/man/vkCreateEvent.txt | 58 +-
doc/specs/vulkan/man/vkCreateFence.txt | 65 +-
doc/specs/vulkan/man/vkCreateFramebuffer.txt | 55 +-
.../vulkan/man/vkCreateGraphicsPipelines.txt | 97 +-
doc/specs/vulkan/man/vkCreateImage.txt | 47 +-
doc/specs/vulkan/man/vkCreateImageView.txt | 64 +-
doc/specs/vulkan/man/vkCreateInstance.txt | 134 +-
.../vulkan/man/vkCreateMirSurfaceKHR.txt | 46 -
.../vulkan/man/vkCreatePipelineCache.txt | 72 +-
.../vulkan/man/vkCreatePipelineLayout.txt | 57 +-
doc/specs/vulkan/man/vkCreateQueryPool.txt | 54 +-
doc/specs/vulkan/man/vkCreateRenderPass.txt | 170 +-
doc/specs/vulkan/man/vkCreateSampler.txt | 48 +-
doc/specs/vulkan/man/vkCreateSemaphore.txt | 63 +-
doc/specs/vulkan/man/vkCreateShaderModule.txt | 58 +-
.../man/vkCreateSharedSwapchainsKHR.txt | 50 -
doc/specs/vulkan/man/vkCreateSwapchainKHR.txt | 47 -
.../vulkan/man/vkCreateWaylandSurfaceKHR.txt | 46 -
.../vulkan/man/vkCreateWin32SurfaceKHR.txt | 46 -
.../vulkan/man/vkCreateXcbSurfaceKHR.txt | 46 -
.../vulkan/man/vkCreateXlibSurfaceKHR.txt | 46 -
.../vulkan/man/vkDebugReportMessageEXT.txt | 27 -
doc/specs/vulkan/man/vkDestroyBuffer.txt | 41 +-
doc/specs/vulkan/man/vkDestroyBufferView.txt | 38 +-
doc/specs/vulkan/man/vkDestroyCommandPool.txt | 45 +-
.../man/vkDestroyDebugReportCallbackEXT.txt | 27 -
.../vulkan/man/vkDestroyDescriptorPool.txt | 43 +-
.../man/vkDestroyDescriptorSetLayout.txt | 40 +-
doc/specs/vulkan/man/vkDestroyDevice.txt | 49 +-
doc/specs/vulkan/man/vkDestroyEvent.txt | 41 +-
doc/specs/vulkan/man/vkDestroyFence.txt | 39 +-
doc/specs/vulkan/man/vkDestroyFramebuffer.txt | 40 +-
doc/specs/vulkan/man/vkDestroyImage.txt | 41 +-
doc/specs/vulkan/man/vkDestroyImageView.txt | 38 +-
doc/specs/vulkan/man/vkDestroyInstance.txt | 36 +-
doc/specs/vulkan/man/vkDestroyPipeline.txt | 41 +-
.../vulkan/man/vkDestroyPipelineCache.txt | 41 +-
.../vulkan/man/vkDestroyPipelineLayout.txt | 39 +-
doc/specs/vulkan/man/vkDestroyQueryPool.txt | 37 +-
doc/specs/vulkan/man/vkDestroyRenderPass.txt | 37 +-
doc/specs/vulkan/man/vkDestroySampler.txt | 37 +-
doc/specs/vulkan/man/vkDestroySemaphore.txt | 38 +-
.../vulkan/man/vkDestroyShaderModule.txt | 38 +-
doc/specs/vulkan/man/vkDestroySurfaceKHR.txt | 40 -
.../vulkan/man/vkDestroySwapchainKHR.txt | 39 -
doc/specs/vulkan/man/vkDeviceWaitIdle.txt | 35 +-
doc/specs/vulkan/man/vkEndCommandBuffer.txt | 40 +-
.../vkEnumerateDeviceExtensionProperties.txt | 64 +-
.../man/vkEnumerateDeviceLayerProperties.txt | 63 +-
...vkEnumerateInstanceExtensionProperties.txt | 70 +-
.../vkEnumerateInstanceLayerProperties.txt | 53 +-
.../vulkan/man/vkEnumeratePhysicalDevices.txt | 67 +-
.../vulkan/man/vkFlushMappedMemoryRanges.txt | 61 +-
doc/specs/vulkan/man/vkFreeCommandBuffers.txt | 55 +-
doc/specs/vulkan/man/vkFreeDescriptorSets.txt | 55 +-
doc/specs/vulkan/man/vkFreeMemory.txt | 54 +-
.../man/vkGetBufferMemoryRequirements.txt | 52 +-
.../man/vkGetDeviceMemoryCommitment.txt | 46 +-
doc/specs/vulkan/man/vkGetDeviceProcAddr.txt | 63 +-
doc/specs/vulkan/man/vkGetDeviceQueue.txt | 48 +-
.../man/vkGetDisplayModePropertiesKHR.txt | 45 -
.../man/vkGetDisplayPlaneCapabilitiesKHR.txt | 45 -
.../vkGetDisplayPlaneSupportedDisplaysKHR.txt | 45 -
doc/specs/vulkan/man/vkGetEventStatus.txt | 50 +-
doc/specs/vulkan/man/vkGetFenceStatus.txt | 54 +-
.../man/vkGetImageMemoryRequirements.txt | 54 +-
.../vkGetImageSparseMemoryRequirements.txt | 123 +-
.../man/vkGetImageSubresourceLayout.txt | 85 +-
.../vulkan/man/vkGetInstanceProcAddr.txt | 104 +-
...hysicalDeviceDisplayPlanePropertiesKHR.txt | 42 -
...kGetPhysicalDeviceDisplayPropertiesKHR.txt | 42 -
.../man/vkGetPhysicalDeviceFeatures.txt | 418 +--
.../vkGetPhysicalDeviceFormatProperties.txt | 71 +-
...GetPhysicalDeviceImageFormatProperties.txt | 120 +-
.../vkGetPhysicalDeviceMemoryProperties.txt | 105 +-
...hysicalDeviceMirPresentationSupportKHR.txt | 40 -
.../man/vkGetPhysicalDeviceProperties.txt | 85 +-
...GetPhysicalDeviceQueueFamilyProperties.txt | 104 +-
...sicalDeviceSparseImageFormatProperties.txt | 134 +-
...etPhysicalDeviceSurfaceCapabilitiesKHR.txt | 42 -
.../vkGetPhysicalDeviceSurfaceFormatsKHR.txt | 46 -
...etPhysicalDeviceSurfacePresentModesKHR.txt | 45 -
.../vkGetPhysicalDeviceSurfaceSupportKHR.txt | 40 -
...calDeviceWaylandPresentationSupportKHR.txt | 37 -
...sicalDeviceWin32PresentationSupportKHR.txt | 34 -
...hysicalDeviceXcbPresentationSupportKHR.txt | 40 -
...ysicalDeviceXlibPresentationSupportKHR.txt | 40 -
.../vulkan/man/vkGetPipelineCacheData.txt | 113 +-
.../vulkan/man/vkGetQueryPoolResults.txt | 168 +-
.../vulkan/man/vkGetRenderAreaGranularity.txt | 76 +-
.../vulkan/man/vkGetSwapchainImagesKHR.txt | 41 -
.../man/vkInvalidateMappedMemoryRanges.txt | 58 +-
doc/specs/vulkan/man/vkMapMemory.txt | 90 +-
.../vulkan/man/vkMergePipelineCaches.txt | 50 +-
doc/specs/vulkan/man/vkQueueBindSparse.txt | 176 +-
doc/specs/vulkan/man/vkQueuePresentKHR.txt | 40 -
doc/specs/vulkan/man/vkQueueSubmit.txt | 102 +-
doc/specs/vulkan/man/vkQueueWaitIdle.txt | 38 +-
doc/specs/vulkan/man/vkResetCommandBuffer.txt | 54 +-
doc/specs/vulkan/man/vkResetCommandPool.txt | 59 +-
.../vulkan/man/vkResetDescriptorPool.txt | 38 +-
doc/specs/vulkan/man/vkResetEvent.txt | 34 +-
doc/specs/vulkan/man/vkResetFences.txt | 42 +-
doc/specs/vulkan/man/vkSetEvent.txt | 38 +-
doc/specs/vulkan/man/vkUnmapMemory.txt | 35 +-
.../vulkan/man/vkUpdateDescriptorSets.txt | 139 +-
doc/specs/vulkan/man/vkWaitForFences.txt | 97 +-
doc/specs/vulkan/refDesc.py | 350 +++
doc/specs/vulkan/refPageNotes.md | 83 +
doc/specs/vulkan/reflib.py | 384 +++
doc/specs/vulkan/style/styleguide.txt | 9 +-
.../validity/protos/vkCmdBindIndexBuffer.txt | 2 +-
.../validity/protos/vkCmdExecuteCommands.txt | 2 +-
.../protos/vkCreateComputePipelines.txt | 2 +-
.../protos/vkCreateGraphicsPipelines.txt | 2 +-
.../validity/protos/vkDestroyBuffer.txt | 2 +-
.../validity/protos/vkDestroyBufferView.txt | 2 +-
.../validity/protos/vkDestroyCommandPool.txt | 2 +-
.../protos/vkDestroyDescriptorPool.txt | 2 +-
.../protos/vkDestroyDescriptorSetLayout.txt | 2 +-
.../vulkan/validity/protos/vkDestroyEvent.txt | 2 +-
.../vulkan/validity/protos/vkDestroyFence.txt | 2 +-
.../validity/protos/vkDestroyFramebuffer.txt | 2 +-
.../vulkan/validity/protos/vkDestroyImage.txt | 2 +-
.../validity/protos/vkDestroyImageView.txt | 2 +-
.../validity/protos/vkDestroyPipeline.txt | 2 +-
.../protos/vkDestroyPipelineCache.txt | 2 +-
.../protos/vkDestroyPipelineLayout.txt | 2 +-
.../validity/protos/vkDestroyQueryPool.txt | 2 +-
.../validity/protos/vkDestroyRenderPass.txt | 2 +-
.../validity/protos/vkDestroySampler.txt | 2 +-
.../validity/protos/vkDestroySemaphore.txt | 2 +-
.../validity/protos/vkDestroyShaderModule.txt | 2 +-
.../validity/protos/vkFreeCommandBuffers.txt | 2 +-
.../validity/protos/vkFreeDescriptorSets.txt | 3 +-
.../vulkan/validity/protos/vkFreeMemory.txt | 2 +-
.../validity/protos/vkGetInstanceProcAddr.txt | 4 +-
.../validity/protos/vkQueueBindSparse.txt | 2 +-
.../vulkan/validity/protos/vkQueueSubmit.txt | 6 +-
.../structs/VkCommandBufferBeginInfo.txt | 2 +-
.../structs/VkComputePipelineCreateInfo.txt | 8 +-
.../structs/VkGraphicsPipelineCreateInfo.txt | 10 +-
.../structs/VkSparseImageMemoryBind.txt | 2 +-
.../validity/structs/VkSparseMemoryBind.txt | 6 +-
.../vulkan/validity/structs/VkSubmitInfo.txt | 2 +-
doc/specs/vulkan/vkapi.py | 2787 +++++++++++------
doc/specs/vulkan/vkspec.txt | 2 +
out/genRef.html | 28 +
src/spec/Makefile | 31 +-
src/spec/cgenerator.py | 346 ++
src/spec/docgenerator.py | 270 ++
src/spec/generator.py | 1887 +----------
src/spec/genvk.py | 7 +-
src/spec/hostsyncgenerator.py | 198 ++
src/spec/pygenerator.py | 242 ++
src/spec/readme.tex | 8 +-
src/spec/registry.rnc | 2 +-
src/spec/validitygenerator.py | 987 ++++++
src/spec/vk.xml | 135 +-
src/vulkan/vulkan.h | 30 +-
625 files changed, 28811 insertions(+), 14420 deletions(-)
create mode 100644 doc/specs/vulkan/appendices/boilerplate.txt
create mode 100644 doc/specs/vulkan/basetypes/VkBool32.txt
create mode 100644 doc/specs/vulkan/basetypes/VkDeviceSize.txt
create mode 100644 doc/specs/vulkan/basetypes/VkFlags.txt
create mode 100644 doc/specs/vulkan/basetypes/VkSampleMask.txt
create mode 100644 doc/specs/vulkan/defines/VK_API_VERSION.txt
create mode 100644 doc/specs/vulkan/defines/VK_API_VERSION_1_0.txt
create mode 100644 doc/specs/vulkan/defines/VK_DEFINE_HANDLE.txt
create mode 100644 doc/specs/vulkan/defines/VK_DEFINE_NON_DISPATCHABLE_HANDLE.txt
create mode 100644 doc/specs/vulkan/defines/VK_HEADER_VERSION.txt
create mode 100644 doc/specs/vulkan/defines/VK_MAKE_VERSION.txt
create mode 100644 doc/specs/vulkan/defines/VK_NULL_HANDLE.txt
create mode 100644 doc/specs/vulkan/defines/VK_VERSION_MAJOR.txt
create mode 100644 doc/specs/vulkan/defines/VK_VERSION_MINOR.txt
create mode 100644 doc/specs/vulkan/defines/VK_VERSION_PATCH.txt
delete mode 100644 doc/specs/vulkan/funcpointers/PFN_vkDebugReportCallbackEXT.txt
create mode 100755 doc/specs/vulkan/genRef.py
create mode 100644 doc/specs/vulkan/handles/VkBuffer.txt
create mode 100644 doc/specs/vulkan/handles/VkBufferView.txt
create mode 100644 doc/specs/vulkan/handles/VkCommandBuffer.txt
create mode 100644 doc/specs/vulkan/handles/VkCommandPool.txt
create mode 100644 doc/specs/vulkan/handles/VkDescriptorPool.txt
create mode 100644 doc/specs/vulkan/handles/VkDescriptorSet.txt
create mode 100644 doc/specs/vulkan/handles/VkDescriptorSetLayout.txt
create mode 100644 doc/specs/vulkan/handles/VkDevice.txt
create mode 100644 doc/specs/vulkan/handles/VkDeviceMemory.txt
create mode 100644 doc/specs/vulkan/handles/VkEvent.txt
create mode 100644 doc/specs/vulkan/handles/VkFence.txt
create mode 100644 doc/specs/vulkan/handles/VkFramebuffer.txt
create mode 100644 doc/specs/vulkan/handles/VkImage.txt
create mode 100644 doc/specs/vulkan/handles/VkImageView.txt
create mode 100644 doc/specs/vulkan/handles/VkInstance.txt
create mode 100644 doc/specs/vulkan/handles/VkPhysicalDevice.txt
create mode 100644 doc/specs/vulkan/handles/VkPipeline.txt
create mode 100644 doc/specs/vulkan/handles/VkPipelineCache.txt
create mode 100644 doc/specs/vulkan/handles/VkPipelineLayout.txt
create mode 100644 doc/specs/vulkan/handles/VkQueryPool.txt
create mode 100644 doc/specs/vulkan/handles/VkQueue.txt
create mode 100644 doc/specs/vulkan/handles/VkRenderPass.txt
create mode 100644 doc/specs/vulkan/handles/VkSampler.txt
create mode 100644 doc/specs/vulkan/handles/VkSemaphore.txt
create mode 100644 doc/specs/vulkan/handles/VkShaderModule.txt
create mode 100755 doc/specs/vulkan/insertTags.py
create mode 100644 doc/specs/vulkan/man/PFN_vkAllocationFunction.txt
create mode 100644 doc/specs/vulkan/man/PFN_vkFreeFunction.txt
create mode 100644 doc/specs/vulkan/man/PFN_vkInternalAllocationNotification.txt
create mode 100644 doc/specs/vulkan/man/PFN_vkInternalFreeNotification.txt
create mode 100644 doc/specs/vulkan/man/PFN_vkReallocationFunction.txt
create mode 100644 doc/specs/vulkan/man/PFN_vkVoidFunction.txt
create mode 100644 doc/specs/vulkan/man/VK_API_VERSION.txt
create mode 100644 doc/specs/vulkan/man/VK_API_VERSION_1_0.txt
create mode 100644 doc/specs/vulkan/man/VK_DEFINE_HANDLE.txt
create mode 100644 doc/specs/vulkan/man/VK_DEFINE_NON_DISPATCHABLE_HANDLE.txt
create mode 100644 doc/specs/vulkan/man/VK_HEADER_VERSION.txt
create mode 100644 doc/specs/vulkan/man/VK_MAKE_VERSION.txt
create mode 100644 doc/specs/vulkan/man/VK_NULL_HANDLE.txt
create mode 100644 doc/specs/vulkan/man/VK_VERSION_MAJOR.txt
create mode 100644 doc/specs/vulkan/man/VK_VERSION_MINOR.txt
create mode 100644 doc/specs/vulkan/man/VK_VERSION_PATCH.txt
delete mode 100644 doc/specs/vulkan/man/VkAndroidSurfaceCreateFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkAndroidSurfaceCreateInfoKHR.txt
create mode 100644 doc/specs/vulkan/man/VkBool32.txt
create mode 100644 doc/specs/vulkan/man/VkBuffer.txt
create mode 100644 doc/specs/vulkan/man/VkBufferView.txt
delete mode 100644 doc/specs/vulkan/man/VkColorSpaceKHR.txt
create mode 100644 doc/specs/vulkan/man/VkCommandBuffer.txt
create mode 100644 doc/specs/vulkan/man/VkCommandPool.txt
delete mode 100644 doc/specs/vulkan/man/VkCompositeAlphaFlagBitsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkCompositeAlphaFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDebugReportCallbackCreateInfoEXT.txt
delete mode 100644 doc/specs/vulkan/man/VkDebugReportErrorEXT.txt
delete mode 100644 doc/specs/vulkan/man/VkDebugReportFlagBitsEXT.txt
delete mode 100644 doc/specs/vulkan/man/VkDebugReportFlagsEXT.txt
delete mode 100644 doc/specs/vulkan/man/VkDebugReportObjectTypeEXT.txt
create mode 100644 doc/specs/vulkan/man/VkDescriptorPool.txt
create mode 100644 doc/specs/vulkan/man/VkDescriptorSet.txt
create mode 100644 doc/specs/vulkan/man/VkDescriptorSetLayout.txt
create mode 100644 doc/specs/vulkan/man/VkDevice.txt
create mode 100644 doc/specs/vulkan/man/VkDeviceMemory.txt
create mode 100644 doc/specs/vulkan/man/VkDeviceSize.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplayModeCreateFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplayModeCreateInfoKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplayModeParametersKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplayModePropertiesKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplayPlaneAlphaFlagBitsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplayPlaneAlphaFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplayPlaneCapabilitiesKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplayPlanePropertiesKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplayPresentInfoKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplayPropertiesKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplaySurfaceCreateFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkDisplaySurfaceCreateInfoKHR.txt
create mode 100644 doc/specs/vulkan/man/VkEvent.txt
create mode 100644 doc/specs/vulkan/man/VkFence.txt
create mode 100644 doc/specs/vulkan/man/VkFlags.txt
create mode 100644 doc/specs/vulkan/man/VkFramebuffer.txt
create mode 100644 doc/specs/vulkan/man/VkImage.txt
create mode 100644 doc/specs/vulkan/man/VkImageView.txt
create mode 100644 doc/specs/vulkan/man/VkInstance.txt
delete mode 100644 doc/specs/vulkan/man/VkMirSurfaceCreateFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkMirSurfaceCreateInfoKHR.txt
create mode 100644 doc/specs/vulkan/man/VkPhysicalDevice.txt
create mode 100644 doc/specs/vulkan/man/VkPipeline.txt
create mode 100644 doc/specs/vulkan/man/VkPipelineCache.txt
create mode 100644 doc/specs/vulkan/man/VkPipelineLayout.txt
delete mode 100644 doc/specs/vulkan/man/VkPresentInfoKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkPresentModeKHR.txt
create mode 100644 doc/specs/vulkan/man/VkQueryPool.txt
create mode 100644 doc/specs/vulkan/man/VkQueue.txt
create mode 100644 doc/specs/vulkan/man/VkRenderPass.txt
create mode 100644 doc/specs/vulkan/man/VkSampleMask.txt
create mode 100644 doc/specs/vulkan/man/VkSampler.txt
create mode 100644 doc/specs/vulkan/man/VkSemaphore.txt
create mode 100644 doc/specs/vulkan/man/VkShaderModule.txt
delete mode 100644 doc/specs/vulkan/man/VkSurfaceCapabilitiesKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkSurfaceFormatKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkSurfaceTransformFlagBitsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkSurfaceTransformFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkSwapchainCreateFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkSwapchainCreateInfoKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkWaylandSurfaceCreateFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkWaylandSurfaceCreateInfoKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkWin32SurfaceCreateFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkWin32SurfaceCreateInfoKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkXcbSurfaceCreateFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkXcbSurfaceCreateInfoKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkXlibSurfaceCreateFlagsKHR.txt
delete mode 100644 doc/specs/vulkan/man/VkXlibSurfaceCreateInfoKHR.txt
create mode 100644 doc/specs/vulkan/man/images/icons/note.png
delete mode 100644 doc/specs/vulkan/man/manpages.mak
delete mode 100644 doc/specs/vulkan/man/vkAcquireNextImageKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateAndroidSurfaceKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateDebugReportCallbackEXT.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateDisplayModeKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateDisplayPlaneSurfaceKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateMirSurfaceKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateSharedSwapchainsKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateSwapchainKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateWaylandSurfaceKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateWin32SurfaceKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateXcbSurfaceKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkCreateXlibSurfaceKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkDebugReportMessageEXT.txt
delete mode 100644 doc/specs/vulkan/man/vkDestroyDebugReportCallbackEXT.txt
delete mode 100644 doc/specs/vulkan/man/vkDestroySurfaceKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkDestroySwapchainKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetDisplayModePropertiesKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetDisplayPlaneCapabilitiesKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetDisplayPlaneSupportedDisplaysKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceDisplayPlanePropertiesKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceDisplayPropertiesKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceMirPresentationSupportKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceSurfaceCapabilitiesKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceSurfaceFormatsKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceSurfacePresentModesKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceSurfaceSupportKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceWaylandPresentationSupportKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceWin32PresentationSupportKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceXcbPresentationSupportKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetPhysicalDeviceXlibPresentationSupportKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkGetSwapchainImagesKHR.txt
delete mode 100644 doc/specs/vulkan/man/vkQueuePresentKHR.txt
create mode 100644 doc/specs/vulkan/refDesc.py
create mode 100644 doc/specs/vulkan/refPageNotes.md
create mode 100644 doc/specs/vulkan/reflib.py
create mode 100644 out/genRef.html
create mode 100644 src/spec/cgenerator.py
create mode 100644 src/spec/docgenerator.py
create mode 100644 src/spec/hostsyncgenerator.py
create mode 100644 src/spec/pygenerator.py
create mode 100644 src/spec/validitygenerator.py
diff --git a/.gitignore b/.gitignore
index 09d68ba7..af2fdc3f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -34,14 +34,9 @@
__pycache__
# Spec build temporary files and outputs
-out/checks
-out/html
-out/xhtml
-out/vkspec*
-out/apispec*
-out/man
-out/pdf
-out/core
+out/1.0*
+out/genRef
+out/misc
doc/specs/vulkan/specversion.txt
# Header build temporary files
diff --git a/ChangeLog.txt b/ChangeLog.txt
index 46070799..a277faf0 100644
--- a/ChangeLog.txt
+++ b/ChangeLog.txt
@@ -923,3 +923,24 @@ Other Commits:
wasn't listed in the error codes.
* Fix "correponds" typo in member definitions for
slink:VkSubpassDescription.
+
+-----------------------------------------------------
+
+Change log for July 10, 2016 Vulkan 1.0.20 spec update:
+
+ * Bump API patch number and header version number to 20 for this
+ update.
+
+Github Issues:
+
+ * Replaced existing reference pages by text automatically extracted
+ from the specification source, or generated from vk.xml in some
+ cases. This isn't a complete solution for the reference pages, but
+ puts them in a much better state. The ref pages (only) are now
+ placed under a CC BY open source license, which is more current than
+ the obsolete license previously used.
+
+ Further improvements to the pages should not edit them directly, but
+ instead concentrate on the specification source from which the ref
+ pages are being extracted (public issues 44, 55, 160; internal issue
+ 389).
diff --git a/doc/specs/vulkan/Makefile b/doc/specs/vulkan/Makefile
index a0d70222..550c06b2 100644
--- a/doc/specs/vulkan/Makefile
+++ b/doc/specs/vulkan/Makefile
@@ -93,7 +93,7 @@ A2XDBLATEXOPTS := --dblatex-opts='$(DBLATEXOPTS)'
# Misc. files to clean up (see 'checkinc' target below)
DIRT = $(SPECVERSION)
-.PHONY: directories
+.PHONY: directories $(MANHTMLDIR) $(MANPAGEDIR)
ICONFILES := \
$(ICONPATH)/caution.png \
@@ -118,14 +118,15 @@ SVGTYPEHTML := svg
SVGTYPEPDF := pdf
# Main (root) asciidoc spec source file
TOPDOC := vkspec.txt
-# Included chapters of the API spec
-CHAPTERS := $(wildcard chapters/[A-Za-z]*.txt appendices/[A-Za-z]*.txt)
+# Files making up sections of the API spec. The wildcard expression
+# should work in extension branches to pull in those files as well.
+CHAPTERS := $(wildcard chapters/[A-Za-z]*.txt appendices/[A-Za-z]*.txt chapters/*/[A-Za-z]*.txt appendices/*/[A-Za-z]*.txt)
INCLUDES := $(wildcard protos/*.txt structs/*.txt flags/*.txt enums/*.txt funcpointers/*.txt validity/structs/*.txt validity/protos/*.txt)
# All non-format-specific dependencies
COMMONDOCS := $(CHAPTERS) $(INCLUDES)
# A generated included file with the spec version, date, and git commit
SPECVERSION = specversion.txt
-SPECREVISION = 1.0.19
+SPECREVISION = 1.0.20
SPECREMARK =
# Spec targets
@@ -203,7 +204,13 @@ $(OUTDIR)/styleguide.html: $(VKCONF) $(SPECVERSION) $(STYLESRC)
-o $(OUTDIR)/styleguide.html -a svgpdf=$(SVGTYPEHTML) \
$(STYLESRC)
-clean: clean_html clean_pdf clean_chunked clean_checks clean_dirt
+clean: clean_html clean_pdf clean_chunked clean_checks clean_dirt clean_man
+
+clean_man:
+ $(RM) $(MANHTML)
+ $(RMRF) $(MANHTMLDIR)
+ $(RM) $(MANPAGES)
+ $(RMRF) $(MANPAGEDIR)
clean_html:
$(QUIET)$(RMRF) $(HTMLDIR) $(XHTMLDIR)
@@ -221,9 +228,59 @@ clean_checks:
clean_dirt:
$(QUIET)$(RM) $(DIRT)
-# Man page targets for individual pages
-MANDIR:=man
--include man/manpages.mak
+# Ref page targets for individual pages
+MANDIR := man
+MANSECTION := 3
+
+# These lists should be autogenerated
+
+# Ref page sources, split up by core vs. author IDs
+# CORESOURCES expansion will accidentally pull in macros defined by
+# extensions. Hopefully that won't happen.
+WSISOURCES := $(wildcard $(MANDIR)/*KHR.txt)
+EXTSOURCES := $(wildcard $(MANDIR)/*EXT.txt)
+CORESOURCES := $(filter-out $(WSISOURCES) $(EXTSOURCES) $(MANDIR)/vkman.css,$(wildcard $(MANDIR)/[Vv][Kk]* $(MANDIR)/PFN*txt))
+MANSOURCES := $(CORESOURCES) $(WSISOURCES) $(EXTSOURCES)
+
+MANCOPYRIGHT:= $(MANDIR)/khronoscopyright.txt $(MANDIR)/footer.txt
+MANPAGEDIR := $(OUTDIR)/man/$(MANSECTION)
+MANPAGES := $(MANSOURCES:$(MANDIR)/%.txt=$(MANPAGEDIR)/%.$(MANSECTION))
+MANHTMLDIR := $(OUTDIR)/man/html
+MANHTML := $(MANSOURCES:$(MANDIR)/%.txt=$(MANHTMLDIR)/%.html)
+
+manpagesall: manpages manhtmlpages
+
+manpages: $(MANPAGEDIR) $(MANPAGES)
+
+manhtmlpages: $(MANHTMLDIR) $(MANHTML)
+
+manhtmlpages: VKCONF=config/manpages.conf
+
+# Automatic generation of ref pages. Needs to have a proper dependency
+# causing the man page sources to be generated by running genRef (once),
+# but adding $(MANSOURCES) to the targets causes genRef to run
+# once/target.
+man/apispec.txt: $(CHAPTERS) genRef.py reflib.py vkapi.py
+ $(PYTHON) genRef.py $(CHAPTERS)
+
+# These dependencies don't take into account include directives
+
+$(MANPAGEDIR)/%.$(MANSECTION): $(MANDIR)/%.$(MANSECTION)
+ $(QUIET)mv $< $@
+
+$(MANDIR)/%.$(MANSECTION): $(MANDIR)/%.txt $(MANCOPYRIGHT) config/manpages.conf
+ $(QUIET)$(ECHO) Building $@
+ $(QUIET)$(A2X) -d manpage -f manpage --asciidoc-opts "-f config/manpages.conf" $(A2XOPTS) $<
+
+$(MANHTMLDIR)/%.html: $(MANDIR)/%.txt $(MANCOPYRIGHT) config/manpages.conf
+ $(QUIET)$(ECHO) Building $@
+ $(QUIET)$(A2X) -d manpage -f xhtml --asciidoc-opts "-f config/manpages.conf" --stylesheet=vkman.css $(A2XOPTS) --destination-dir=$(@D) $<
+
+$(MANHTMLDIR):
+ $(QUIET)$(MKDIR) $@
+
+$(MANPAGEDIR):
+ $(QUIET)$(MKDIR) $@
# Man page targets for HTML and PDF single-file documents
@@ -231,13 +288,13 @@ manpdf: $(OUTDIR)/apispec.pdf
manhtml: $(OUTDIR)/apispec.html
-$(OUTDIR)/apispec.pdf: $(CONFFILE) man/apispec.txt $(MANSOURCES) $(PDFXSL)
+$(OUTDIR)/apispec.pdf: $(CONFFILE) man/apispec.txt $(MANSOURCES) $(MANCOPYRIGHT) $(PDFXSL)
$(QUIET)if test ! -d $(OUTDIR) ; then $(MKDIR) $(OUTDIR) ; fi
$(QUIET)$(A2X) -f pdf $(A2XDBLATEXOPTS) $(A2XOPTS) --icons man/apispec.txt --destination-dir=$(OUTDIR)
-$(OUTDIR)/apispec.html: $(CONFFILE) man/apispec.txt $(MANSOURCES) $(SVGFILES)
+$(OUTDIR)/apispec.html: $(CONFFILE) man/apispec.txt $(MANSOURCES) $(MANCOPYRIGHT) $(SVGFILES)
$(QUIET)if test ! -d $(OUTDIR) ; then $(MKDIR) $(OUTDIR) ; fi
- $(QUIET)$(ASCIIDOC) $(ADOCOPTS) -d book -b html --out-file=$(OUTDIR)/apispec.html man/apispec.txt
+ $(QUIET)$(ASCIIDOC) -b html5 $(ADOCOPTS) -d book -b html --out-file=$(OUTDIR)/apispec.html man/apispec.txt
$(HTMLDIR)/images/%: images/%
$(QUIET)$(MKDIR) $(@D)
diff --git a/doc/specs/vulkan/README.html b/doc/specs/vulkan/README.html
index 74de192c..049cbaee 100644
--- a/doc/specs/vulkan/README.html
+++ b/doc/specs/vulkan/README.html
@@ -755,6 +755,11 @@ asciidoc.install();
+Reference Pages
+
+
+
+
Our stylesheets
@@ -792,7 +797,7 @@ specification and reference pages building properly.
Building The Spec
Assuming you have all the right tools installed (see Software Dependencies below), you should be able to go to
-…path-to-git-repo/vulkan/doc/specs/vulkan and:
+
…path-to-git-repo/vulkan/doc/specs/vulkan and:
$ make all
@@ -802,9 +807,9 @@ specification and reference pages building properly.
$ make xhtml chunked pdf manhtml manpdf manpages manhtmlpages checkinc checklinks
-This should generate a variety of targets under $(OUTDIR) (by default,
-../../../out/). The checked-in file $(OUTDIR)/index.html links to them
-all, or they can individually be found as follows:
+This should generate a variety of targets under $(OUTDIR) (by default,
+../../../out/1.0). The checked-in file $(OUTDIR)/index.html links to
+them all, or they can individually be found as follows:
-
@@ -813,17 +818,17 @@ API spec:
-
-Single-file XHTML (from a2x) - $(OUTDIR)/xhtml/vkspec.html
+Single-file XHTML (from a2x) - $(OUTDIR)/xhtml/vkspec.html
-
-Chunked HTML (from a2x) - $(OUTDIR)/vkspec.chunked/index.html
+Chunked HTML (from a2x) - $(OUTDIR)/vkspec.chunked/index.html
-
-PDF (from a2x) - $(OUTDIR)/pdf/vkspec.pdf
+PDF (from a2x) - $(OUTDIR)/pdf/vkspec.pdf
@@ -835,17 +840,17 @@ Man pages:
-
-Single-file HTML - $(OUTDIR)/apispec.html
+Single-file HTML - $(OUTDIR)/apispec.html
-
-File-per-entry-point HTML - $(OUTDIR)/man/html/*
+File-per-entry-point HTML - $(OUTDIR)/man/html/*
-
-File-per-entry-point nroff source - $(OUTDIR)/man/3/*
+File-per-entry-point nroff source - $(OUTDIR)/man/3/*
@@ -858,65 +863,62 @@ Validator output:
-
List of commands, structs, etc. missing from the API spec -
- $(OUTDIR)/checks/notInSpec.txt
+ $(OUTDIR)/checks/notInSpec.txt
-
-Validator script output for API spec - $(OUTDIR)/checks/specErrs.txt
+Validator script output for API spec - +$(OUTDIR)/checks/specErrs.txt
-
Validator script output for reference pages -
- $(OUTDIR)/checks/manErrs.txt
+ $(OUTDIR)/checks/manErrs.txt
-We strongly sugges that once you have the basic build working, you use e.g.
--j 8 (or other appropriate number depending on the number of cores in your
-CPU) to parallelize the reference page builds, since there are so many of
-them.
+We strongly sugges that once you have the basic build working, you use e.g.
+
+(or other appropriate number depending on the number of CPU cores you have)
+to parallelize the reference page builds, since there are so many of them.
If your asciidoc installation does not put the stylesheets and xsl files in
-the standard /etc/asciidoc/dblatex directory, set the environment variable
-DBLATEXPREFIX to the path to that directory (the one containing the
-asciidoc-dblatex.xsl and asciidoc-dblatex.sty installed with asciidoc).
+the standard /etc/asciidoc/dblatex directory, set the environment variable
+DBLATEXPREFIX to the path to that directory (the one containing the
+asciidoc-dblatex.xsl and asciidoc-dblatex.sty files installed with
+asciidoc).
Alternate and Test Builds
-
If you are just testing asciidoc formatting, macros, stylesheets, etc., you
-can edit test.txt, which is a stripped-down version of vkspec.txt,
-and build an alternate version of the spec with either
-
-
-
$ make TOPDOCHTML=test.txt xhtml
-
-
-
-
This example will generate the file $(OUTDIR)/xhtml/test.html . Note that
-TOPDOCHTML only applies to the xhtml and chunked targets at present.
+
If you are just testing asciidoc formatting, macros, stylesheets, etc.,
+we suggest editing vkspec.txt to comment out most of the chapter
+includes.
In addition to the XHTML and PDF targets, there is also a single-file HTML5
-target, html, which generates output directly from asciidoc without going
+target, html, which generates output directly from asciidoc without going
through Docbook. This is somewhat quicker to generate, but formatting and
section numbers aren’t consistent with the other builds and it is not for
-publication - just testing. The html target will generate the file
-$(OUTDIR)/html/vkspec.html .
+publication - just testing. The
html target will generate the file
+
$(OUTDIR)/html/vkspec.html .
Rebuilding The Generated Images
-
There are some images in the images/ directory which are maintained in one
+
There are some images in the images/ directory which are maintained in one
format but need to be converted to another format for corresponding types of
output. Most are SVG converted to PDF, some are PPT converted to PDF
converted to SVG. SVG and PDF forms are needed for the HTML and PDF output
formats, respectively.
These files are not automatically converted by the Makefile. Instead, all
-output forms required are checked into images/ . On the rare occasions that
-someone changes a source document and needs to regenerate the other forms,
-go into images and make in the directory.
+output forms required are checked into
images/ . On the rare occasions that
+someone changes a source document and needs to regenerate the other forms:
+
@@ -928,118 +930,49 @@ sources. The validator scripts rely on these macros as part of their sanity
checks, and you should use the macros whenever referring to an API command,
struct, token, or enum name, so the documents are semantically tagged and
more easily verifiable.
-The supported macros are defined in config/vkspec.conf (for the API spec)
-and config/manpages.conf (for the reference pages).
-Tags used in both the specification and reference pages:
-
--
-
-flink:vkBlah - the name of an API command.
-
-
--
-
-fname:vkBlah - the name of an API command.
-
-
--
-
-ftext:anything - the name of something that looks like an API command, but
- isn’t (wildcards like ftext:vkCmd*).
-
-
--
-
-slink:VkBlah - the name of an API C structure, handle, or scalar type. The
- slink:VkBlah.membername syntax is not currently supported.
-
-
--
-
-sname:VkBlah - the name of an API C structure, handle, or scalar type. The
- notation sname:VkBlah.membername is also allowed where that makes sense
- (NOTE: VkBlah.membername is not properly validated at present).
-
-
--
-
-stext:anything - the name of something that looks like an API structure,
- handle, or scalar type, but isn’t (wildcards like stext:Vk*CreateInfo).
-
-
--
-
-elink:VkBlahFlags - the name of an API C "enum" type (bitmask or
- enumeration).
-
-
--
-
-ename:VK_BLAH - the name of an API enumeration or #define token.
-
-
--
-
-etext:anything - the name of something that looks like an API "enum" type,
- enumeration or #define token, but isn’t (wildcards or partial token names,
- like etext:BC5).
-
-
--
-
-pname:param - the name of a command parameter or struct member being
- documented
-
-
--
-
-basetype:type - the name of a base scalar type, such as basetype:VkBool32.
-
-
--
-
-code:varname - the name of a shading language variable
-
-
-
-Tags used only in the specification, at present:
-
--
-
-can:, cannot:, may:, maynot:, must:, mustnot:, optional:, recommend:,
- required:, should:, and shouldnot: - used to tag places in the spec where
- these terms are used in accordance with their definitions in section 1.3
- "Terminology". They do not currently do anything but expand to their names
- (adding a space for e.g. mustnot: → must not), but may be used to
- generate an index or some visual indicator in the future.
-
-
-
-The [efs]link: macros are used for validation, and are also expanded into
-xref links to the correspondingly named anchor.
-The [efsp]name: macros are used for validation, but are not expanded into
-links.
-The [efs]text: macros are not used for validation, and are not expanded into
-links.
+The supported macros are defined in config/vkspec.conf (for the API spec)
+and config/manpages.conf (for the reference pages).
+The tags used are described in the style guide (styleguide.txt).
We will eventually tool up the spec and ref pages to the point that anywhere
-there’s a type or token referred to, you could click/hover on it in the HTML
-view and be taken to the definition of that type/token. That will take some
-more plumbing work to tag the stuff in the autogenerated include files, and
-do something sensible in the spec (e.g. resolve links to internal
-references).
-In that light, the [fs]name: vs. [fs]link: distinction seems mostly
-unneeded. Probably the only time we would not want a tag to be a link to its
-definition is when tagging a function name inside its own ref page. So once
-the plumbing is done, most of the [fs]name: tags can turn into [fs]link:
-tags.
-The ename: vs. elink: distinction is different since they’re referring to
-different namespaces - individual enumerant names vs. "enum" type names -
-rather than different ways of presenting the same command or struct name as
-for the other tags.
+there’s a type or token referred to, clicking on (or perhaps hovering over)
+it in the HTML view and be taken to the definition of that type/token. That
+will take some more plumbing work to tag the stuff in the autogenerated
+include files, and do something sensible in the spec (e.g. resolve links to
+internal references).
Most of these macros deeply need more intuitive names.
+
Reference Pages
+
+
Prior to the 1.0.20 update of the API spec, the reference pages in man/
+were handwritten, incomplete, and often way out of date with respect to the
+spec.
+
Our initial effort to address this was to tag the API spec to help identify
+boundaries of language talking about different commands, structures,
+enumerants, and other types, then use a set of Python scripts to
+automatically extract that language into the corresponding ref page. Pages
+without corresponding content in the API spec are generated automatically,
+when possible.
+
This has generated a semantically complete set of ref pages. Although they
+are still far from ideal, they now fully document the API, and will stay in
+sync with it. A significant drawback of this approach is that the only place
+ref pages for extension interfaces can be generated is inside the
+corresponding extension branches.
+
If for some reason you want to regenerate the ref pages from scratch
+yourself, you can do so by
+
+
+
$ rm man/apispec.txt
+$ make apispec.txt
+
+
The genRef.py script will generate many warnings, but most are just
+reminders that some pages are automatically generated. If everything is
+working correctly, all the man/*.txt files will be regenerated, but their
+contents will not change.
+
+
+
Our stylesheets
@@ -1051,13 +984,13 @@ for the other tags.
This branch introduces a Vulkan-specific XHTML CSS stylesheet
-in config/vkspec-xhtml.css. Mostly it just clones the default
+in config/vkspec-xhtml.css . Mostly it just clones the default
Asciidoc stylesheet, but adds some new features:
Marking Changes
There is the start of support for marking added, removed, and changed text
in the spec body. Currently this is supported only in the XHTML targets
-(xhtml and chunked), and only for paragraphs and spans of words.
+(
xhtml and
chunked), and
only for paragraphs and spans of words.
Added, removed, and changed material is marked with the asciidoc roles
named added, removed, and changed respectively. They can be used to
mark an entire paragraph, as follows:
@@ -1079,7 +1012,7 @@ text.
Marking Normative Language
There is support for marking normative language in the document. Currently
-this is supported only in the XHTML targets (xhtml and chunked).
+this is supported
only in the XHTML targets (
xhtml and
chunked).
Normative language is marked with the asciidoc role named normative.
It can be used to mark entire paragraphs or spans of words, in the
same fashion as change markings (described above). In addition, the
@@ -1107,10 +1040,10 @@ for real-time rendering of equations) and to dblatex for PDF output.
-
-The special characters < > & can currently be used only in
+The special characters < , > , and & can currently be used only in
[latexmath] block macros, not in latexmath:[] inline macros.
- Instead use \lt for < and \gt for >. & is an alignment construct for
- multiline equations, and should only appear in block macros anyway.
+ Instead use \lt for < and \gt for >. & is an alignment construct
+ for multiline equations, and should only appear in block macros anyway.
-
@@ -1145,7 +1078,7 @@ Arbitrary LaTeX constructs cannot be used with MathJax. It is an equation
following syntax. In general the anchor should immediately precede the
chapter or section title and should use the form
[[chapter-section-label]]. For example,
-For example, in chapter synchronization.txt:
+For example, in chapter synchronization.txt:
Synchronization Primitives
Cross-references to those anchors can then be generated with, for example,
@@ -1154,9 +1087,10 @@ of fences, semaphores, and events.
You can also add anchors on arbitrary paragraphs, using a similar naming
scheme.
Anything whose definition comes from one of the autogenerated API include
-files ({protos,flags,enums,structs}/*.txt) has a corresponding anchor whose
-name is the name of the function, struct, etc. being defined. Therefore you
-can say something like:
+files (.txt files in the directories basetypes, enums, flags,
+funcpointers, handles, protos, and structs) has a corresponding
+anchor whose name is the name of the function, struct, etc. being defined.
+Therefore you can say something like:
Fences are used with the +++<<vkQueueSubmit>>+++ command...
@@ -1172,10 +1106,10 @@ describes specific considerations for Windows environments using Cygin under
Cygwin Dependencies
General Dependencies
-
These are versions of required tools in Jon’s development environment
-(Debian 8, shown as Debian package names). Earlier versions may work but
-unless they are verified by someone else, there’s no way to know that. Later
-versions should work.
+
These are versions of required tools in one of the editors' development
+environment (Debian 8, shown as Debian package names). Earlier versions
+may work but unless they are verified by someone else, there’s no way to
+know that. Later versions should work.
-
@@ -1194,15 +1128,11 @@ Python 3 (python, version: 3.4.2)
-
-Python LXML library (python-lxml, version: 3.4.0-1)
-
-
--
-
Git command-line client (git, version: 2.1.4)
Only needed if regenerating specversion.txt. Any version supporting the
- operations git symbolic-ref --short HEAD and git log -1
- --format="%H" should work).
+ operations
+ — git symbolic-ref --short HEAD and
+ — git log -1 --format="%H" should work).
-
@@ -1292,6 +1222,11 @@ Devel/git (2.5.1-1) - Needed for updating specversion.txt