File spirv-headers.spec of Package spirv-headers

Name:           spirv-headers
Version:        1.4.335.0
Release:        %mkrel 1
Summary:        SPIR-V Headers from Khronos
Group:          Development/Libraries
License:        Apache-2.0
URL:            https://github.com/KhronosGroup/SPIRV-Headers
Source0:        spirv-headers-vulkan-sdk-%{version}.tar.gz

BuildRequires:  cmake
BuildRequires:  ninja
BuildRequires:  gcc
BuildRequires:  gcc-c++

%description
SPIR-V Headers provide the header files required to build SPIR-V Tools,
SPIRV-LLVM-Translator, Mesa, and other projects that consume the SPIR-V
specification.

%prep
%setup -q -n SPIRV-Headers-vulkan-sdk-%{version}

%build
%cmake \
  -DCMAKE_BUILD_TYPE=Release \
  -DCMAKE_INSTALL_PREFIX=%{_prefix} \
  -DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \
  -DCMAKE_INSTALL_LIBDIR=%{_libdir} \
  -DCMAKE_INSTALL_DATADIR=%{_libdir} \
  -DCMAKE_INSTALL_DATAROOTDIR=%{_libdir} \
  -DCMAKE_INSTALL_FULL_DATADIR=%{_libdir} \
  -DCMAKE_INSTALL_FULL_DATAROOTDIR=%{_libdir} \
  -G Ninja

%cmake_build

%install
%cmake_install

# Provide top-level spirv.hpp for tools expecting it
mkdir -p %{buildroot}%{_includedir}/spirv
ln -s ../unified1/spirv.hpp \
      %{buildroot}%{_includedir}/spirv/spirv.hpp

%files
%doc README.md
%license LICENSE
%{_includedir}/spirv/

%package devel
Summary: Development files for SPIR-V Headers
Group: Development/Libraries

%description devel
SPIR-V header files required to build SPIR-V Tools, SPIRV-LLVM-Translator,
and Mesa. Provides include files, CMake config, and pkgconfig metadata.

%files devel
%{_libdir}/cmake/SPIRV-Headers/
%{_libdir}/pkgconfig/SPIRV-Headers.pc

%changelog
* Thu Dec 11 2025 Henrik <henrik@example.com> - 1.4.335.0-1
- Corrected installation paths for CMake and pkgconfig metadata
- Added top-level spirv.hpp compatibility symlink
- Ensures SPIRV-LLVM-Translator and Mesa detect spirv-headers automatically
openSUSE Build Service is sponsored by