File spirv-llvm-translator.spec of Package spirv-llvm-translator-19.1.2-30.3
#
# spec file for package spirv-llvm-translator
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2023, Martin Hauke <mardnh@gmx.de>
#
# 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/
#
%define sover 19
Name: spirv-llvm-translator
Version: 19.1.2
Release: 30.3
Summary: LLVM/SPIR-V Bi-Directional Translator library
License: BSD-3-Clause
Group: System/Libraries
URL: https://github.com/KhronosGroup/SPIRV-LLVM-Translator
Source: https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/refs/tags/v%{version}.tar.gz#/SPIRV-LLVM-Translator-%{version}.tar.gz
Source101: %{name}.rpmlintrc
BuildRequires: cmake >= 3.3
BuildRequires: gcc-c++
BuildRequires: llvm%{sover}-devel
BuildRequires: pkgconfig
BuildRequires: spirv-headers
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(zlib)
%description
The LLVM/SPIR-V Bi-Directional Translator, a library and tool for translation
between LLVM IR and SPIR-V.
%package -n libLLVMSPIRVLib%{sover}
Summary: LLVM/SPIR-V Bi-Directional Translator library
Group: System/Libraries
%description -n libLLVMSPIRVLib%{sover}
The LLVM/SPIR-V Bi-Directional Translator, a library and tool for translation
between LLVM IR and SPIR-V.
%package -n libLLVMSPIRVLib-devel
Summary: Development files for LLVM/SPIR-V Bi-Directional Translator library
Group: Development/Languages/C and C++
Requires: libLLVMSPIRVLib%{sover} = %{version}
%description -n libLLVMSPIRVLib-devel
The LLVM/SPIR-V Bi-Directional Translator, a library and tool for translation
between LLVM IR and SPIR-V.
This package provides headers and libraries required for building software using
the LLVM/SPIR-V Bi-Directional Translator library.
%prep
%setup -q -n SPIRV-LLVM-Translator-%{version}
%build
%cmake \
-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=%{_prefix} \
-DLLVM_SPIRV_BUILD_EXTERNAL=YES
%cmake_build
%install
%cmake_install
%post -n libLLVMSPIRVLib%{sover} -p /sbin/ldconfig
%postun -n libLLVMSPIRVLib%{sover} -p /sbin/ldconfig
%files -n libLLVMSPIRVLib%{sover}
%license LICENSE.TXT
%doc README.md
%{_libdir}/libLLVMSPIRVLib.so.%{sover}*
%files -n libLLVMSPIRVLib-devel
%{_bindir}/llvm-spirv
%{_includedir}/LLVMSPIRVLib
%{_libdir}/libLLVMSPIRVLib.so
%{_libdir}/pkgconfig/LLVMSPIRVLib.pc
%changelog
* Thu Dec 5 2024 Aaron Puchert <aaronpuchert@alice-dsl.net>
- Update to version 19.1.2.
* Add fast math flag translation for OpenCL standard library.
* Ensure that PHI node has an incoming value per each predecessor
instance, even if the input SPIR-V module is invalid as
reported by `spirv-val`.
* SPIRVReader: Support OpConstantComposite for cooperative matrix.
* SPIRVReader: Add OpSizeOf support (SPIR-V 1.1).
* Generate load and store for OpCopyLogical.
* SPIRVReader: Add AlignmentId support (SPIR-V 1.2).
* Thu Nov 14 2024 Aaron Puchert <aaronpuchert@alice-dsl.net>
- Update to version 19.1.1.
* Fix for duplicate -spirv-ext registration.
* Add reverse translation for OpDecorateString and
OpMemberDecorateString.
* Ignore UserSemantic decorations on BuiltIn variables.
* Introduce CodeSectionINTEL storage class.
* Fix SPIRVCopyMemory::validate().
* Allow short16 for ushort16 intel_sub_group_block_read/write.
* SPIRVReader: Add OpCopyMemory support.
* Sat Sep 21 2024 Aaron Puchert <aaronpuchert@alice-dsl.net>
- Update to version 19.1.0.
* Compatibility with LLVM 19, especially changes to debug info.
* Support for new extensions:
- SPV_INTEL_maximum_registers
- SPV_INTEL_subgroup_requirements
- SPV_INTEL_task_sequence
* Sun Sep 1 2024 Aaron Puchert <aaronpuchert@alice-dsl.net>
- Update to version 18.1.4.
* Fix element type when reading OpPtrDiff (SPIR-V -> LLVM).
* Transform floating-point atomic_compare_exchange into integer
operation (OpenCL -> SPIR-V).
* Sat Aug 3 2024 Aaron Puchert <aaronpuchert@alice-dsl.net>
- Update to version 18.1.3.
* Support for SPIR-V 1.6.
* Wed Jul 3 2024 Aaron Puchert <aaronpuchert@alice-dsl.net>
- Update to version 18.1.2.
* Various bug fixes.
- Drop Support-SPV_INTEL_maximum_registers-extension.patch since
the issue was addressed upstream.
* Thu Mar 14 2024 Stefan Dirsch <sndirsch@suse.com>
- fixed rpmlintrc rule
* Thu Mar 7 2024 Aaron Puchert <aaronpuchert@alice-dsl.net>
- Update to version 18.1.0.
* Compatibility with LLVM 18.
- Add rpmlintrc: following the LLVM's new versioning scheme, this
package not only has versions X.1.Y now, but the SO name is X.1.
However, the minor version is always going to be 1, and there is
no need to distinguish between minor versions, so we don't add it
to the package name.
- Drop ca3ae0cc.patch that landed upstream.
- Add Support-SPV_INTEL_maximum_registers-extension.patch to revert
change temporarily because the corresponding change in spirv-
headers is not released yet.
* Tue Jan 23 2024 Dominique Leuenberger <dimstar@opensuse.org>
- Add ca3ae0cc.patch: Update LongConstantCompositeINTEL to
LongCompositesINTEL capability after Headers change. Patch only
applied when building against spirv-headers >= 1.6.1+sdk275.
* Thu Sep 28 2023 Stefan Dirsch <sndirsch@suse.com>
- back again to version 17.0.0, since meanwhile llvm17 is available ...
* Mon Sep 25 2023 Stefan Dirsch <sndirsch@suse.com>
- back to version 16.0.0, since there is no llvm17 available yet ...
* Tue Sep 19 2023 Aaron Puchert <aaronpuchert@alice-dsl.net>
- Update to version 17.0.0.
* Compatibility with LLVM 17.
- Drop Revert-Add-support-for-LLVM_LINK_LLVM_DYLIB.patch: the
problematic change was reverted upstream.
- Drop Revert-added-translator-support-for-SPIRV_INTEL.patch: the
corresponding change to spirv-headers has landed in the meantime.
* Wed Mar 22 2023 Aaron Puchert <aaronpuchert@alice-dsl.net>
- Update to version 16.0.0.
* Compatibility with LLVM 16.
- Add Revert-Add-support-for-LLVM_LINK_LLVM_DYLIB.patch: while
gh#KhronosGroup/SPIRV-LLVM-Translator#1543 claims to add support
for LLVM_LINK_LLVM_DYLIB, it actually seems to break it.
- Add Revert-added-translator-support-for-SPIRV_INTEL.patch: while
gh#KhronosGroup/SPIRV-LLVM-Translator#1632 has made it into this
release, there is no release of spirv-headers containing the
pendant gh#KhronosGroup/SPIRV-Headers#291 yet.
* Sun Jan 15 2023 Martin Hauke <mardnh@gmx.de>
- Initial package for spirv-llvm-translator, version 15.0.0