-
Notifications
You must be signed in to change notification settings - Fork 20
/
Copy pathdefault-prjconf
25 lines (22 loc) · 1.58 KB
/
default-prjconf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# default-prjconf: buildset definitions for python-rpm-macros.
#
# This is usually overridden by the distribution's prjconf, landing in ~/.rpmmacros.
# This file provides the default definition from Factory (Tumbleweed) for pure rpmbuild packaging.
# Macros:
## PYTHON MACROS BEGIN
# order of %pythons is important: The last flavor overrides any operation on conflicting files and definitions during expansions,
# making it the "default" in many cases --> keep the primary python3 provider at the end.
%pythons %{?!skip_python3:%{?!skip_python310:python310} %{?!skip_python312:python312} %{?!skip_python311:python311}}
%add_python() %{expand:%%define pythons %1 %pythons}
%_without_python2 1
# This method for generating python_modules gets too deep to expand for rpm at about 5 python flavors.
# Hence, python_module_iter is replaced by python_module_lua in macros.lua.
# However, OBS cannot expand lua, but has a much higher expansion depth, so this works fine for the server side resolver.
%python_module_iter(a:) %{expand:%%define python %{-a*}} ( %python-%args ) %{expand:%%{?!python_module_iter_%1:%%{python_module_iter -a%*}}%%{?python_module_iter_%1}}
# pseudo-undefine for obs: reset for the next expansion within the next call of python_module
%python_module_iter_STOP %global python %%%%python
%python_module() %{?!python_module_lua:%{expand:%%define args %{**}} %{expand:%%{python_module_iter -a %{pythons} STOP}}}%{?python_module_lua:%python_module_lua %{**}}
# gh#openSUSE/python-rpm-macros#127 ... define our current primary Python interpreter
%primary_python python311
## PYTHON MACROS END
# :Macros