forked from pool/python-PyInstaller
* 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
114 lines
3.8 KiB
RPMSpec
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
|