From e350503394233b1d86669bf36c03afba1e6d45dd Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Sat, 8 May 2021 08:40:54 +0000 Subject: [PATCH] import python36-3.6.8-37.module+el8.5.0+10916+41bd434d --- .gitignore | 0 .python36.metadata | 0 SOURCES/LICENSE | 254 ++++++++++++++++++++++++ SOURCES/README | 7 + SOURCES/macros.python36 | 1 + SPECS/python36.spec | 428 ++++++++++++++++++++++++++++++++++++++++ 6 files changed, 690 insertions(+) create mode 100644 .gitignore create mode 100644 .python36.metadata create mode 100644 SOURCES/LICENSE create mode 100644 SOURCES/README create mode 100644 SOURCES/macros.python36 create mode 100644 SPECS/python36.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/.python36.metadata b/.python36.metadata new file mode 100644 index 0000000..e69de29 diff --git a/SOURCES/LICENSE b/SOURCES/LICENSE new file mode 100644 index 0000000..1afbedb --- /dev/null +++ b/SOURCES/LICENSE @@ -0,0 +1,254 @@ +A. HISTORY OF THE SOFTWARE +========================== + +Python was created in the early 1990s by Guido van Rossum at Stichting +Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands +as a successor of a language called ABC. Guido remains Python's +principal author, although it includes many contributions from others. + +In 1995, Guido continued his work on Python at the Corporation for +National Research Initiatives (CNRI, see http://www.cnri.reston.va.us) +in Reston, Virginia where he released several versions of the +software. + +In May 2000, Guido and the Python core development team moved to +BeOpen.com to form the BeOpen PythonLabs team. In October of the same +year, the PythonLabs team moved to Digital Creations, which became +Zope Corporation. In 2001, the Python Software Foundation (PSF, see +https://www.python.org/psf/) was formed, a non-profit organization +created specifically to own Python-related Intellectual Property. +Zope Corporation was a sponsoring member of the PSF. + +All Python releases are Open Source (see http://www.opensource.org for +the Open Source Definition). Historically, most, but not all, Python +releases have also been GPL-compatible; the table below summarizes +the various releases. + + Release Derived Year Owner GPL- + from compatible? (1) + + 0.9.0 thru 1.2 1991-1995 CWI yes + 1.3 thru 1.5.2 1.2 1995-1999 CNRI yes + 1.6 1.5.2 2000 CNRI no + 2.0 1.6 2000 BeOpen.com no + 1.6.1 1.6 2001 CNRI yes (2) + 2.1 2.0+1.6.1 2001 PSF no + 2.0.1 2.0+1.6.1 2001 PSF yes + 2.1.1 2.1+2.0.1 2001 PSF yes + 2.1.2 2.1.1 2002 PSF yes + 2.1.3 2.1.2 2002 PSF yes + 2.2 and above 2.1.1 2001-now PSF yes + +Footnotes: + +(1) GPL-compatible doesn't mean that we're distributing Python under + the GPL. All Python licenses, unlike the GPL, let you distribute + a modified version without making your changes open source. The + GPL-compatible licenses make it possible to combine Python with + other software that is released under the GPL; the others don't. + +(2) According to Richard Stallman, 1.6.1 is not GPL-compatible, + because its license has a choice of law clause. According to + CNRI, however, Stallman's lawyer has told CNRI's lawyer that 1.6.1 + is "not incompatible" with the GPL. + +Thanks to the many outside volunteers who have worked under Guido's +direction to make these releases possible. + + +B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON +=============================================================== + +PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2 +-------------------------------------------- + +1. This LICENSE AGREEMENT is between the Python Software Foundation +("PSF"), and the Individual or Organization ("Licensee") accessing and +otherwise using this software ("Python") in source or binary form and +its associated documentation. + +2. Subject to the terms and conditions of this License Agreement, PSF hereby +grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, +analyze, test, perform and/or display publicly, prepare derivative works, +distribute, and otherwise use Python alone or in any derivative version, +provided, however, that PSF's License Agreement and PSF's notice of copyright, +i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, +2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Python Software Foundation; All +Rights Reserved" are retained in Python alone or in any derivative version +prepared by Licensee. + +3. In the event Licensee prepares a derivative work that is based on +or incorporates Python or any part thereof, and wants to make +the derivative work available to others as provided herein, then +Licensee hereby agrees to include in any such work a brief summary of +the changes made to Python. + +4. PSF is making Python available to Licensee on an "AS IS" +basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON +FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS +A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, +OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +6. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +7. Nothing in this License Agreement shall be deemed to create any +relationship of agency, partnership, or joint venture between PSF and +Licensee. This License Agreement does not grant permission to use PSF +trademarks or trade name in a trademark sense to endorse or promote +products or services of Licensee, or any third party. + +8. By copying, installing or otherwise using Python, Licensee +agrees to be bound by the terms and conditions of this License +Agreement. + + +BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0 +------------------------------------------- + +BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1 + +1. This LICENSE AGREEMENT is between BeOpen.com ("BeOpen"), having an +office at 160 Saratoga Avenue, Santa Clara, CA 95051, and the +Individual or Organization ("Licensee") accessing and otherwise using +this software in source or binary form and its associated +documentation ("the Software"). + +2. Subject to the terms and conditions of this BeOpen Python License +Agreement, BeOpen hereby grants Licensee a non-exclusive, +royalty-free, world-wide license to reproduce, analyze, test, perform +and/or display publicly, prepare derivative works, distribute, and +otherwise use the Software alone or in any derivative version, +provided, however, that the BeOpen Python License is retained in the +Software, alone or in any derivative version prepared by Licensee. + +3. BeOpen is making the Software available to Licensee on an "AS IS" +basis. BEOPEN MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, BEOPEN MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +4. BEOPEN SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE +SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS +AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE, OR ANY +DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +5. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +6. This License Agreement shall be governed by and interpreted in all +respects by the law of the State of California, excluding conflict of +law provisions. Nothing in this License Agreement shall be deemed to +create any relationship of agency, partnership, or joint venture +between BeOpen and Licensee. This License Agreement does not grant +permission to use BeOpen trademarks or trade names in a trademark +sense to endorse or promote products or services of Licensee, or any +third party. As an exception, the "BeOpen Python" logos available at +http://www.pythonlabs.com/logos.html may be used according to the +permissions granted on that web page. + +7. By copying, installing or otherwise using the software, Licensee +agrees to be bound by the terms and conditions of this License +Agreement. + + +CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1 +--------------------------------------- + +1. This LICENSE AGREEMENT is between the Corporation for National +Research Initiatives, having an office at 1895 Preston White Drive, +Reston, VA 20191 ("CNRI"), and the Individual or Organization +("Licensee") accessing and otherwise using Python 1.6.1 software in +source or binary form and its associated documentation. + +2. Subject to the terms and conditions of this License Agreement, CNRI +hereby grants Licensee a nonexclusive, royalty-free, world-wide +license to reproduce, analyze, test, perform and/or display publicly, +prepare derivative works, distribute, and otherwise use Python 1.6.1 +alone or in any derivative version, provided, however, that CNRI's +License Agreement and CNRI's notice of copyright, i.e., "Copyright (c) +1995-2001 Corporation for National Research Initiatives; All Rights +Reserved" are retained in Python 1.6.1 alone or in any derivative +version prepared by Licensee. Alternately, in lieu of CNRI's License +Agreement, Licensee may substitute the following text (omitting the +quotes): "Python 1.6.1 is made available subject to the terms and +conditions in CNRI's License Agreement. This Agreement together with +Python 1.6.1 may be located on the Internet using the following +unique, persistent identifier (known as a handle): 1895.22/1013. This +Agreement may also be obtained from a proxy server on the Internet +using the following URL: http://hdl.handle.net/1895.22/1013". + +3. In the event Licensee prepares a derivative work that is based on +or incorporates Python 1.6.1 or any part thereof, and wants to make +the derivative work available to others as provided herein, then +Licensee hereby agrees to include in any such work a brief summary of +the changes made to Python 1.6.1. + +4. CNRI is making Python 1.6.1 available to Licensee on an "AS IS" +basis. CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6.1 WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON +1.6.1 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS +A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 1.6.1, +OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +6. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +7. This License Agreement shall be governed by the federal +intellectual property law of the United States, including without +limitation the federal copyright law, and, to the extent such +U.S. federal law does not apply, by the law of the Commonwealth of +Virginia, excluding Virginia's conflict of law provisions. +Notwithstanding the foregoing, with regard to derivative works based +on Python 1.6.1 that incorporate non-separable material that was +previously distributed under the GNU General Public License (GPL), the +law of the Commonwealth of Virginia shall govern this License +Agreement only as to issues arising under or with respect to +Paragraphs 4, 5, and 7 of this License Agreement. Nothing in this +License Agreement shall be deemed to create any relationship of +agency, partnership, or joint venture between CNRI and Licensee. This +License Agreement does not grant permission to use CNRI trademarks or +trade name in a trademark sense to endorse or promote products or +services of Licensee, or any third party. + +8. By clicking on the "ACCEPT" button where indicated, or by copying, +installing or otherwise using Python 1.6.1, Licensee agrees to be +bound by the terms and conditions of this License Agreement. + + ACCEPT + + +CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2 +-------------------------------------------------- + +Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, +The Netherlands. All rights reserved. + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation, and that the name of Stichting Mathematisch +Centrum or CWI not be used in advertising or publicity pertaining to +distribution of the software without specific, written prior +permission. + +STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO +THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE +FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/SOURCES/README b/SOURCES/README new file mode 100644 index 0000000..2372f9f --- /dev/null +++ b/SOURCES/README @@ -0,0 +1,7 @@ +The python36, python36-devel, and python36-debug packages contain symlinks that +enable users to access the underlying Platform-Python implementation present in +the RHEL8 system in packages platform-python, platform-python-devel and +platform-python-debug. + +The python36-rpm-macros package contains RPM macros for building RPMs with +Python 3.6 from the python36 module. diff --git a/SOURCES/macros.python36 b/SOURCES/macros.python36 new file mode 100644 index 0000000..934bf1d --- /dev/null +++ b/SOURCES/macros.python36 @@ -0,0 +1 @@ +%__python3 /usr/bin/python3.6 diff --git a/SPECS/python36.spec b/SPECS/python36.spec new file mode 100644 index 0000000..9388331 --- /dev/null +++ b/SPECS/python36.spec @@ -0,0 +1,428 @@ +# ================== +# Top-level metadata +# ================== + +%global pybasever 3.6 + +Name: python36 +Version: %{pybasever}.8 +Release: 37%{?dist} +Summary: Interpreter of the Python programming language + +License: Python +URL: https://www.python.org/ + +# LICENSE file is fetched from the Python 3 github repository +# for the respective version. +Source0: https://github.com/python/cpython/raw/v%{version}/LICENSE +Source1: README +Source2: macros.python36 + +%global debug_package %{nil} + +# ================================== +# Conditionals controlling the build +# ================================== + +# Extra build for debugging the interpreter or C-API extensions +# (the -debug subpackages) +%bcond_without debug_build + + +# ============================================== +# Metadata and macros from the python3 component +# ============================================== + +# ABIFLAGS, LDVERSION and SOABI are in the upstream configure.ac +# See PEP 3149 for some background: http://www.python.org/dev/peps/pep-3149/ +%global ABIFLAGS_optimized m +%global ABIFLAGS_debug dm + +%global LDVERSION_optimized %{pybasever}%{ABIFLAGS_optimized} +%global LDVERSION_debug %{pybasever}%{ABIFLAGS_debug} + + +# ======================= +# Package and subpackages +# ======================= + +# python36 package itself +Provides: python3 = %{version}-%{release} +Provides: python3%{?_isa} = %{version}-%{release} +Obsoletes: python3 < 3.6.6-13 + +# When the user tries to `yum install python`, yum will list this package among +# the possible alternatives +Provides: alternative-for(python) + +Requires: %{_libexecdir}/platform-python +# python36 carries alternatives slave links for these packages, so they have to be installed +Requires: python3-pip +Requires: python3-setuptools + +# Runtime require alternatives +Requires: %{_sbindir}/alternatives +Requires(post): %{_sbindir}/alternatives +Requires(postun): %{_sbindir}/alternatives + +%global _description \ +Python is an accessible, high-level, dynamically typed, interpreted programming\ +language, designed with an emphasis on code readibility.\ +It includes an extensive standard library, and has a vast ecosystem of\ +third-party libraries.\ +\ +The python36 package provides the "python3.6" executable: the reference\ +interpreter for the Python language, version 3.\ +The package also installs the "python3" executable which is user configurable\ +using the "alternatives --config python3" command.\ +For the unversioned "python" command, see manual page "unversioned-python".\ +\ +The python36-devel package contains files for dovelopment of Python application\ +and the python36-debug is helpful for debugging.\ +\ +Packages containing additional libraries for Python 3.6 are generally named\ +with the "python3-" prefix. + +%description %_description + + +%package devel +Summary: Libraries and header files needed for Python development +Provides: python3-devel = %{version}-%{release} +Provides: python3-devel%{?_isa} = %{version}-%{release} +Requires: python36 +Requires: platform-python-devel +# python36 installs the alternatives master symlink to which we attach a slave +Requires(post): python36 +Requires(postun): python36 + +%description devel +This package contains the header files and configuration needed to compile +Python extension modules (typically written in C or C++), to embed Python +into other programs, and to make binary distributions for Python libraries. + +If you want to build an RPM against the python36 module, you also need to +install the python36-rpm-macros package. + + +%if %{with debug_build} +%package debug +Summary: Debug version of the Python runtime +Provides: python3-debug = %{version}-%{release} +Provides: python3-debug%{?_isa} = %{version}-%{release} +Obsoletes: python3-debug < 3.6.6-13 +Requires: python36 +Requires: python36-devel +Requires: platform-python-debug +# python36 installs the alternatives master symlink to which we attach a slave +Requires(post): python36 +Requires(postun): python36 + +%description debug +python36-debug provides a version of the Python runtime with numerous debugging +features enabled, aimed at advanced Python users such as developers of Python +extension modules. + +This version uses more memory and will be slower than the regular Python build, +but is useful for tracking down reference-counting issues and other bugs. + +The bytecode format is unchanged, so that .pyc files are compatible between +this and the standard version of Python, but the debugging features mean that +C/C++ extension modules are ABI-incompatible and must be built for each version +separately. + +The debug build shares installation directories with the standard Python +runtime, so that .py and .pyc files can be shared. +Compiled extension modules use a special ABI flag ("d") in the filename, +so extensions for both verisons can co-exist in the same directory. +%endif # with debug_build + + +%package -n python36-rpm-macros +Summary: RPM macros for building RPMs with Python 3.6 +Provides: python36-modular-devel = %{version}-%{release} +Provides: python-modular-rpm-macros == 3.6 +Conflicts: python-modular-rpm-macros > 3.6 +Requires: python3-rpm-macros +BuildArch: noarch + +%description -n python36-rpm-macros +RPM macros for building RPMs with Python 3.6 from the python36 module. +If you want to build an RPM against the python36 module, you need to +BuildRequire: python36-rpm-macros. + + +%prep +cp %{SOURCE0} LICENSE +cp %{SOURCE1} README + + +%build + + +%install +mkdir -p %{buildroot}%{_bindir} +mkdir -p %{buildroot}%{_mandir}/man1/ + +# Symlink the executable to libexec +ln -s %{_libexecdir}/platform-python%{pybasever} %{buildroot}%{_bindir}/python%{pybasever} + +# Symlink the config executables +ln -s python%{LDVERSION_optimized}-config %{buildroot}%{_bindir}/python%{pybasever}-config + +# LDVERSION specific section +InstallPython() { + LDVersion=$1 + + # Symlink python*-config to libexec + ln -s %{_libexecdir}/platform-python${LDVersion}-config %{buildroot}%{_bindir}/python${LDVersion}-config + ln -s %{_libexecdir}/platform-python${LDVersion}-`uname -m`-config %{buildroot}%{_bindir}/python${LDVersion}-`uname -m`-config + + # Symlink optimized and debug executables + ln -s %{_libexecdir}/platform-python${LDVersion} %{buildroot}%{_bindir}/python${LDVersion} +} + +%if %{with debug_build} +InstallPython %{LDVERSION_debug} +# General debug symlinks +ln -s python%{LDVERSION_debug}-config %{buildroot}%{_bindir}/python%{pybasever}-debug-config +ln -s python%{LDVERSION_debug} %{buildroot}%{_bindir}/python%{pybasever}-debug +%endif # with debug_build + +InstallPython %{LDVERSION_optimized} + +# Python RPM macros +mkdir -p %{buildroot}/%{rpmmacrodir}/ +install -m 644 %{SOURCE2} \ + %{buildroot}/%{rpmmacrodir}/ + +# All ghost files controlled by alternatives need to exist for the files +# section check to succeed +# - Don't list /usr/bin/python as a ghost file so `yum install /usr/bin/python` +# doesn't install this package +touch %{buildroot}%{_bindir}/unversioned-python +touch %{buildroot}%{_mandir}/man1/python.1.gz +touch %{buildroot}%{_bindir}/python3 +touch %{buildroot}%{_mandir}/man1/python3.1.gz +touch %{buildroot}%{_bindir}/pip3 +touch %{buildroot}%{_bindir}/pip-3 +touch %{buildroot}%{_bindir}/easy_install-3 +touch %{buildroot}%{_bindir}/pydoc3 +touch %{buildroot}%{_bindir}/pydoc-3 +touch %{buildroot}%{_bindir}/pyvenv-3 +touch %{buildroot}%{_bindir}/python3-config +touch %{buildroot}%{_bindir}/python3-debug +touch %{buildroot}%{_bindir}/python3-debug-config + + +%post +# Alternative for /usr/bin/python -> /usr/bin/python3 + man page +alternatives --install %{_bindir}/unversioned-python \ + python \ + %{_bindir}/python3 \ + 300 \ + --slave %{_bindir}/python \ + unversioned-python \ + %{_bindir}/python3 \ + --slave %{_mandir}/man1/python.1.gz \ + unversioned-python-man \ + %{_mandir}/man1/python3.1.gz + +# Alternative for /usr/bin/python3 -> /usr/bin/python3.6 +# Create only if it doesn't exist already +EXISTS=`alternatives --display python3 | \ + grep -c "^/usr/bin/python3.6 - priority [0-9]*"` + +if [ $EXISTS -eq 0 ]; then + alternatives --install %{_bindir}/python3 \ + python3 \ + %{_bindir}/python3.6 \ + 1000000 \ + --slave %{_mandir}/man1/python3.1.gz \ + python3-man \ + %{_mandir}/man1/python3.6.1.gz \ + --slave %{_bindir}/pip3 \ + pip3 \ + %{_bindir}/pip3.6 \ + --slave %{_bindir}/pip-3 \ + pip-3 \ + %{_bindir}/pip-3.6 \ + --slave %{_bindir}/easy_install-3 \ + easy_install-3 \ + %{_bindir}/easy_install-3.6 \ + --slave %{_bindir}/pydoc3 \ + pydoc3 \ + %{_bindir}/pydoc3.6 \ + --slave %{_bindir}/pydoc-3 \ + pydoc-3 \ + %{_bindir}/pydoc3.6 \ + --slave %{_bindir}/pyvenv-3 \ + pyvenv-3 \ + %{_bindir}/pyvenv-3.6 +fi + +%postun +# Do this only during uninstall process (not during update) +if [ $1 -eq 0 ]; then + alternatives --remove python3 \ + %{_bindir}/python3.6 + + # Remove link python → python3 if no other python3.* exists + if ! alternatives --display python3 > /dev/null; then + alternatives --remove python \ + %{_bindir}/python3 + fi +fi + + +%post -n python36-devel +alternatives --add-slave python3 %{_bindir}/python3.6 \ + %{_bindir}/python3-config \ + python3-config \ + %{_bindir}/python3.6-config + +%postun -n python36-devel +# Do this only during uninstall process (not during update) +if [ $1 -eq 0 ]; then + alternatives --remove-slave python3 %{_bindir}/python3.6 \ + python3-config +fi + + +%post -n python36-debug +alternatives --add-slave python3 %{_bindir}/python3.6 \ + %{_bindir}/python3-debug \ + python3-debug \ + %{_bindir}/python3.6-debug +alternatives --add-slave python3 %{_bindir}/python3.6 \ + %{_bindir}/python3-debug-config \ + python3-debug-config \ + %{_bindir}/python3.6-debug-config + +%postun -n python36-debug +# Do this only during uninstall process (not during update) +if [ $1 -eq 0 ]; then + alternatives --remove-slave python3 %{_bindir}/python3.6 \ + python3-debug + alternatives --remove-slave python3 %{_bindir}/python3.6 \ + python3-debug-config +fi + + +%files +%license LICENSE +%doc README +%{_bindir}/python%{pybasever} +%{_bindir}/python%{LDVERSION_optimized} +%ghost %{_bindir}/unversioned-python +%ghost %{_mandir}/man1/python.1.gz +%ghost %{_bindir}/python3 +%ghost %{_mandir}/man1/python3.1.gz +%ghost %{_bindir}/pip3 +%ghost %{_bindir}/pip-3 +%ghost %{_bindir}/easy_install-3 +%ghost %{_bindir}/pydoc3 +%ghost %{_bindir}/pydoc-3 +%ghost %{_bindir}/pyvenv-3 + +%files devel +%license LICENSE +%doc README +%{_bindir}/python%{pybasever}-config +%{_bindir}/python%{LDVERSION_optimized}-config +%{_bindir}/python%{LDVERSION_optimized}-*-config +%ghost %{_bindir}/python3-config + +%files debug +%license LICENSE +%doc README +%{_bindir}/python%{LDVERSION_debug} +%{_bindir}/python%{LDVERSION_debug}-config +%{_bindir}/python%{LDVERSION_debug}-*-config +%{_bindir}/python%{pybasever}-debug-config +%{_bindir}/python%{pybasever}-debug +%ghost %{_bindir}/python3-debug +%ghost %{_bindir}/python3-debug-config + +%files -n python36-rpm-macros +%license LICENSE +%doc README +%{rpmmacrodir}/macros.python36 + + +%changelog +* Fri May 07 2021 Charalampos Stratakis - 3.6.8-37 +- Bump the release to a number higher than RHEL7 +- Resolves: rhbz#1954567 + +* Thu Apr 25 2019 Tomas Orsava - 3.6.8-2 +- Bumping due to problems with modular RPM upgrade path +- Resolves: rhbz#1695587 + +* Mon Jan 21 2019 Charalampos Stratakis - 3.6.8-1 +- Sync version-release with the python3 component +- Resolves: rhbz#1658271 + +* Tue Dec 04 2018 Tomas Orsava - 3.6.6-18 +- Remove the Python source tarball as it's not being used in this symlink + component +- Create a new explanatory README +- Resolves: rhbz#1654867 + +* Tue Oct 16 2018 Tomas Orsava - 3.6.6-17 +- Slightly edit the description +- Related: rhbz#1633534 + +* Sun Oct 14 2018 Tomas Orsava - 3.6.6-16 +- Add Requires (/post/postun) on /usr/sbin/alternatives +- Resolves: rhbz#1633534 + +* Fri Oct 12 2018 Tomas Orsava - 3.6.6-15 +- Don't list /usr/bin/python as a ghost file so `yum install /usr/bin/python` + doesn't install this package +- Resolves: rhbz#1633534 + +* Mon Oct 08 2018 Tomas Orsava - 3.6.6-14 +- Set a special Provides tag that advertises the `python36` package as an + alternative to the non-existing `python` package +- Resolves: rhbz#1633561 + +* Tue Oct 02 2018 Tomas Orsava - 3.6.6-13.1 +- Fix update of alternatives in the devel and debug packages +- Resolves: rhbz#1633534 + +* Sat Sep 29 2018 Tomas Orsava - 3.6.6-13 +- Provide the name `python3`, `python3-devel` and `python3-debug` from their + respective packages to provide a sane default for Python 3 +- Provide the name `python36-modular-devel` from python36-rpm-macros so it's + easier to remember and describe in documentation +- Sync version-release with the python3 component +- Resolves: rhbz#1632637 + +* Sat Sep 29 2018 Tomas Orsava - 3.6-7 +- Implement the alternatives system for Python in RHEL8 +- Resolves: rhbz#1633534 + +* Tue Sep 25 2018 Tomas Orsava - 3.6-6 +- Require the Python interpreter directly instead of using the package name +- Related: rhbz#1619153 + +* Tue Aug 14 2018 Lumír Balhar - 3.6-5 +- Add general symlinks python3.6-debug[-config] for symlinks modules +- Resolves: rhbz#1615727 + +* Sat Aug 04 2018 Tomas Orsava - 3.6-4 +- Switched devel subpackage's dependency from python3-devel to + python3-libs-devel: python3-devel is now buildroot only and the contents were + moved to python3-libs-devel + +* Tue Jul 31 2018 Tomas Orsava - 3.6-3 +- Make the python36-rpm-macros package noarch + +* Wed Apr 04 2018 Tomas Orsava - 3.6-2 +- Include python36-rpm-macros for building RPMs against this module + +* Wed Apr 04 2018 Tomas Orsava - 3.6-1 +- This new package python36 will belong to the python36 module that will house + symlinks from /usr/bin/python* to /usr/libexec/platform-python* et al. +