# # spec file for package spirv-headers # # Copyright (c) 2025 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # # The git repo is a hodgepodge. # Most recent tag is 1.5.4, but that is outdated. # CMakeLists.txt's project() line contains 1.5.5, but this is outdated too. # The SPIR-V version is 1.6.4 (include/spirv/unified1/spirv.core.grammar.json) # They add "SDK" tags that reflect the Vulkan version (1.4), # and the independently increasing toolchain release number (309). # Leap 15 and SLES 15 defaults to GCC 7, which does not have stable C++17 ABI. # See https://bugzilla.suse.com/show_bug.cgi?id=1235697 %if 0%{?suse_version} < 1600 %define gcc_version 13 %endif Name: spirv-headers Version: 1.6.4+sdk309 %define innerver 1.4.309 %define rev 09913f088a1197aba4aefd300a876b2ebbaa3391 Release: 1.1 Summary: Machine-readable files from the SPIR-V registry License: MIT Group: Development/Libraries/C and C++ URL: https://github.com/KhronosGroup/SPIRV-Headers Source: https://github.com/KhronosGroup/SPIRV-Headers/archive/refs/tags/vulkan-sdk-%innerver.0.tar.gz BuildArch: noarch BuildRequires: cmake >= 2.8 BuildRequires: fdupes BuildRequires: gcc%{?gcc_version} >= 9 BuildRequires: gcc%{?gcc_version}-c++ >= 9 BuildRequires: pkg-config %description This repository contains machine-readable files from the SPIR-V registry. This includes: * Header files for various languages. * JSON files describing the grammar for the SPIR-V core instruction set, and for the GLSL.std.450 extended instruction set. * The XML registry file. %prep %autosetup -n SPIRV-Headers-vulkan-sdk-%innerver.0 -p1 %build %cmake \ -DCMAKE_C_COMPILER="gcc%{?gcc_version:-%{gcc_version}}" \ -DCMAKE_CXX_COMPILER="g++%{?gcc_version:-%{gcc_version}}" %cmake_build %install %cmake_install %fdupes %buildroot/%_prefix %files %_includedir/spirv/ %_datadir/cmake/ %_datadir/pkgconfig/*.pc %license LICENSE %changelog * Thu Mar 13 2025 Jan Engelhardt - Update to tag SDK-1.4.309.0 (Git 00913f088) * Version bump only * Wed Mar 12 2025 Jan Engelhardt - Update to snapshot 1.6.4+sdk309 (Git 09913f088) * Add provisional key to grammar * Grammar and header changes for SPV_INTEL_2d_block_io & SPV_INTEL_subgroup_matrix_multiply_accumulate * Add SPV_NV_cooperative_vector * Updates IntegerFunctions2INTEL to remove Shader capability dependency * Add headers for SPV_NV_cluster_acceleration_structure & SPV_NV_linear_swept_spheres * Thu Mar 6 2025 Stefan Dirsch - Build with GCC 13 on Leap/SLES 15 in the hope to fix Mesa build (bsc#1238713) * Sun Dec 15 2024 Jan Engelhardt - Update to snapshot 1.6.4+sdk303 * Add SPV_EXT_optnone, SPV_EXT_arithmetic_fence, SPV_NV_cooperative_matrix2, SPV_NV_tensor_addressing - Delete 0001-Add-SPV_EXT_optnone-449.patch, 0002-Reserve-SPIR-V-enums-for-MediaTek-451.patch (unmerged) * Tue Oct 8 2024 Jan Engelhardt - Update to release 1.6.4+sdk296 based on Git tag/release "SDK-1.3.296.0" * Update headers with SPIR-V version 1.6, revision 4 * Reserve 4 memory operands bits for Arm * Add support for SPV_KHR_untyped_pointers and SPV_INTEL_subgroup_buffer_prefetch * Add Capability and Execution mode SPV_KHR_compute_shader_derivatives - Add 0001-Add-SPV_EXT_optnone-449.patch, 0002-Reserve-SPIR-V-enums-for-MediaTek-451.patch for spirv-tools * Tue Jul 23 2024 Jan Engelhardt - Updateto release SDK-1.3.290.0 * Add utility functions to strinfigy value enums * Add SPV_EXT_replicated_composites, SPV_KHR_relaxed_extended_instruction and SPV_ARM_cooperative_matrix_layouts * Add KHR suffix to OpExtInstWithForwardRefsKHR * Thu May 16 2024 Jan Engelhardt - Update to release SDK-1.3.283.0 * Update bit reservations for loop control and memory operands * Fri Apr 12 2024 Jan Engelhardt - Update to release SDK-1.3.280.0 [This is equal to 1.3.275.0-19-g8b246ff that openSUSE already has had] - Delete v275-to-8b246ff.patch (merged) * Sun Mar 10 2024 Jan Engelhardt - Add v275-to-8b246ff.patch - Update to snapshot vulkan-sdk-1.3.275.0-19-g8b246ff * Upstream tokens for SPV_INTEL_masked_gather_scatter * Publish the header for the vulkan-shader-profiler embedded reflection * Add SPV_KHR_maximal_reconvergence, SPV_KHR_float_controls2 * Support SPV_KHR_quad_control (with fixed line endings) * Add SPV_QCOM_image_processing2, SPV_NV_shader_atomic_fp16_vector, SPV_NV_raw_access_chains * Headers support for SPV_INTEL_maximum_registers extension * Fri Jan 19 2024 Jan Engelhardt - Update to release SDK-1.3.275.0 * ClspvReflection non-sematic: add NormalizedSamplerMaskPushConstant * Headers support for new FPGAMemoryAttributesINTEL * Fix SPV_KHR_workgroup_memory_explicit_layout implicit declaration * Change token IDs for global_variable_fpga_decorations and global_variable_host_access * Update SPV_INTEL_long_composites tokens * Add Type-Declaration for extended types * Headers support for FPGAClusterAttributesV2INTEL * Fri Oct 27 2023 Jan Engelhardt - Update to release SDK-1.3.268.0 * Add SPV_AMDX_shader_enqueue * Add SPV_INTEL_cache_controls extension support * Remove Kernel from ConstantSampler enum values * Remove additional version "1.0" from SecondaryViewportRelativeNV * Add headers for SPV_NV_displacement_micromap * Add LiteralFloat to operand_kinds * Tue Aug 22 2023 Jan Engelhardt - Update to release SDK-1.3.261.0 * Header files changes to support SPV_INTEL_fp_max_error spec extension * Make the generated operators for masks constexpr * Add definitions for SVP_EXT_image_raw10_raw12, SPV_KHR_cooperative_matrix * Remove capabilities on cooperative matrix enums to align with specification * Revert "Add support for fp_max_error extension" * Tue May 30 2023 Jan Engelhardt - Update to release SDK-1.3.250.0 * Add SPV_EXT_shader_tile_image. * Add back version field for new enumerants and operands, but set to None. * SPV_KHR_ray_tracing_position_fetch support. * Wed Mar 29 2023 Jan Engelhardt - Update to release 1.6.1/SDK-1.3.243.0 * Added SPRIV_INTEL_argument_interfaces, RegisterMapInterfaceINTEL, SPV_QCOM_image_processing * Added support for SPV_INTEL_fpga_latency_control extension * Headers support for SPV_INTEL_bfloat16_conversion * Sun Jan 29 2023 Jan Engelhardt - Update to release 1.6.1/SDK-1.3.239.0 * Add support for StreamingInterfaceINTEL in headers * C++ headers: Define & and ~ bitwise operators for mask enums * Add operator^ * Make operands to Kernel added in v5 optional * Wed Jan 18 2023 Jan Engelhardt - Update to snapshot 1.6.1+sdk236+git7.d13b522 * Update ClspvReflection non-semantic instruction set * Fri Dec 23 2022 Jan Engelhardt - Update to release 1.6.1+sdk236 (1d31a10) * Add SPV_INTEL_fpga_invocation_pipelining_attributes, SPV_INTEL_fpga_dsp_control, SPV_INTEL_runtime_aligned * Add headers for SPV_NV_shader_invocation_reorder * Mon Oct 24 2022 Jan Engelhardt - Update to 1.6.1+sdk231 (85a1ed2) * Implement headers definitions for SPV_EXT_mesh_shader * Add definitions for SPV_ARM_core_builtins * Something with VK_EXT_opacity_micromap * Add support for texel buffers to clspv non-semantic instruction set * Mon Aug 22 2022 Jan Engelhardt - Update to 1.6.1+sdk224+git2.0bcc624 * Updated clspv reflection non-semantic instruction set * Resolved missing update of spirv.bf * Wed Jun 15 2022 Jan Engelhardt - Update to 1.6.1+sdk216 (b2a156e) * Add a SourceLanguage for SYCL * Add NamedBarrierCountINTEL execution mode * Add SPV_KHR_subgroup_rotate, SPV_KHR_ray_cull_mask, SPV_AMD_shader_early_and_late_fragment_tests * Mon Apr 18 2022 Jan Engelhardt - Update to 1.6.1+sdk211 (4995a2f) * Implement SPV_KHR_uniform_group_instructions extension * Update SPIR-V headers for SPV_INTEL_split_barrier * Implement SPV_INTEL_memory_access_aliasing extension * Wed Jan 26 2022 Jan Engelhardt - Update to snapshot 1.6.g6 (b42ba6d / sdk204) * Add definitions to implement the SPIR-V 1.6 spec. * Add ShaderWriter as SPIR-V generation tool. * Thu Nov 11 2021 Jan Engelhardt - Update to snapshot 1.5.5.g9 (814e728b / sdk198) * Add spirv-headers pkgconfig file * Implement header definitions for SPV_NV_bindless_texture * Add SpecConstantSubgroupMaxSize to the clspv reflection non-semantic instruction set * Rename ConstFunctionPointerINTEL to ConstantFunctionPointerINTEL * Mon Sep 6 2021 Jan Engelhardt - Update to snapshot 1.5.4.g108 (449bc986) * Add VectorComputeINTEL as enabling capability for Private StorageClass * Add header changes for SPV_EXT_shader_atomic_float16_add * Support SPV_KHR_integer_dot_product * Add support for SPV_KHR_bit_instructions * Implement SPV_INTEL_optnone extension * Add support for SPV_NV_ray_tracing_motion_blur * Wed May 5 2021 Jan Engelhardt - Update to snapshot 1.5.4.g57 (dafead1765) * Support SPV_KHR_expect_assume, SPV_KHR_linkonce_odr * Add generator ID for MSP shader compiler * Mon Mar 1 2021 Jan Engelhardt - Update to 1.5.4.g42 (a3fdfe8146) * Add SPV_KHR_workgroup_memory_explicit_layout * Add None as a possible value for DebugInfoFlags * Add header changes for SPV_EXT_shader_atomic_float_min_max - Remove 0001-Add-SPV_KHR_workgroup_memory_explicit_layout.patch * Wed Feb 10 2021 Jan Engelhardt - Add 0001-Add-SPV_KHR_workgroup_memory_explicit_layout.patch * Wed Nov 25 2020 Jan Engelhardt - Update to 1.5.4.g8 / 1.5.4.raytracing (104ecc35) * Added SPV_KHR_fragment_shading_rate * Add SPV_EXT_shader_image_int64 * Raytracing and Rayquery updates for final * Mon Oct 5 2020 Jan Engelhardt - Update to 1.5.3.g22 / 1.5.3.reservations1 (3fdabd0d) * Publish the headers for the clspv embedded reflection non-semantic extended instruction set. * Update the registry in spir-v.xml to modernize and split out opcodes. * Wed Aug 12 2020 Jan Engelhardt - Update to snapshot 1.5.3.g18 (979924c8bc) * Support for SPV_EXT_shader_atomic_float * Fri May 29 2020 Jan Engelhardt - Update to release 1.5.3 * Update headers to SPIR-V 1.5 Revision 3 * Wed Apr 8 2020 Jan Engelhardt - Update to snapshot 1.5.1.c+git24 (f8bf11a) * Add grammars, C header, and header generator for vendor and KHR extended instruction sets. * Update headers for SPV_KHR_ray_tracing. * Added ray flags, primitive culling flags, queries. * Add shadercalls scope. * Sat Oct 26 2019 Jan Engelhardt - Update to release 1.5.1.corrected * Add SPV_KHR_physical_storage_buffer. * Sat Sep 28 2019 Jan Engelhardt - Update to release 1.5.1 * No change from last snapshot, just a version bump. * Wed Aug 21 2019 Jan Engelhardt - Update to new snapshot 1.4.1.g36 * Add INTEL_shader_integer_functions2, SPV_EXT_fragment_shader_interlock, SPV_EXT_demote_to_helper_invocation. * Add support for SPV_NV_sm_shader_builtins. * Add Volatile to Memory Semantics, for SPV_KHR_vulkan_memory_model. * Add SPV_KHR_shader_clock to spirv-headers. * Tue Jun 4 2019 Jan Engelhardt - Update to new snapshot 1.4.1.g17 * Add INTEL_shader_integer_functions2 and SPV_EXT_fragment_shader_interlock. * Enable Groups capability by the extension SPV_AMD_shader_ballot. * Add support for SPV_NV_sm_shader_builtins. * Sat Mar 16 2019 Jan Engelhardt - Update to new upstream release 1.3.7 * Synchronize to revision 7 of the header specification from Khronos. * Mon Jan 7 2019 Jan Engelhardt - Update to new snapshot 1.3.g60 * Support for SPV_EXT_physical_storage_buffer * Fri Dec 14 2018 Jan Engelhardt - Update to new snapshot 1.3.g50 * Reserve tokens for float controls and no integer wrapping * Add JSON support for SPV_EXT_fragment_invocation_density * Sat Nov 10 2018 Jan Engelhardt - Update to new snapshot 1.3.g44 * Add enumerants for six Nvidia extensions * Add support for nv-raytracing * Fri Aug 24 2018 jengelh@inai.de - Update to new snapshot 1.3.g34 * Add missing extension/capability requirements for some symbols * Add SPV_NV_shader_subgroup_partitioned to SPIR-V JSON. * Add missing 'extensions' for OpGroupNonUniformPartitionNV. * Add tokens for SPV_EXT_descriptor_indexing. * SPV_GOOGLE_hlsl_functionality1 includes all of SPV_GOOGLE_decorate_string. * Clay Shader Compiler * Add enumerants for SPV_KHR_8bit_storage. * Thu Mar 8 2018 jengelh@inai.de - Update to new snapshot 1.3.g0 * Allow SubgroupSize and SubgroupLocalInvocationId with SubgroupBallotKHR * Add headers for the 1.2 unified (1.0, 1.1, and 1.2) specification. * 464d17b Refresh 1.3 headers from spec repo * Wed Feb 7 2018 jengelh@inai.de - Update to new snapshot 1.2.g22 * Add headers for the 1.2 unified (1.0, 1.1, and 1.2) specification. * Fri Nov 17 2017 jengelh@inai.de - Update to new snapshot 1.2.g13 * Add new Intel token reservations, new tokens for SPV_AMD_shader_fragment_mask, and new tokens for SPV_AMD_shader_fragment_mask. * Update all headers for SPV_EXT_shader_stencil_export. * Add SPV_EXT_shader_viewport_index_layer. * Mon Aug 7 2017 jengelh@inai.de - Update to new snapshot 1.1.g46 * Reserve number 16 for the Mesa-IR/SPIR-V Translator. * Tue Jul 18 2017 jengelh@inai.de - Update to new snapshot 1.1.g44 * reserve SPIR-V enum block for upcoming Intel extension * Add version 1.2 headers, update 1.1 headers to revision 7, update 1.0 headers to revision 11. * Synchronize OpenCL extended instruction set header with spec, and add missing capability use to the JSON grammar. * Update JSON grammar files for 16-bit storage. * Mon Feb 20 2017 jengelh@inai.de - Update to new snapshot 1.1.g31 * New revisions of SPIR-V 1.0 and 1.1, and both extended instruction sets. * Thu Feb 2 2017 jengelh@inai.de - Update to new snapshot 1.1.g29 * Add "Shaderc over Glslang" as a front end. * Update to Rev. 8 of 1.0 and Rev. 4 of 1.1. Includes enums for SPV_KHR_shader_draw_parameters. * Add SPV_KHR_shader_ballot enumerants. * Sun Jun 12 2016 jengelh@inai.de - Initial package (version 1.1.g15) for build.opensuse.org