forked from pool/pyenv
Matej Cepl
7f887cc3d2
- Update spec file - Use pkgconfig instead of package name - Require pkgconfig - Update to 2.4.0 - Add CPython 3.13.0a4 by @saaketp in #2903 - Handle the case where pyenv-commands --sh returns nothing by @aphedges in #2908 - Document default build configuration customizations by @native-api in #2911 - Use Homebrew in Linux if Pyenv is installled with Homebrew by @native-api in #2906 - Add miniforge and mambaforge 22.11.1-3, 22.11.1-4, 23.1.0-0 to 23.11.0-0 by @aphedges in #2909 - Add miniconda3-24.1.2 by @binbjz in #2915 - Minor grammar fix in libffi backport patch in 2.5.x by @cuinix in #2922 - Add CPython 3.13.0a5 by @edgarrmondragon in #2924 - Add CPython 3.8.19 and 3.9.19 by @edgarrmondragon in #2929 - Add GraalPy 24.0.0 by @msimacek in #2928 - Add CPython 3.10.14 by @edgarrmondragon in #2930 - Add Jython 2.7.3 by @cesarcoatl in #2936 - Add CPython 3.11.9 by @edgarrmondragon in #2938 - Add anaconda 2024.02 by @native-api in #2939 Full Changelog: https://github.com/pyenv/pyenv/compare/v2.3.36...v2.4.0 OBS-URL: https://build.opensuse.org/request/show/1168630 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/pyenv?expand=0&rev=81
181 lines
5.1 KiB
RPMSpec
181 lines
5.1 KiB
RPMSpec
#
|
|
# spec file for package pyenv
|
|
#
|
|
# Copyright (c) 2024 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/
|
|
#
|
|
|
|
|
|
%define pyenv_dir %{_libexecdir}/pyenv
|
|
#
|
|
Name: pyenv
|
|
Version: 2.4.0
|
|
Release: 0
|
|
Summary: Python Version Management
|
|
License: MIT
|
|
Group: Development/Languages/Python
|
|
URL: https://github.com/pyenv/pyenv
|
|
Source: https://github.com/pyenv/pyenv/archive/refs/tags/v%{version}.tar.gz#/pyenv-%{version}.tar.gz
|
|
#
|
|
BuildRequires: bash-completion
|
|
BuildRequires: fdupes
|
|
BuildRequires: fish
|
|
BuildRequires: gcc
|
|
BuildRequires: make
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: zsh
|
|
#
|
|
Requires: pkgconfig
|
|
#
|
|
# Additional soft build requirements.
|
|
# Use list from https://github.com/pyenv/pyenv/wiki#suggested-build-environment
|
|
#
|
|
# Once pyenv is installed and user requests a new Python version,
|
|
# we need to make sure it will build:
|
|
Recommends: automake
|
|
Recommends: bzip2
|
|
Recommends: findutils
|
|
Recommends: gcc
|
|
#
|
|
Recommends: gdbm-devel
|
|
Recommends: gmp-devel
|
|
Recommends: openssl-devel
|
|
Recommends: patch
|
|
Recommends: readline-devel
|
|
#
|
|
Recommends: pkgconfig(bzip2)
|
|
Recommends: pkgconfig(clzma)
|
|
Recommends: pkgconfig(expat)
|
|
Recommends: pkgconfig(libffi)
|
|
Recommends: pkgconfig(liblzma)
|
|
Recommends: pkgconfig(ncurses)
|
|
Recommends: pkgconfig(sqlite3)
|
|
Recommends: pkgconfig(tcl)
|
|
Recommends: pkgconfig(tk)
|
|
Recommends: pkgconfig(uuid)
|
|
Recommends: pkgconfig(zlib)
|
|
|
|
%description
|
|
pyenv lets the user switch between multiple versions of Python.
|
|
|
|
This project was forked from rbenv and ruby-build, and modified for Python.
|
|
|
|
%package bash-completion
|
|
Summary: Bash completion for %{name}
|
|
Group: System/Shells
|
|
Requires: %{name} = %{version}
|
|
Supplements: (pyenv and bash-completion)
|
|
BuildArch: noarch
|
|
|
|
%description bash-completion
|
|
Bash command line completion support for %{name}.
|
|
|
|
%package fish-completion
|
|
Summary: Fish completion for %{name}
|
|
Group: System/Shells
|
|
Requires: %{name} = %{version}
|
|
Supplements: (pyenv and fish)
|
|
BuildArch: noarch
|
|
|
|
%description fish-completion
|
|
Fish command line completion support for %{name}.
|
|
|
|
%package zsh-completion
|
|
Summary: Zsh completion for %{name}
|
|
Group: System/Shells
|
|
Requires: %{name} = %{version}
|
|
Supplements: (pyenv and zsh)
|
|
BuildArch: noarch
|
|
|
|
%description zsh-completion
|
|
Zsh command line completion support for %{name}.
|
|
|
|
%prep
|
|
%autosetup -p1 -n %{name}-%{version}
|
|
|
|
sed -i -e '1s,^#!%{_bindir}/env bash,#!/bin/bash,' libexec/* pyenv.d/exec/pip-rehash/* plugins/python-build/bin/*
|
|
|
|
%build
|
|
##
|
|
pushd src
|
|
%configure
|
|
%make_build
|
|
popd
|
|
|
|
%install
|
|
mkdir -p %{buildroot}%{pyenv_dir} \
|
|
%{buildroot}%{pyenv_dir}/plugins \
|
|
%{buildroot}%{pyenv_dir}/shims/ \
|
|
%{buildroot}%{pyenv_dir}/share/python-build/ \
|
|
%{buildroot}%{_sysconfdir}/pyenv.d/ \
|
|
%{buildroot}%{_bindir}
|
|
|
|
cp -R libexec %{buildroot}%{pyenv_dir}
|
|
cp -R bin %{buildroot}%{pyenv_dir}
|
|
cp -a pyenv.d %{buildroot}%{_sysconfdir}/
|
|
|
|
## Install shell completions:
|
|
install -D -m0644 completions/pyenv.bash %{buildroot}%{_datadir}/bash-completion/completions/pyenv
|
|
install -D -m0644 completions/pyenv.zsh %{buildroot}%{_sysconfdir}/zsh_completion.d/pyenv
|
|
install -D -m0644 completions/pyenv.fish %{buildroot}%{_datadir}/fish/vendor_completions.d/pyenv.fish
|
|
|
|
## Install manpage
|
|
install -D -m0644 man/man1/%{name}.1 %{buildroot}%{_mandir}/man1/%{name}.1
|
|
pushd %{buildroot}%{_mandir}/man1/
|
|
ln -s %{name}.1 python-build.1
|
|
popd
|
|
|
|
ln -s %{pyenv_dir}/bin/pyenv %{buildroot}%{_bindir}/pyenv
|
|
|
|
## python-build
|
|
pushd plugins/python-build
|
|
install -m755 bin/* %{buildroot}%{pyenv_dir}/libexec
|
|
cp -a share/python-build %{buildroot}%{pyenv_dir}/share/
|
|
popd
|
|
|
|
%fdupes %{buildroot}%{pyenv_dir}
|
|
|
|
%files
|
|
%doc CHANGELOG.md COMMANDS.md README.md
|
|
%license LICENSE
|
|
%exclude %{_sysconfdir}/pyenv.d/rehash/*/.gitignore
|
|
|
|
%config %{_sysconfdir}/pyenv.d/rehash/*.d/default.list
|
|
%config %{_sysconfdir}/pyenv.d/exec/pip-rehash.bash
|
|
%config %{_sysconfdir}/pyenv.d/rehash/*.bash
|
|
%config %{_sysconfdir}/pyenv.d/install/*.bash
|
|
|
|
%{pyenv_dir}
|
|
%dir %{_sysconfdir}/pyenv.d
|
|
%dir %{_sysconfdir}/pyenv.d/exec/
|
|
%dir %{_sysconfdir}/pyenv.d/rehash/
|
|
%dir %{_sysconfdir}/pyenv.d/rehash/*.d/
|
|
%dir %{_sysconfdir}/pyenv.d/install/
|
|
|
|
%{_sysconfdir}/pyenv.d/exec/pip-rehash
|
|
%{_bindir}/pyenv
|
|
#
|
|
%{_mandir}/man1/%{name}.1%{?ext_man}
|
|
%{_mandir}/man1/python-build.1%{?ext_man}
|
|
|
|
%files bash-completion
|
|
%{_datadir}/bash-completion/completions/pyenv
|
|
|
|
%files fish-completion
|
|
%{_datadir}/fish/vendor_completions.d/pyenv.fish
|
|
|
|
%files zsh-completion
|
|
%config %{_sysconfdir}/zsh_completion.d/pyenv
|
|
|
|
%changelog
|