14
0
Files
python-PyInstaller/python-PyInstaller.spec
Dirk Mueller 73daf3e27c - update to 6.13.0:
* Extend analysis code so that when extension module is
    encountered, it checks for the presence of an adjacent .py or
    .pyi file, and if present, attempt to perform import analysis
    on such accompanying source/interface file. (:issue:`9084`)
  * Fix detection of setuptools-vendored modules (i.e., not
    packages) in the
    PyInstaller.utils.hooks.setuptools.SetuptoolsInfo hook
    utility class; for example, the
    setuptools/_vendor/typing_extensions.py module.
    (:issue:`9102`)
  * Add hook for PyQt6.QtStateMachine that was introduced in
    PyQt6 v6.8.1. (:issue:`9019`)
  * Fix ModuleNotFoundError for scipy when provided by Debian's
    python3-scipy package. (:issue:`9069`)
  * Update hook for PyGObject (gi) and associated helper code to
    support changes made in PyGObject v3.52 (switch from
    girepository-1.0 to girepository-2.0). (:issue:`9055`)
  * On POSIX systems other than macOS, use POSIX semaphore API
    instead of SysV semaphore API to synchronize onefile parent
    and child process. This restores the ability to compile
    bootloader under Termux, where sys/sem.h (and the SysV
    semaphore API) is unavailable due to deliberate lack of
    support for it in the underlying Android base.
    (:issue:`9089`)
  * Extend the :ref:`module_collection_mode <package collection
    mode>` setting from :issue:`6945` to also apply to modules
    collected into base_library.zip archive. Implement discovery
    of source .py files for modules in base_library.zip at run-
    time. This allows collection and discovery of source .py

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-PyInstaller?expand=0&rev=30
2025-04-28 16:41:34 +00:00

114 lines
3.8 KiB
RPMSpec

#
# spec file for package python-PyInstaller
#
# Copyright (c) 2025 SUSE LLC
#
# 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/
#
%{?sle15_python_module_pythons}
%bcond_without test
%define modname PyInstaller
Name: python-PyInstaller
Version: 6.13.0
Release: 0
Summary: Bundle a Python application and all its dependencies into a single package
License: GPL-2.0-only
URL: https://www.pyinstaller.org
Source: https://github.com/pyinstaller/pyinstaller/archive/refs/tags/v%{version}.tar.gz#/pyinstaller-%{version}.tar.gz
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: pkgconfig
BuildRequires: python-rpm-macros
BuildRequires: pkgconfig(zlib)
Requires: python-altgraph
Requires: python-packaging >= 22.0
Requires: python-pyinstaller-hooks-contrib >= 2024.0
Requires: python-setuptools >= 42.0.0
Requires(post): update-alternatives
Requires(postun): update-alternatives
Recommends: upx
%if %{with test}
BuildRequires: %{python_module altgraph}
BuildRequires: %{python_module packaging >= 22.0}
BuildRequires: %{python_module psutil}
BuildRequires: %{python_module pyinstaller-hooks-contrib >= 2024.0}
BuildRequires: %{python_module pytest-xdist}
BuildRequires: %{python_module pytest}
BuildRequires: upx
%endif
%python_subpackages
%description
PyInstaller bundles a Python application and all its dependencies into a single
package. The user can run the packaged app without installing a Python
interpreter or any modules.
%prep
%setup -q -n pyinstaller-%{version}
%autopatch -p1
chmod a-x PyInstaller/utils/hooks/__init__.py
# Force build of bootloader
rm -r PyInstaller/bootloader
%build
# -Wno-stringop-overflow only needed on ppc64
export CFLAGS="%{optflags} -Wno-stringop-truncation -Wno-unused-variable -Wno-unused-function -Wno-unused-but-set-variable -Wno-stringop-overflow"
%python_build
%install
%python_install
%{python_expand # Relocate to sitearch
if [ "%{$python_sitearch}" != "%{$python_sitelib}" ]; then
mkdir -p %{buildroot}%{$python_sitearch}
mv %{buildroot}%{$python_sitelib}/* %{buildroot}%{$python_sitearch}
fi
%fdupes %{buildroot}%{$python_sitearch}
}
%python_clone -a %{buildroot}%{_bindir}/pyinstaller
%python_clone -a %{buildroot}%{_bindir}/pyi-archive_viewer
%python_clone -a %{buildroot}%{_bindir}/pyi-bindepend
%python_clone -a %{buildroot}%{_bindir}/pyi-grab_version
%python_clone -a %{buildroot}%{_bindir}/pyi-makespec
%python_clone -a %{buildroot}%{_bindir}/pyi-set_version
%if %{with test}
%check
export LANG=en_US.UTF-8
%pytest_arch -n auto tests/unit
%endif
%post
%{python_install_alternative pyinstaller pyi-archive_viewer pyi-bindepend pyi-grab_version pyi-makespec pyi-set_version}
%postun
%python_uninstall_alternative pyinstaller
%files %{python_files}
%doc README.rst doc/CHANGES.rst
%license COPYING.txt
%python_alternative %{_bindir}/pyinstaller
%python_alternative %{_bindir}/pyi-archive_viewer
%python_alternative %{_bindir}/pyi-bindepend
%python_alternative %{_bindir}/pyi-grab_version
%python_alternative %{_bindir}/pyi-makespec
%python_alternative %{_bindir}/pyi-set_version
%{python_sitearch}/PyInstaller
%{python_sitearch}/pyinstaller-%{version}*info
%changelog