python-setup.spec 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. ##
  2. ## python-setup.spec -- OpenPKG RPM Package Specification
  3. ## Copyright (c) 2000-2020 OpenPKG Project <http://openpkg.org/>
  4. ##
  5. ## Permission to use, copy, modify, and distribute this software for
  6. ## any purpose with or without fee is hereby granted, provided that
  7. ## the above copyright notice and this permission notice appear in all
  8. ## copies.
  9. ##
  10. ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  11. ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  12. ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  13. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  14. ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  15. ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  16. ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  17. ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  18. ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  19. ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  20. ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  21. ## SUCH DAMAGE.
  22. ##
  23. # package version
  24. %define V_python 3.8
  25. %define V_setuptools 45.2.0
  26. %define V_setuptools_git 1.2
  27. %define V_setuptools_scm 3.4.3
  28. %define V_pip 20.0.2
  29. %define V_pbr 5.4.4
  30. %define V_cython 0.29.14
  31. %define V_incremental 17.5.0
  32. %define V_dev 0.4.0
  33. %define V_wheel 0.34.2
  34. # package information
  35. Name: python-setup
  36. Summary: Python Setup Tools
  37. URL: http://pypi.python.org/pypi/setuptools/
  38. Vendor: Phillip J. Eby
  39. Packager: OpenPKG Project
  40. Distribution: OpenPKG Community
  41. Class: EVAL
  42. Group: Language
  43. License: PSF/ZPL
  44. Version: %{V_python}
  45. Release: 20200209
  46. # list of sources
  47. Source0: https://files.pythonhosted.org/packages/source/s/setuptools/setuptools-%{V_setuptools}.zip
  48. Source1: https://files.pythonhosted.org/packages/source/p/pip/pip-%{V_pip}.tar.gz
  49. Source2: https://files.pythonhosted.org/packages/source/p/pbr/pbr-%{V_pbr}.tar.gz
  50. Source3: https://files.pythonhosted.org/packages/source/C/Cython/Cython-%{V_cython}.tar.gz
  51. Source4: https://files.pythonhosted.org/packages/source/s/setuptools-git/setuptools-git-%{V_setuptools_git}.tar.gz
  52. Source5: https://files.pythonhosted.org/packages/source/s/setuptools_scm/setuptools_scm-%{V_setuptools_scm}.tar.gz
  53. Source6: https://files.pythonhosted.org/packages/source/i/incremental/incremental-%{V_incremental}.tar.gz
  54. Source7: https://files.pythonhosted.org/packages/source/d/dev/dev-%{V_dev}.tar.gz
  55. Source8: https://files.pythonhosted.org/packages/source/w/wheel/wheel-%{V_wheel}.tar.gz
  56. Patch0: python-setup.patch
  57. # build information
  58. BuildPreReq: OpenPKG, openpkg >= 20160101, python >= %{V_python}
  59. PreReq: OpenPKG, openpkg >= 20160101, python >= %{V_python}
  60. %description
  61. This packages provides the Python setup tools.
  62. %track
  63. prog python-setup:setuptools = {
  64. version = %{V_setuptools}
  65. url = http://pypi.python.org/pypi/setuptools/
  66. regex = setuptools-(__VER__)\.zip
  67. }
  68. prog python-setup:pip = {
  69. version = %{V_pip}
  70. url = http://pypi.python.org/pypi/pip/
  71. regex = pip-(__VER__)\.tar\.gz
  72. }
  73. prog python-setup:pbr = {
  74. version = %{V_pbr}
  75. url = http://pypi.python.org/pypi/pbr/
  76. regex = pbr-(__VER__)\.tar\.gz
  77. }
  78. prog python-setup:cython = {
  79. version = %{V_cython}
  80. url = http://pypi.python.org/pypi/Cython/
  81. regex = Cython-(__VER__)\.tar\.gz
  82. }
  83. prog python-setup:setuptools-git = {
  84. version = %{V_setuptools_git}
  85. url = http://pypi.python.org/pypi/setuptools-git/
  86. regex = setuptools-git-(__VER__)\.tar\.gz
  87. }
  88. prog python-setup:setuptools-scm = {
  89. version = %{V_setuptools_scm}
  90. url = http://pypi.python.org/pypi/setuptools_scm/
  91. regex = setuptools_scm-(__VER__)\.tar\.gz
  92. }
  93. prog python-setup:incremental = {
  94. version = %{V_incremental}
  95. url = http://pypi.python.org/pypi/incremental/
  96. regex = incremental-(__VER__)\.tar\.gz
  97. }
  98. prog python-setup:dev = {
  99. version = %{V_dev}
  100. url = http://pypi.python.org/pypi/dev/
  101. regex = dev-(__VER__)\.tar\.gz
  102. }
  103. prog python-setup:wheel = {
  104. version = %{V_wheel}
  105. url = http://pypi.python.org/pypi/wheel/
  106. regex = wheel-(__VER__)\.tar\.gz
  107. }
  108. %prep
  109. %setup -q -c
  110. %setup -q -T -D -a 1
  111. %setup -q -T -D -a 2
  112. %setup -q -T -D -a 3
  113. %setup -q -T -D -a 4
  114. %setup -q -T -D -a 5
  115. %setup -q -T -D -a 6
  116. %setup -q -T -D -a 7
  117. %setup -q -T -D -a 8
  118. %patch -p0
  119. %build
  120. ( cd setuptools-%{V_setuptools}
  121. mv "setuptools/script (dev).tmpl" "setuptools/script-dev.tmpl"
  122. rm -f "build/lib/setuptools/command/launcher manifest.xml"
  123. rm -f "setuptools/command/launcher manifest.xml"
  124. ) || exit $?
  125. %install
  126. export PYTHONPATH=$RPM_BUILD_ROOT%{l_prefix}/lib/python%{V_python}/site-packages
  127. ( cd setuptools-%{V_setuptools}
  128. %{l_prefix}/bin/python setup.py install \
  129. --root=$RPM_BUILD_ROOT \
  130. --prefix=%{l_prefix}
  131. ) || exit $?
  132. ( cd pip-%{V_pip}
  133. %{l_prefix}/bin/python setup.py install \
  134. --root=$RPM_BUILD_ROOT \
  135. --prefix=%{l_prefix}
  136. ) || exit $?
  137. ( cd pbr-%{V_pbr}
  138. %{l_prefix}/bin/python setup.py install \
  139. --root=$RPM_BUILD_ROOT \
  140. --prefix=%{l_prefix}
  141. ) || exit $?
  142. ( cd Cython-%{V_cython}
  143. %{l_prefix}/bin/python setup.py install \
  144. --root=$RPM_BUILD_ROOT \
  145. --prefix=%{l_prefix}
  146. ) || exit $?
  147. ( cd setuptools-git-%{V_setuptools_git}
  148. %{l_prefix}/bin/python setup.py install \
  149. --root=$RPM_BUILD_ROOT \
  150. --prefix=%{l_prefix}
  151. ) || exit $?
  152. ( cd setuptools_scm-%{V_setuptools_scm}
  153. %{l_prefix}/bin/python setup.py install \
  154. --root=$RPM_BUILD_ROOT \
  155. --prefix=%{l_prefix}
  156. ) || exit $?
  157. ( cd incremental-%{V_incremental}
  158. %{l_prefix}/bin/python setup.py install \
  159. --root=$RPM_BUILD_ROOT \
  160. --prefix=%{l_prefix}
  161. ) || exit $?
  162. ( cd dev-%{V_dev}
  163. %{l_prefix}/bin/python setup.py install \
  164. --root=$RPM_BUILD_ROOT \
  165. --prefix=%{l_prefix}
  166. ) || exit $?
  167. ( cd wheel-%{V_wheel}
  168. %{l_prefix}/bin/python setup.py install \
  169. --root=$RPM_BUILD_ROOT \
  170. --prefix=%{l_prefix}
  171. ) || exit $?
  172. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
  173. %files -f files
  174. %clean