python-setup.spec 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. ##
  2. ## python-setup.spec -- OpenPKG RPM Package Specification
  3. ## Copyright (c) 2000-2016 OpenPKG Foundation e.V. <http://openpkg.net/>
  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 2.7
  25. %define V_setuptools 30.1.0
  26. %define V_setuptools_git 1.1
  27. %define V_setuptools_scm 1.15.0
  28. %define V_pip 9.0.1
  29. %define V_pbr 1.10.0
  30. %define V_cython 0.25.1
  31. # package information
  32. Name: python-setup
  33. Summary: Python Setup Tools
  34. URL: http://pypi.python.org/pypi/setuptools/
  35. Vendor: Phillip J. Eby
  36. Packager: OpenPKG Foundation e.V.
  37. Distribution: OpenPKG Community
  38. Class: EVAL
  39. Group: Language
  40. License: PSF/ZPL
  41. Version: %{V_python}
  42. Release: 20161203
  43. # list of sources
  44. Source0: https://files.pythonhosted.org/packages/source/s/setuptools/setuptools-%{V_setuptools}.tar.gz
  45. Source1: https://files.pythonhosted.org/packages/source/p/pip/pip-%{V_pip}.tar.gz
  46. Source2: https://files.pythonhosted.org/packages/source/p/pbr/pbr-%{V_pbr}.tar.gz
  47. Source3: https://files.pythonhosted.org/packages/source/C/Cython/Cython-%{V_cython}.tar.gz
  48. Source4: https://files.pythonhosted.org/packages/source/s/setuptools-git/setuptools-git-%{V_setuptools_git}.tar.gz
  49. Source5: https://files.pythonhosted.org/packages/source/s/setuptools_scm/setuptools_scm-%{V_setuptools_scm}.tar.gz
  50. Patch0: python-setup.patch
  51. # build information
  52. BuildPreReq: OpenPKG, openpkg >= 20160101, python >= %{V_python}
  53. PreReq: OpenPKG, openpkg >= 20160101, python >= %{V_python}
  54. %description
  55. This packages provides the Python setup tools.
  56. %track
  57. prog python-setup:setuptools = {
  58. version = %{V_setuptools}
  59. url = http://pypi.python.org/pypi/setuptools/
  60. regex = setuptools-(__VER__)\.tar\.gz
  61. }
  62. prog python-setup:pip = {
  63. version = %{V_pip}
  64. url = http://pypi.python.org/pypi/pip/
  65. regex = pip-(__VER__)\.tar\.gz
  66. }
  67. prog python-setup:pbr = {
  68. version = %{V_pbr}
  69. url = http://pypi.python.org/pypi/pbr/
  70. regex = pbr-(__VER__)\.tar\.gz
  71. }
  72. prog python-setup:cython = {
  73. version = %{V_cython}
  74. url = http://pypi.python.org/pypi/Cython/
  75. regex = Cython-(__VER__)\.tar\.gz
  76. }
  77. prog python-setup:setuptools-git = {
  78. version = %{V_setuptools_git}
  79. url = http://pypi.python.org/pypi/setuptools-git/
  80. regex = setuptools-git-(__VER__)\.tar\.gz
  81. }
  82. prog python-setup:setuptools-scm = {
  83. version = %{V_setuptools_scm}
  84. url = http://pypi.python.org/pypi/setuptools_scm/
  85. regex = setuptools_scm-(__VER__)\.tar\.gz
  86. }
  87. %prep
  88. %setup -q -c
  89. %setup -q -T -D -a 1
  90. %setup -q -T -D -a 2
  91. %setup -q -T -D -a 3
  92. %setup -q -T -D -a 4
  93. %setup -q -T -D -a 5
  94. %patch -p0
  95. %build
  96. ( cd setuptools-%{V_setuptools}
  97. mv "setuptools/script (dev).tmpl" "setuptools/script-dev.tmpl"
  98. rm -f "build/lib/setuptools/command/launcher manifest.xml"
  99. rm -f "setuptools/command/launcher manifest.xml"
  100. ) || exit $?
  101. %install
  102. ( cd setuptools-%{V_setuptools}
  103. PYTHONPATH=$RPM_BUILD_ROOT%{l_prefix}/lib/python/site-packages \
  104. %{l_prefix}/bin/python setup.py install \
  105. --root=$RPM_BUILD_ROOT \
  106. --prefix=%{l_prefix}
  107. ) || exit $?
  108. ( cd pip-%{V_pip}
  109. PYTHONPATH=$RPM_BUILD_ROOT%{l_prefix}/lib/python/site-packages \
  110. %{l_prefix}/bin/python setup.py install \
  111. --root=$RPM_BUILD_ROOT \
  112. --prefix=%{l_prefix}
  113. ) || exit $?
  114. ( cd pbr-%{V_pbr}
  115. PYTHONPATH=$RPM_BUILD_ROOT%{l_prefix}/lib/python/site-packages \
  116. %{l_prefix}/bin/python setup.py install \
  117. --root=$RPM_BUILD_ROOT \
  118. --prefix=%{l_prefix}
  119. ) || exit $?
  120. ( cd Cython-%{V_cython}
  121. PYTHONPATH=$RPM_BUILD_ROOT%{l_prefix}/lib/python/site-packages \
  122. %{l_prefix}/bin/python setup.py install \
  123. --root=$RPM_BUILD_ROOT \
  124. --prefix=%{l_prefix}
  125. ) || exit $?
  126. ( cd setuptools-git-%{V_setuptools_git}
  127. PYTHONPATH=$RPM_BUILD_ROOT%{l_prefix}/lib/python/site-packages \
  128. %{l_prefix}/bin/python setup.py install \
  129. --root=$RPM_BUILD_ROOT \
  130. --prefix=%{l_prefix}
  131. ) || exit $?
  132. ( cd setuptools_scm-%{V_setuptools_scm}
  133. PYTHONPATH=$RPM_BUILD_ROOT%{l_prefix}/lib/python/site-packages \
  134. %{l_prefix}/bin/python setup.py install \
  135. --root=$RPM_BUILD_ROOT \
  136. --prefix=%{l_prefix}
  137. ) || exit $?
  138. %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
  139. %files -f files
  140. %clean