Don't require the JIT stencils sources when the SRPM is built on other arch

When the SRPM is built in Koji on non-JIT architecture (such as ppc64le
or s390x), the jit_build_stencils bcond is set to false.

When we don't have the JIT stencils sources yet and we do a scratch
build to generate them,
we want the SRPM creation to succeed, regardless of architecture.

This way, the sources are only defined when they are required or when
they exist.

An alternative would be to set jit_build_stencils to true/false
in an arch-independent way, and later always check for:

%{with jit} && %{with jit_build_stencils}

But I think that might be confusing.
This commit is contained in:
Miro Hrončok 2026-01-26 11:14:03 +01:00 committed by Karolina Surma
commit 6e767cf9f4

View file

@ -362,7 +362,7 @@ Source11: idle3.appdata.xml
Source30: download-jit-stencils-from-koji.sh
# This %%if-hack makes it easier to do step 1. from the above.
# Use `fedpkg sources --force` to get the conditionally defined sources from the lookaside cache.
%if %{without jit_build_stencils} || %{exists:%{_sourcedir}/Python-%{upstream_version}-x86_64-optimized-jit_stencils.h}
%if (%{with jit} && %{without jit_build_stencils}) || %{exists:%{_sourcedir}/Python-%{upstream_version}-x86_64-optimized-jit_stencils.h}
Source31: Python-%{upstream_version}-aarch64-debug-jit_stencils.h
Source32: Python-%{upstream_version}-aarch64-optimized-jit_stencils.h
Source33: Python-%{upstream_version}-x86_64-debug-jit_stencils.h