/[packages]/cauldron/python3/current/SPECS/python3.spec
ViewVC logotype

Contents of /cauldron/python3/current/SPECS/python3.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1303668 - (show annotations) (download)
Mon Sep 24 21:58:07 2018 UTC (5 years, 6 months ago) by tv
File size: 24353 byte(s)
fix pathfix call
1 # NOTES ON BOOTSTRAPING PYTHON 3.6:
2 #
3 # Due to a dependency cycle between Python, rpm, pip, setuptools, wheel,
4 # and other packages, in order to rebase Python 3 one has to build in the
5 # following order:
6 #
7 # 1. python-rpm-generators with bootstrapping_python set to 1
8 # (this can be done also during step 2., but should be done before 3.)
9 # 2. python3 with with_rewheel set to 0
10 # 3. python-rpm-generators with bootstrapping_python set to 0
11 # (this can be done at any later step without negative effects)
12 # 4. rpm
13 # 5. python-setuptools with build_wheel set to 0
14 # 6. python-pip with build_wheel set to 0
15 # 7. python-wheel with %%bcond_without bootstrap
16 # 8. python-setuptools with build_wheel set to 1 and also with_check set to 0
17 # 9. python-pip with build_wheel set to 1
18 # 10. pyparsing
19 # 11. python3 with with_rewheel set to 1
20 # 12. gdb
21 # 13. rpm-mageia-setup
22
23 # Then the most important packages have to be built, starting from their
24 # various leaf dependencies recursively. After these have been built, a
25 # targeted rebuild should be requested for the rest.
26 #
27 # Currently these packages are recommended to have been built before a targeted
28 # rebuild after a python abi change:
29 # python-sphinx, pytest, python-requests
30
31 %define docver 3.6.6
32 %define dirver 3.6
33 %define familyver 3
34 %define pyshortver 36
35
36 %define lib_major %{dirver}
37 %define lib_name_orig libpython%{familyver}
38 %define lib_name %mklibname python %{lib_major}
39 %define develname %mklibname python3 -d
40
41 %ifarch %{ix86} x86_64 ppc
42 %bcond_without valgrind
43 %else
44 %bcond_with valgrind
45 %endif
46
47 %define with_rewheel 0
48 %if 0%{with_rewheel}
49 %define setuptools_version 36.2.4
50 %endif
51
52 # Some defines to ease files list
53 %define pylibdir %{_libdir}/python%{dirver}
54 %define dynload_dir %{pylibdir}/lib-dynload
55 %define site_packages %{pylibdir}/site-packages
56 %define ABIFLAGS_optimized m
57 %define LDVERSION_optimized %{dirver}%{ABIFLAGS_optimized}
58 %define SOABI_optimized cpython-%{pyshortver}%{ABIFLAGS_optimized}-%{_arch}-linux%{_gnu}
59 %define bytecode_suffixes .cpython-%{pyshortver}*.py?
60
61 Summary: An interpreted, interactive object-oriented programming language
62 Name: python3
63 Version: 3.6.6
64 Release: %mkrel 2
65 License: Modified CNRI Open Source License
66 Group: Development/Python
67
68 Source: https://www.python.org/ftp/python/%{version}/Python-%{version}.tar.xz
69 Source1: https://docs.python.org/%{dirver}/archives/python-%{docver}-docs-html.tar.bz2
70
71 Patch0: python3-3.6.2-module-linkage.patch
72 Patch1: python3-3.6.5-fdr-lib64.patch
73 Patch3: python3-3.6.5-no-static-lib.patch
74 Patch6: python3-3.5.2-add-rpmbuild-hooks-to-unittest.patch
75 Patch7: python3-3.5.2-skip-distutils-tests-that-fail-in-rpmbuild.patch
76 Patch10: python3-3.6.2-uid-gid-overflows.patch
77 Patch11: python3-3.5.2-disable-test_fs_holes-in-rpm-build.patch
78 Patch12: python3-3.5.2-disable-parts-of-test_socket-in-rpm-build.patch
79 Patch13: python3-3.5.2-dont-duplicate-flags-in-sysconfig.patch
80 Patch15: python3-3.5.2-dont-raise-from-py_compile.patch
81 %if 0%{with_rewheel}
82 Patch16: python3-3.6.4-add-rewheel-module.patch
83 %endif
84 # Set values of prefix and exec_prefix in distutils install command
85 # to /usr/local if executable is /usr/bin/python* and RPM build
86 # is not detected to make pip and distutils install into separate location
87 Patch17: python3-3.6.2-change-user-install-location.patch
88 Patch18: python3-3.5.2-make-libpl-respect-lib64.patch
89 Patch19: python3-3.5.2-remove-hf-from-arm-triplet.patch
90 Patch20: python3-3.6.2-libffi.patch
91 Patch21: python3-3.6.2-python3-config-LIBPLUSED-cmp0004-error.patch
92 # from upstream
93
94 # Disable automatic bytecompilation. The python3 binary is not yet be
95 # available in /usr/bin when Python is built. Also, the bytecompilation fails
96 # on files that test invalid syntax.
97 %undefine py_auto_byte_compile
98
99 URL: http://www.python.org/
100 Conflicts: tkinter3 < %{version}
101 Conflicts: %{lib_name}-devel < 3.5
102 Conflicts: %{develname} < 3.5
103 Requires: %{lib_name} = %{version}-%{release}
104 BuildRequires: automake
105 BuildRequires: gcc-c++
106 BuildRequires: blt
107 BuildRequires: db-devel
108 BuildRequires: pkgconfig(expat)
109 BuildRequires: gdbm-devel
110 BuildRequires: gmp-devel
111 BuildRequires: pkgconfig(libffi)
112 BuildRequires: pkgconfig(ncursesw)
113 BuildRequires: pkgconfig(openssl)
114 BuildRequires: readline-devel
115 BuildRequires: termcap-devel
116 BuildRequires: tcl
117 BuildRequires: pkgconfig(tcl)
118 BuildRequires: tk
119 BuildRequires: pkgconfig(tk)
120 BuildRequires: autoconf
121 BuildRequires: bzip2-devel
122 BuildRequires: pkgconfig(sqlite3)
123 BuildRequires: pkgconfig(liblzma)
124 # uncomment once the emacs part no longer conflict with python 2.X
125 #BuildRequires: emacs
126 #BuildRequires: emacs-bin
127 %if %{with valgrind}
128 BuildRequires: pkgconfig(valgrind)
129 %endif
130 %if 0%{?with_rewheel}
131 BuildRequires: pythonegg(3)(setuptools) >= %{setuptools_version}
132 BuildRequires: pythonegg(3)(pip) >= 9.0.3
133 %endif
134 Provides: python(abi) = %{dirver}
135 Provides: /usr/bin/python%{LDVERSION_optimized}
136 Provides: /usr/bin/python%{dirver}
137 Requires: python-rpm-macros
138 Requires: python3-rpm-macros
139
140
141 %description
142 Python is an interpreted, interactive, object-oriented programming
143 language often compared to Tcl, Perl, Scheme or Java. Python includes
144 modules, classes, exceptions, very high level dynamic data types and
145 dynamic typing. Python supports interfaces to many system calls and
146 libraries, as well as to various windowing systems (X11, Motif, Tk,
147 Mac and MFC).
148
149 Programmers can write new built-in modules for Python in C or C++.
150 Python can be used as an extension language for applications that
151 need a programmable interface. This package contains most of the
152 standard Python modules, as well as modules for interfacing to the
153 Tix widget set for Tk and RPM.
154
155 Note that documentation for Python is provided in the python-docs
156 package.
157
158
159 %package -n %{lib_name}
160 Summary: Shared libraries for Python %{version}
161 Group: System/Libraries
162 Requires: %{lib_name}-stdlib = %{version}-%{release}
163
164 %description -n %{lib_name}
165 This packages contains Python shared object library. Python is an
166 interpreted, interactive, object-oriented programming language often
167 compared to Tcl, Perl, Scheme or Java.
168
169
170 %package -n %{lib_name}-stdlib
171 Summary: Python %{version} standard library
172 Group: Development/Python
173 Conflicts: python3 < 3.5.1-14
174 %if 0%{with_rewheel}
175 Requires: python3-setuptools
176 Requires: python3-pip
177 %endif
178
179 %description -n %{lib_name}-stdlib
180 This package contains Python 2.7's standard library.
181 It is normally not used on its own, but as a dependency of Python %{version}.
182
183
184 %package -n %{lib_name}-testsuite
185 Summary: Testsuite for the Python %{version} standard library
186 Group: Development/Python
187 Conflicts: python3 < 3.5.1-14
188 Conflicts: %{develname} < 3.5.1-14
189 Requires: %{lib_name}-stdlib = %{version}-%{release}
190 Requires: %{lib_name} = %{version}-%{release}
191 Recommends: tkinter3
192
193 %description -n %{lib_name}-testsuite
194 The complete testsuite for the Python standard library.
195 It is normally not used on its own, but as a dependency of Python %{version}.
196
197
198 %package -n %{develname}
199 Summary: The libraries and header files needed for Python development
200 Group: Development/Python
201 Requires: %{name} = %version
202 Requires: %{lib_name} = %{version}-%{release}
203 Provides: %{name}-devel = %{version}-%{release}
204 Provides: %{lib_name_orig}-devel = %{version}-%{release}
205 Obsoletes: %{_lib}python3.1-devel < %{version}
206 Obsoletes: %{_lib}python3.2-devel < %{version}
207 Obsoletes: %{_lib}python3.3-devel < %{version}
208 Recommends: %{lib_name}-testsuite
209 Recommends: %{name}-docs
210
211 %description -n %{develname}
212 The Python programming language's interpreter can be extended with
213 dynamically loaded extensions and can be embedded in other programs.
214 This package contains the header files and libraries needed to do
215 these types of tasks.
216
217 Install %{develname} if you want to develop Python extensions. The
218 python package will also need to be installed. You'll probably also
219 want to install the python-docs package, which contains Python
220 documentation.
221
222
223 %package docs
224 Summary: Documentation for the Python programming language
225 Requires: %{name} = %{version}
226 Requires: xdg-utils
227 Group: Development/Python
228 BuildArch: noarch
229
230 %description docs
231 The python-docs package contains documentation on the Python
232 programming language and interpreter. The documentation is provided
233 in ASCII text files and in LaTeX source files.
234
235 Install the python-docs package if you'd like to use the documentation
236 for the Python language.
237
238
239 %package -n tkinter3
240 Summary: A graphical user interface for the Python scripting language
241 Group: Development/Python
242 Requires: %{name} = %{version}-%{release}
243 Requires: tcl tk
244 Provides: python3-tkinter
245 Conflicts: python3 < 3.5.1-14
246
247 %description -n tkinter3
248 The Tkinter (Tk interface) program is an graphical user interface for
249 the Python scripting language.
250
251 You should install the tkinter package if you'd like to use a graphical
252 user interface for Python programming.
253
254
255 %package -n tkinter3-apps
256 Summary: Various applications written using tkinter
257 Group: Development/Python
258 Requires: tkinter3
259
260 %description -n tkinter3-apps
261 Various applications written using tkinter
262
263
264 %prep
265 %setup -qn Python-%{version}
266 %if 0%{with_rewheel}
267 %global pip_version %(pip3 --version | cut -d' ' -f2)
268 sed -r -i s/'_PIP_VERSION = "[0-9.]+"'/'_PIP_VERSION = "%{pip_version}"'/ Lib/ensurepip/__init__.py
269 %endif
270
271 %patch0 -p1
272
273 %if "%{_lib}" == "lib64"
274 %patch1 -p1
275 %endif
276
277 %patch3 -p1
278 %patch6 -p1
279 %patch7 -p1
280 %patch10 -p1
281 %patch11 -p1
282 %patch12 -p1
283 %patch13 -p1
284 %patch15 -p1
285
286 %if 0%{with_rewheel}
287 %patch16 -p1
288 %endif
289 %patch17 -p1
290 %patch18 -p1
291 %patch19 -p1
292 %patch20 -p1
293 %patch21 -p1
294 # drop Autoconf version requirement
295 sed -i 's/^AC_PREREQ/dnl AC_PREREQ/' configure.ac
296
297 # docs
298 mkdir html
299 bzcat %{SOURCE1} | tar x -C html
300
301 find . -type f -print0 | xargs -0 perl -p -i -e 's@/usr/local/bin/python@/usr/bin/python3@'
302
303 %build
304 rm -f Modules/Setup.local
305
306 export OPT="%{optflags} -g"
307
308 # to fix curses module build
309 # https://bugs.mageia.org/show_bug.cgi?id=6702
310 export CFLAGS="%{optflags} -I/usr/include/ncursesw"
311 export CPPFLAGS="%{optflags} -I/usr/include/ncursesw"
312
313 autoreconf -vfi
314 # Remove -Wl,--no-undefined in accordance with MGA #9395 :
315 # https://bugs.mageia.org/show_bug.cgi?id=9395
316 %define _disable_ld_no_undefined 1
317 %configure2_5x --with-threads \
318 --enable-ipv6 \
319 --with-dbmliborder=gdbm \
320 --with-system-expat \
321 --with-system-ffi \
322 --enable-shared \
323 --without-ensurepip \
324 --enable-loadable-sqlite-extensions \
325 %if %{with valgrind}
326 --with-valgrind
327 %endif
328
329 # fix build
330 #perl -pi -e 's/^(LDFLAGS=.*)/$1 -lstdc++/' Makefile
331 # (misc) if the home is nfs mounted, rmdir fails due to delay
332 export TMP="/tmp" TMPDIR="/tmp"
333 #%make LN="ln -sf"
334 make EXTRA_CFLAGS="$CFLAGS" LN="ln -sf"
335
336 %install
337 mkdir -p %{buildroot}%{site_packages}/__pycache__
338 mkdir -p %{buildroot}%{pylibdir}/__pycache__
339
340 %if "%{_lib}" == "lib64"
341 mkdir -p %{buildroot}%{_prefix}/lib/python%{dirver}/site-packages
342 mkdir -p %{buildroot}%{_prefix}/lib/python%{dirver}/site-packages/__pycache__
343 %endif
344
345 # fix Makefile to get rid of reference to distcc
346 perl -pi -e "/^CC=/ and s/distcc/gcc/" Makefile
347
348 # set the install path
349 echo '[install_scripts]' >setup.cfg
350 echo 'install_dir='"${RPM_BUILD_ROOT}/usr/bin" >>setup.cfg
351
352 # python is not GNU and does not know fsstd
353 mkdir -p %{buildroot}%{_mandir}
354 %makeinstall_std LN="ln -sf"
355
356 # overwrite the copied binary with a link
357 pushd %{buildroot}%{_bindir}
358 ln -sf python%{LDVERSION_optimized} python%{dirver}
359 ln -sf python%{dirver} python%{familyver}
360 popd
361
362 (cd %{buildroot}%{_libdir}; ln -sf `ls libpython%{lib_major}*.so.*` libpython%{lib_major}.so)
363
364 # fix files conflicting with python2.6
365 mv %{buildroot}/%{_bindir}/2to3 %{buildroot}/%{_bindir}/python3-2to3
366
367
368 # install pynche as pynche3
369 cat << EOF > %{buildroot}%{_bindir}/pynche3
370 #!/bin/bash
371 exec %{_libdir}/python%{dirver}/site-packages/pynche/pynche
372 EOF
373 rm -f Tools/pynche/*.pyw
374 cp -r Tools/pynche %{buildroot}%{_libdir}/python%{dirver}/site-packages/
375
376 chmod 755 %{buildroot}%{_bindir}/{idle3,pynche3}
377
378 ln -f Tools/pynche/README Tools/pynche/README.pynche
379
380 %if %{with valgrind}
381 install Misc/valgrind-python.supp -D %{buildroot}%{_libdir}/valgrind/valgrind-python3.supp
382 %endif
383
384 mkdir -p %{buildroot}%{_datadir}/applications
385 cat > %{buildroot}%{_datadir}/applications/%{_real_vendor}-tkinter3.desktop << EOF
386 [Desktop Entry]
387 Name=IDLE
388 Comment=IDE for Python3
389 Exec=%{_bindir}/idle3
390 Icon=development_environment_section
391 Terminal=false
392 Type=Application
393 Categories=Development;IDE;
394 EOF
395
396
397 cat > %{buildroot}%{_datadir}/applications/%{_real_vendor}-%{name}-docs.desktop << EOF
398 [Desktop Entry]
399 Name=Python documentation
400 Comment=Python complete reference
401 Exec=%{_bindir}/xdg-open %_defaultdocdir/%{name}-docs/index.html
402 Icon=documentation_section
403 Terminal=false
404 Type=Application
405 Categories=Documentation;
406 EOF
407
408
409 # fix non real scripts
410 #chmod 644 %{buildroot}%{_libdir}/python*/test/test_{binascii,grp,htmlparser}.py*
411 find %{buildroot} -type f \( -name "test_binascii.py*" -o -name "test_grp.py*" -o -name "test_htmlparser.py*" \) -exec chmod 644 {} \;
412 # fix python library not stripped
413 chmod u+w %{buildroot}%{_libdir}/libpython%{lib_major}*.so.1.0 $RPM_BUILD_ROOT%{_libdir}/libpython3.so
414
415
416 %multiarch_includes %{buildroot}/usr/include/python*/pyconfig.h
417
418 # Install pathfix.py to bindir
419 # See https://github.com/fedora-python/python-rpm-porting/issues/24
420 cp -p Tools/scripts/pathfix.py %{buildroot}%{_bindir}/
421
422 # Switch all shebangs to refer to the specific Python version.
423 # This currently only covers files matching ^[a-zA-Z0-9_]+\.py$,
424 # so handle files named using other naming scheme separately.
425 LD_LIBRARY_PATH=./ ./python \
426 Tools/scripts/pathfix.py \
427 -i "%{_bindir}/python%{dirver}" -p \
428 %{buildroot} \
429 %{?with_gdb_hooks:%{buildroot}$DirHoldingGdbPy/*.py}
430
431 # Remove shebang lines from .py files that aren't executable, and
432 # remove executability from .py files that don't have a shebang line:
433 find %{buildroot} -name \*.py \
434 \( \( \! -perm /u+x,g+x,o+x -exec sed -e '/^#!/Q 0' -e 'Q 1' {} \; \
435 -print -exec sed -i '1d' {} \; \) -o \( \
436 -perm /u+x,g+x,o+x ! -exec grep -m 1 -q '^#!' {} \; \
437 -exec chmod a-x {} \; \) \)
438
439 # .xpm and .xbm files should not be executable:
440 find %{buildroot} \
441 \( -name \*.xbm -o -name \*.xpm -o -name \*.xpm.1 \) \
442 -exec chmod a-x {} \;
443
444 # Get rid of DOS batch files:
445 find %{buildroot} -name \*.bat -exec rm {} \;
446
447 # Get rid of backup files:
448 find %{buildroot}/ -name "*~" -exec rm -f {} \;
449 find . -name "*~" -exec rm -f {} \;
450 rm -f %{buildroot}%{pylibdir}/LICENSE.txt
451
452
453 %check
454 # (misc) if the home is nfs mounted, rmdir fails
455 export TMP="/tmp" TMPDIR="/tmp"
456
457 # Exclude some tests that hangs on the BS
458 EXCLUDE="test_ssl test_socket test_epoll"
459 %ifarch x86_64
460 EXCLUDE="$EXCLUDE test_faulthandler"
461 %endif
462 %ifarch %arm
463 EXCLUDE="$EXCLUDE test_float test_asyncio test_cmath"
464 %endif
465 # json test pass on local build but fail on BS
466 EXCLUDE="$EXCLUDE test_json"
467 # to investigate why it fails on local build
468 EXCLUDE="$EXCLUDE test_site"
469 # all tests must pass
470 # but we disable network on BS
471 WITHIN_PYTHON_RPM_BUILD= make test TESTOPTS="-j1 -u none -x $EXCLUDE"
472 # consider use network on local build
473 #EXCLUDE=""
474 #WITHIN_PYTHON_RPM_BUILD= make test TESTOPTS="-u network -x $EXCLUDE"
475
476
477 %files
478 %{_bindir}/pydoc%{familyver}
479 %{_bindir}/pydoc%{dirver}
480 %{_bindir}/python%{familyver}
481 %{_bindir}/python%{dirver}
482 %{_bindir}/python%{LDVERSION_optimized}
483 %{_bindir}/pyvenv
484 %{_bindir}/pyvenv-%{dirver}
485 %{_bindir}/2to3-%{dirver}
486 %{_bindir}/python3-2to3
487 %{_mandir}/man*/*
488
489
490 %files -n %{lib_name}-stdlib
491 %license LICENSE
492 %doc README.rst
493 %{_includedir}/python%{LDVERSION_optimized}/pyconfig.h
494 %multiarch %{multiarch_includedir}/python%{LDVERSION_optimized}/pyconfig.h
495 %{pylibdir}/config-%{LDVERSION_optimized}/Makefile
496 %if "%{_lib}" == "lib64"
497 %dir %{_prefix}/lib/python%{dirver}
498 %dir %{_prefix}/lib/python%{dirver}/site-packages
499 %dir %{_prefix}/lib/python%{dirver}/site-packages/__pycache__/
500 %endif
501 %dir %{pylibdir}
502 %dir %{dynload_dir}
503 %dir %{site_packages}
504 %dir %{site_packages}/__pycache__/
505 %{site_packages}/README.txt
506 %{pylibdir}/*.py
507 %dir %{pylibdir}/__pycache__/
508 %{pylibdir}/__pycache__/*%{bytecode_suffixes}
509
510 %dir %{pylibdir}/unittest/
511 %dir %{pylibdir}/unittest/__pycache__/
512 %{pylibdir}/unittest/*.py
513 %{pylibdir}/unittest/__pycache__/*%{bytecode_suffixes}
514
515 %dir %{pylibdir}/asyncio/
516 %dir %{pylibdir}/asyncio/__pycache__/
517 %{pylibdir}/asyncio/*.py
518 %{pylibdir}/asyncio/__pycache__/*%{bytecode_suffixes}
519
520 %dir %{pylibdir}/venv/
521 %dir %{pylibdir}/venv/__pycache__/
522 %{pylibdir}/venv/*.py
523 %{pylibdir}/venv/__pycache__/*%{bytecode_suffixes}
524 %{pylibdir}/venv/scripts
525
526 %{pylibdir}/wsgiref
527 %{pylibdir}/xml
528 %{pylibdir}/xmlrpc
529
530 %dir %{pylibdir}/ensurepip/
531 %dir %{pylibdir}/ensurepip/__pycache__/
532 %{pylibdir}/ensurepip/*.py
533 %{pylibdir}/ensurepip/__pycache__/*%{bytecode_suffixes}
534 %exclude %{pylibdir}/ensurepip/_bundled
535
536 %if 0%{?with_rewheel}
537 %dir %{pylibdir}/ensurepip/rewheel/
538 %dir %{pylibdir}/ensurepip/rewheel/__pycache__/
539 %{pylibdir}/ensurepip/rewheel/*.py
540 %{pylibdir}/ensurepip/rewheel/__pycache__/*%{bytecode_suffixes}
541 %endif
542
543 %dir %{pylibdir}/concurrent/
544 %dir %{pylibdir}/concurrent/__pycache__/
545 %{pylibdir}/concurrent/*.py
546 %{pylibdir}/concurrent/__pycache__/*%{bytecode_suffixes}
547
548 %dir %{pylibdir}/concurrent/futures/
549 %dir %{pylibdir}/concurrent/futures/__pycache__/
550 %{pylibdir}/concurrent/futures/*.py
551 %{pylibdir}/concurrent/futures/__pycache__/*%{bytecode_suffixes}
552
553 %{pylibdir}/pydoc_data
554
555 %dir %{pylibdir}/collections/
556 %dir %{pylibdir}/collections/__pycache__/
557 %{pylibdir}/collections/*.py
558 %{pylibdir}/collections/__pycache__/*%{bytecode_suffixes}
559
560 %dir %{pylibdir}/ctypes/
561 %dir %{pylibdir}/ctypes/__pycache__/
562 %{pylibdir}/ctypes/*.py
563 %{pylibdir}/ctypes/__pycache__/*%{bytecode_suffixes}
564 %{pylibdir}/ctypes/macholib
565
566 %{pylibdir}/curses
567
568 %dir %{pylibdir}/dbm/
569 %dir %{pylibdir}/dbm/__pycache__/
570 %{pylibdir}/dbm/*.py
571 %{pylibdir}/dbm/__pycache__/*%{bytecode_suffixes}
572
573 %dir %{pylibdir}/distutils/
574 %dir %{pylibdir}/distutils/__pycache__/
575 %{pylibdir}/distutils/*.py
576 %{pylibdir}/distutils/__pycache__/*%{bytecode_suffixes}
577 %{pylibdir}/distutils/README
578 %{pylibdir}/distutils/command
579
580 %dir %{pylibdir}/email/
581 %dir %{pylibdir}/email/__pycache__/
582 %{pylibdir}/email/*.py
583 %{pylibdir}/email/__pycache__/*%{bytecode_suffixes}
584 %{pylibdir}/email/mime
585 %doc %{pylibdir}/email/architecture.rst
586
587 %{pylibdir}/encodings
588
589 %{pylibdir}/html
590 %{pylibdir}/http
591
592 %dir %{pylibdir}/importlib/
593 %dir %{pylibdir}/importlib/__pycache__/
594 %{pylibdir}/importlib/*.py
595 %{pylibdir}/importlib/__pycache__/*%{bytecode_suffixes}
596
597 %dir %{pylibdir}/json/
598 %dir %{pylibdir}/json/__pycache__/
599 %{pylibdir}/json/*.py
600 %{pylibdir}/json/__pycache__/*%{bytecode_suffixes}
601
602 %{pylibdir}/lib2to3
603 %exclude %{pylibdir}/lib2to3/tests
604
605 %{pylibdir}/logging
606 %{pylibdir}/multiprocessing
607
608 %dir %{pylibdir}/sqlite3/
609 %dir %{pylibdir}/sqlite3/__pycache__/
610 %{pylibdir}/sqlite3/*.py
611 %{pylibdir}/sqlite3/__pycache__/*%{bytecode_suffixes}
612
613 %exclude %{pylibdir}/turtle.py
614 %exclude %{pylibdir}/__pycache__/turtle*%{bytecode_suffixes}
615
616 %{pylibdir}/urllib
617
618
619 %{dynload_dir}/_bisect.%{SOABI_optimized}.so
620 %{dynload_dir}/_bz2.%{SOABI_optimized}.so
621 %{dynload_dir}/_codecs_cn.%{SOABI_optimized}.so
622 %{dynload_dir}/_codecs_hk.%{SOABI_optimized}.so
623 %{dynload_dir}/_codecs_iso2022.%{SOABI_optimized}.so
624 %{dynload_dir}/_codecs_jp.%{SOABI_optimized}.so
625 %{dynload_dir}/_codecs_kr.%{SOABI_optimized}.so
626 %{dynload_dir}/_codecs_tw.%{SOABI_optimized}.so
627 %{dynload_dir}/_crypt.%{SOABI_optimized}.so
628 %{dynload_dir}/_csv.%{SOABI_optimized}.so
629 %{dynload_dir}/_ctypes.%{SOABI_optimized}.so
630 %{dynload_dir}/_curses.%{SOABI_optimized}.so
631 %{dynload_dir}/_curses_panel.%{SOABI_optimized}.so
632 %{dynload_dir}/_dbm.%{SOABI_optimized}.so
633 %{dynload_dir}/_decimal.%{SOABI_optimized}.so
634 %{dynload_dir}/_elementtree.%{SOABI_optimized}.so
635 %{dynload_dir}/_gdbm.%{SOABI_optimized}.so
636 %{dynload_dir}/_hashlib.%{SOABI_optimized}.so
637 %{dynload_dir}/_heapq.%{SOABI_optimized}.so
638 %{dynload_dir}/_json.%{SOABI_optimized}.so
639 %{dynload_dir}/_lsprof.%{SOABI_optimized}.so
640 %{dynload_dir}/_lzma.%{SOABI_optimized}.so
641 %{dynload_dir}/_multibytecodec.%{SOABI_optimized}.so
642 %{dynload_dir}/_multiprocessing.%{SOABI_optimized}.so
643 %{dynload_dir}/_opcode.%{SOABI_optimized}.so
644 %{dynload_dir}/_pickle.%{SOABI_optimized}.so
645 %{dynload_dir}/_posixsubprocess.%{SOABI_optimized}.so
646 %{dynload_dir}/_random.%{SOABI_optimized}.so
647 %{dynload_dir}/_socket.%{SOABI_optimized}.so
648 %{dynload_dir}/_sqlite3.%{SOABI_optimized}.so
649 %{dynload_dir}/_ssl.%{SOABI_optimized}.so
650 %{dynload_dir}/_struct.%{SOABI_optimized}.so
651 %{dynload_dir}/_md5.%{SOABI_optimized}.so
652 %{dynload_dir}/_sha1.%{SOABI_optimized}.so
653 %{dynload_dir}/_sha256.%{SOABI_optimized}.so
654 %{dynload_dir}/_sha512.%{SOABI_optimized}.so
655 %{dynload_dir}/array.%{SOABI_optimized}.so
656 %{dynload_dir}/audioop.%{SOABI_optimized}.so
657 %{dynload_dir}/binascii.%{SOABI_optimized}.so
658 %{dynload_dir}/cmath.%{SOABI_optimized}.so
659 %{dynload_dir}/_datetime.%{SOABI_optimized}.so
660 %{dynload_dir}/fcntl.%{SOABI_optimized}.so
661 %{dynload_dir}/grp.%{SOABI_optimized}.so
662 %{dynload_dir}/math.%{SOABI_optimized}.so
663 %{dynload_dir}/mmap.%{SOABI_optimized}.so
664 %{dynload_dir}/nis.%{SOABI_optimized}.so
665 %{dynload_dir}/ossaudiodev.%{SOABI_optimized}.so
666 %{dynload_dir}/parser.%{SOABI_optimized}.so
667 %{dynload_dir}/pyexpat.%{SOABI_optimized}.so
668 %{dynload_dir}/readline.%{SOABI_optimized}.so
669 %{dynload_dir}/resource.%{SOABI_optimized}.so
670 %{dynload_dir}/select.%{SOABI_optimized}.so
671 %{dynload_dir}/spwd.%{SOABI_optimized}.so
672 %{dynload_dir}/syslog.%{SOABI_optimized}.so
673 %{dynload_dir}/termios.%{SOABI_optimized}.so
674 %{dynload_dir}/_testmultiphase.%{SOABI_optimized}.so
675 %{dynload_dir}/unicodedata.%{SOABI_optimized}.so
676 %{dynload_dir}/xxlimited.%{SOABI_optimized}.so
677 %{dynload_dir}/zlib.%{SOABI_optimized}.so
678 %{dynload_dir}/_asyncio.%{SOABI_optimized}.so
679 %{dynload_dir}/_blake2.%{SOABI_optimized}.so
680 %{dynload_dir}/_sha3.%{SOABI_optimized}.so
681
682
683 %files -n %{lib_name}-testsuite
684 %{pylibdir}/ctypes/test
685 %{pylibdir}/distutils/tests
686 %{pylibdir}/lib2to3/tests
687 %{pylibdir}/sqlite3/test
688 %{pylibdir}/test/*
689 %{pylibdir}/unittest/test
690 # These two are shipped in the main subpackage:
691 %exclude %{pylibdir}/test/test_support.py*
692 %exclude %{pylibdir}/test/__init__.py*
693 %{dynload_dir}/_ctypes_test.%{SOABI_optimized}.so
694 %{dynload_dir}/_testcapi.%{SOABI_optimized}.so
695 %{dynload_dir}/_testbuffer.%{SOABI_optimized}.so
696 %{dynload_dir}/_testimportmultiple.%{SOABI_optimized}.so
697
698
699 %files -n %{lib_name}
700 %{_libdir}/libpython%{LDVERSION_optimized}.so.1*
701
702
703 %files -n %{develname}
704 %{_bindir}/pathfix.py
705 %{_libdir}/libpython%{LDVERSION_optimized}.so
706 %{_libdir}/libpython%{dirver}.so
707 %{_libdir}/libpython%{familyver}.so
708 %{_includedir}/python%{LDVERSION_optimized}
709 %{pylibdir}/config-%{LDVERSION_optimized}
710 %{_bindir}/python%{dirver}-config
711 %{_bindir}/python%{LDVERSION_optimized}-config
712 %{_bindir}/python%{familyver}-config
713 %{_libdir}/pkgconfig/python-%{LDVERSION_optimized}.pc
714 %{_libdir}/pkgconfig/python-%{dirver}.pc
715 %{_libdir}/pkgconfig/python%{familyver}.pc
716
717 %exclude %{_includedir}/python%{LDVERSION_optimized}/pyconfig.h
718 %exclude %{pylibdir}/config-%{LDVERSION_optimized}/Makefile
719 %if %{with valgrind}
720 %{_libdir}/valgrind/valgrind-python3.supp
721 %endif
722
723
724 %files docs
725 %doc html/*/*
726 %{_datadir}/applications/%{_real_vendor}-%{name}-docs.desktop
727
728
729 %files -n tkinter3
730 %{pylibdir}/tkinter/
731 %{dynload_dir}/_tkinter.%{SOABI_optimized}.so
732 %{pylibdir}/idlelib
733 %{site_packages}/pynche
734 %{pylibdir}/turtle.py
735 %{pylibdir}/__pycache__/turtle*%{bytecode_suffixes}
736 %dir %{pylibdir}/turtledemo
737 %{pylibdir}/turtledemo/*.py
738 %{pylibdir}/turtledemo/*.cfg
739 %dir %{pylibdir}/turtledemo/__pycache__/
740 %{pylibdir}/turtledemo/__pycache__/*%{bytecode_suffixes}
741
742
743 %files -n tkinter3-apps
744 %{_bindir}/idle%{familyver}
745 %{_bindir}/idle%{dirver}
746 %{_bindir}/pynche%{familyver}
747 %{_datadir}/applications/%{_real_vendor}-tkinter3.desktop

  ViewVC Help
Powered by ViewVC 1.1.30