Mirrors `with_hardware` in behaviour but the implementation differs to
ensure that zink is only build when vulkan hardware drivers are built.
Without this change packaging with `with_vulkan_hw` fails due to extra
files since mesa still builds the vulkan drivers.
Fixes a typo in `%global with_nvk %{with vulkan_hw}`(sic).
There are basically no situations where we want NVK running on Turing
and Ampere without GSP firmware, so we override the upstream default of
not enabling GSP with a modprobe config file until upstream enables it
by default.
While it is possible that we may eventually want to enable this for
RHEL, in its current form it is pulling in OpenCL dependencies (e.g.
libclc, SPIRV) and uses Fedora rust-packaging and crates. Because it
does not use the usual %cargo_* macros, it is not clear how to go about
vendoring the rust dependencies for ELN and RHEL builds.
LTO was disabled 3 years ago because it was causing issues with certain
applications and games:
https://bugzilla.redhat.com/show_bug.cgi?id=1862771
Since then, support for LTO has improved upstream. Re-enable it.
With new nouveau driver coming with Linux 6.7, NVK will be able to
be used for Turing+ GPUs (GTX 16/RTX 20+), and it will be used by
default for Ada Lovelace+ GPUs (RTX 40+).
Prior to GCC14, the `__arm_streaming` macro was not spelled as an attribute
using the CXX11 syntax (e.g: [[arm::streaming]]) and so clang expanded that
macro macro.
But since GCC14, it's spelled as `[[arm::streaming]]` which makes clang to
try expanding the attribute again and generating an invalid preprocessing
token due the nested macro usage:
/usr/include/clang/Basic/AttrTokenKinds.inc:9:1: error: pasting "kw_" and "[" does not give a valid preprocessing token
9 | KEYWORD_ATTRIBUTE(__arm_streaming)
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
Also fix a package build issue on s390x due the PowerVR vulkan driver
and ICD loader not being built on that arch. Only incluse those for
aarch64 and x86 where are built.
This new release contains among other things, initial support in powervr
for the upstream imagination/powervr DRM driver and kmsro handling for a
bunch of display drivers.