diff --git a/python3-distutils-cxx.patch b/python3-distutils-cxx.patch index 2a4e159..6e8ef61 100644 --- a/python3-distutils-cxx.patch +++ b/python3-distutils-cxx.patch @@ -1,19 +1,19 @@ -diff -r d9893d13c628 Lib/_osx_support.py ---- a/Lib/_osx_support.py Sat Apr 06 09:40:02 2013 +0200 -+++ b/Lib/_osx_support.py Sat Apr 27 16:51:50 2013 -0700 -@@ -14,7 +14,7 @@ - # configuration variables that may contain universal build flags, - # like "-arch" or "-isdkroot", that may need customization for - # the user environment --_UNIVERSAL_CONFIG_VARS = ('CFLAGS', 'LDFLAGS', 'CPPFLAGS', 'BASECFLAGS', -+_UNIVERSAL_CONFIG_VARS = ('CFLAGS', 'CXXFLAGS', 'LDFLAGS', 'CPPFLAGS', 'BASECFLAGS', - 'BLDSHARED', 'LDSHARED', 'CC', 'CXX', - 'PY_CFLAGS', 'PY_LDFLAGS', 'PY_CPPFLAGS', - 'PY_CORE_CFLAGS') -diff -r d9893d13c628 Lib/distutils/cygwinccompiler.py ---- a/Lib/distutils/cygwinccompiler.py Sat Apr 06 09:40:02 2013 +0200 -+++ b/Lib/distutils/cygwinccompiler.py Sat Apr 27 16:51:50 2013 -0700 -@@ -139,9 +139,13 @@ +https://bugs.python.org/issue1222585 + +--- Lib/distutils/cygwinccompiler.py ++++ Lib/distutils/cygwinccompiler.py +@@ -125,8 +125,10 @@ + # dllwrap 2.10.90 is buggy + if self.ld_version >= "2.10.90": + self.linker_dll = "gcc" ++ self.linker_dll_cxx = "g++" + else: + self.linker_dll = "dllwrap" ++ self.linker_dll_cxx = "dllwrap" + + # ld_version >= "2.13" support -shared so use it instead of + # -mdll -static +@@ -140,9 +142,13 @@ self.set_executables(compiler='gcc -mcygwin -O -Wall', compiler_so='gcc -mcygwin -mdll -O -Wall', compiler_cxx='g++ -mcygwin -O -Wall', @@ -24,11 +24,11 @@ diff -r d9893d13c628 Lib/distutils/cygwinccompiler.py + (self.linker_dll, shared_option)), + linker_exe_cxx='g++ -mcygwin', + linker_so_cxx=('%s -mcygwin %s' % -+ (self.linker_dll, shared_option))) ++ (self.linker_dll_cxx, shared_option))) # cygwin and mingw32 need different sets of libraries if self.gcc_version == "2.91.57": -@@ -165,8 +169,12 @@ +@@ -166,8 +172,12 @@ raise CompileError(msg) else: # for other files use the C-compiler try: @@ -43,75 +43,40 @@ diff -r d9893d13c628 Lib/distutils/cygwinccompiler.py except DistutilsExecError as msg: raise CompileError(msg) -@@ -297,10 +305,15 @@ - self.set_executables(compiler='gcc -mno-cygwin -O -Wall', - compiler_so='gcc -mno-cygwin -mdll -O -Wall', - compiler_cxx='g++ -mno-cygwin -O -Wall', -+ compiler_so_cxx='g++ -mno-cygwin -mdll -O -Wall', - linker_exe='gcc -mno-cygwin', - linker_so='%s -mno-cygwin %s %s' +@@ -302,9 +312,14 @@ + self.set_executables(compiler='gcc -O -Wall', + compiler_so='gcc -mdll -O -Wall', + compiler_cxx='g++ -O -Wall', ++ compiler_so_cxx='g++ -mdll -O -Wall', + linker_exe='gcc', + linker_so='%s %s %s' % (self.linker_dll, shared_option, -- entry_point)) + entry_point), -+ linker_exe_cxx='g++ -mno-cygwin', -+ linker_so_cxx='%s -mno-cygwin %s %s' -+ % (self.linker_dll, shared_option, -+ entry_point)) ++ linker_exe_cxx='g++', ++ linker_so_cxx='%s %s %s' ++ % (self.linker_dll_cxx, shared_option, + entry_point)) # Maybe we should also append -mthreads, but then the finished # dlls need another dll (mingwm10.dll see Mingw32 docs) - # (-mthreads: Support thread-safe exception handling on `Mingw32') -diff -r d9893d13c628 Lib/distutils/emxccompiler.py ---- a/Lib/distutils/emxccompiler.py Sat Apr 06 09:40:02 2013 +0200 -+++ b/Lib/distutils/emxccompiler.py Sat Apr 27 16:51:50 2013 -0700 -@@ -63,8 +63,12 @@ - # XXX optimization, warnings etc. should be customizable. - self.set_executables(compiler='gcc -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall', - compiler_so='gcc -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall', -+ compiler_cxx='g++ -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall', -+ compiler_so_cxx='g++ -Zomf -Zmt -O3 -fomit-frame-pointer -mprobe -Wall', - linker_exe='gcc -Zomf -Zmt -Zcrtdll', -- linker_so='gcc -Zomf -Zmt -Zcrtdll -Zdll') -+ linker_so='gcc -Zomf -Zmt -Zcrtdll -Zdll', -+ linker_exe_cxx='g++ -Zomf -Zmt -Zcrtdll', -+ linker_so_cxx='g++ -Zomf -Zmt -Zcrtdll -Zdll') - - # want the gcc library statically linked (so that we don't have - # to distribute a version dependent on the compiler we have) -@@ -81,8 +85,12 @@ - raise CompileError(msg) - else: # for other files use the C-compiler - try: -- self.spawn(self.compiler_so + cc_args + [src, '-o', obj] + -- extra_postargs) -+ if self.detect_language(src) == 'c++': -+ self.spawn(self.compiler_so_cxx + cc_args + [src, '-o', obj] + -+ extra_postargs) -+ else: -+ self.spawn(self.compiler_so + cc_args + [src, '-o', obj] + -+ extra_postargs) - except DistutilsExecError as msg: - raise CompileError(msg) - -diff -r d9893d13c628 Lib/distutils/sysconfig.py ---- a/Lib/distutils/sysconfig.py Sat Apr 06 09:40:02 2013 +0200 -+++ b/Lib/distutils/sysconfig.py Sat Apr 27 16:51:50 2013 -0700 -@@ -191,10 +191,12 @@ +--- Lib/distutils/sysconfig.py ++++ Lib/distutils/sysconfig.py +@@ -182,9 +182,12 @@ _osx_support.customize_compiler(_config_vars) _config_vars['CUSTOMIZED_OSX_COMPILER'] = 'True' - (cc, cxx, opt, cflags, ccshared, ldshared, shlib_suffix, ar, ar_flags) = \ - get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS', - 'CCSHARED', 'LDSHARED', 'SHLIB_SUFFIX', 'AR', 'ARFLAGS') -+ (cc, cxx, opt, cflags, ccshared, ldshared, ldcxxshared, shlib_suffix, ar, ar_flags) = \ -+ get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS', 'CCSHARED', 'LDSHARED', -+ 'LDCXXSHARED', 'SO', 'AR', 'ARFLAGS') - ++ (cc, cxx, ccshared, ldshared, ldcxxshared, shlib_suffix, ar, ar_flags) = \ ++ get_config_vars('CC', 'CXX', 'CCSHARED', 'LDSHARED', 'LDCXXSHARED', ++ 'SHLIB_SUFFIX', 'AR', 'ARFLAGS') ++ + cflags = '' + cxxflags = '' - newcc = None + if 'CC' in os.environ: - cc = os.environ['CC'] -@@ -202,19 +204,27 @@ + newcc = os.environ['CC'] +@@ -199,19 +202,27 @@ cxx = os.environ['CXX'] if 'LDSHARED' in os.environ: ldshared = os.environ['LDSHARED'] @@ -140,7 +105,7 @@ diff -r d9893d13c628 Lib/distutils/sysconfig.py if 'AR' in os.environ: ar = os.environ['AR'] if 'ARFLAGS' in os.environ: -@@ -223,13 +233,17 @@ +@@ -220,13 +231,17 @@ archiver = ar + ' ' + ar_flags cc_cmd = cc + ' ' + cflags @@ -159,9 +124,8 @@ diff -r d9893d13c628 Lib/distutils/sysconfig.py archiver=archiver) compiler.shared_lib_extension = shlib_suffix -diff -r d9893d13c628 Lib/distutils/unixccompiler.py ---- a/Lib/distutils/unixccompiler.py Sat Apr 06 09:40:02 2013 +0200 -+++ b/Lib/distutils/unixccompiler.py Sat Apr 27 16:51:50 2013 -0700 +--- Lib/distutils/unixccompiler.py ++++ Lib/distutils/unixccompiler.py @@ -52,14 +52,17 @@ # are pretty generic; they will probably have to be set by an outsider # (eg. using information discovered by the sysconfig about building @@ -242,15 +206,35 @@ diff -r d9893d13c628 Lib/distutils/unixccompiler.py if sys.platform == 'darwin': linker = _osx_support.compiler_fixup(linker, ld_args) -diff -r d9893d13c628 Makefile.pre.in ---- a/Makefile.pre.in Sat Apr 06 09:40:02 2013 +0200 -+++ b/Makefile.pre.in Sat Apr 27 16:51:50 2013 -0700 -@@ -492,7 +492,7 @@ +--- Lib/_osx_support.py ++++ Lib/_osx_support.py +@@ -14,13 +14,13 @@ + # configuration variables that may contain universal build flags, + # like "-arch" or "-isdkroot", that may need customization for + # the user environment +-_UNIVERSAL_CONFIG_VARS = ('CFLAGS', 'LDFLAGS', 'CPPFLAGS', 'BASECFLAGS', +- 'BLDSHARED', 'LDSHARED', 'CC', 'CXX', +- 'PY_CFLAGS', 'PY_LDFLAGS', 'PY_CPPFLAGS', +- 'PY_CORE_CFLAGS') ++_UNIVERSAL_CONFIG_VARS = ('CFLAGS', 'CXXFLAGS', 'LDFLAGS', 'CPPFLAGS', ++ 'BASECFLAGS', 'BLDSHARED', 'LDSHARED', 'LDCXXSHARED', ++ 'CC', 'CXX', 'PY_CFLAGS', 'PY_LDFLAGS', ++ 'PY_CPPFLAGS', 'PY_CORE_CFLAGS') + + # configuration variables that may contain compiler calls +-_COMPILER_CONFIG_VARS = ('BLDSHARED', 'LDSHARED', 'CC', 'CXX') ++_COMPILER_CONFIG_VARS = ('BLDSHARED', 'LDSHARED', 'LDCXXSHARED', 'CC', 'CXX') + + # prefix added to original configuration variable names + _INITPRE = '_OSX_SUPPORT_INITIAL_' +--- Makefile.pre.in ++++ Makefile.pre.in +@@ -568,7 +568,7 @@ *\ -s*|s*) quiet="-q";; \ *) quiet="";; \ esac; \ - $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ + $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' CFLAGS='$(PY_CFLAGS)' \ + _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build - # Build static library diff --git a/python3-h2py-encoding.patch b/python3-h2py-encoding.patch index d594f56..8a0fbb4 100644 --- a/python3-h2py-encoding.patch +++ b/python3-h2py-encoding.patch @@ -1,4 +1,4 @@ -http://bugs.python.org/issue13032 +https://bugs.python.org/issue13032 --- Tools/scripts/h2py.py +++ Tools/scripts/h2py.py diff --git a/python3-lib64.patch b/python3-lib64.patch index 0a4c0c6..c01a789 100644 --- a/python3-lib64.patch +++ b/python3-lib64.patch @@ -1,7 +1,7 @@ -diff -aurN Python-3.3.2.orig/Lib/distutils/command/install.py Python-3.3.2/Lib/distutils/command/install.py ---- Python-3.3.2.orig/Lib/distutils/command/install.py 2013-08-02 10:07:05.378371271 +0200 -+++ Python-3.3.2/Lib/distutils/command/install.py 2013-08-02 10:07:26.360212825 +0200 -@@ -45,14 +45,14 @@ +diff -aurN Python-3.4.2.orig/Lib/distutils/command/install.py Python-3.4.2/Lib/distutils/command/install.py +--- Python-3.4.2.orig/Lib/distutils/command/install.py 2015-02-08 20:07:32.745985651 +0100 ++++ Python-3.4.2/Lib/distutils/command/install.py 2015-02-08 20:09:12.076304977 +0100 +@@ -30,14 +30,14 @@ INSTALL_SCHEMES = { 'unix_prefix': { 'purelib': '$base/lib/python$py_version_short/site-packages', @@ -18,10 +18,10 @@ diff -aurN Python-3.3.2.orig/Lib/distutils/command/install.py Python-3.3.2/Lib/d 'headers': '$base/include/python/$dist_name', 'scripts': '$base/bin', 'data' : '$base', -diff -aurN Python-3.3.2.orig/Lib/distutils/sysconfig.py Python-3.3.2/Lib/distutils/sysconfig.py ---- Python-3.3.2.orig/Lib/distutils/sysconfig.py 2013-08-02 10:07:05.376371191 +0200 -+++ Python-3.3.2/Lib/distutils/sysconfig.py 2013-08-02 10:07:26.360212825 +0200 -@@ -143,8 +143,12 @@ +diff -aurN Python-3.4.2.orig/Lib/distutils/sysconfig.py Python-3.4.2/Lib/distutils/sysconfig.py +--- Python-3.4.2.orig/Lib/distutils/sysconfig.py 2015-02-08 20:07:32.742652195 +0100 ++++ Python-3.4.2/Lib/distutils/sysconfig.py 2015-02-08 20:22:43.019711316 +0100 +@@ -141,8 +141,12 @@ prefix = plat_specific and EXEC_PREFIX or PREFIX if os.name == "posix": @@ -35,13 +35,13 @@ diff -aurN Python-3.3.2.orig/Lib/distutils/sysconfig.py Python-3.3.2/Lib/distuti if standard_lib: return libpython else: -diff -aurN Python-3.3.2.orig/Lib/site.py Python-3.3.2/Lib/site.py ---- Python-3.3.2.orig/Lib/site.py 2013-08-02 10:07:05.372371031 +0200 -+++ Python-3.3.2/Lib/site.py 2013-08-02 10:07:26.360212825 +0200 -@@ -303,12 +303,16 @@ - if sys.platform in ('os2emx', 'riscos'): - sitepackages.append(os.path.join(prefix, "Lib", "site-packages")) - elif os.sep == '/': +diff -aurN Python-3.4.2.orig/Lib/site.py Python-3.4.2/Lib/site.py +--- Python-3.4.2.orig/Lib/site.py 2015-02-08 20:07:32.775986753 +0100 ++++ Python-3.4.2/Lib/site.py 2015-02-08 20:24:14.186877018 +0100 +@@ -304,12 +304,16 @@ + seen.add(prefix) + + if os.sep == '/': + sitepackages.append(os.path.join(prefix, "lib64", + "python" + sys.version[:3], + "site-packages")) @@ -55,10 +55,10 @@ diff -aurN Python-3.3.2.orig/Lib/site.py Python-3.3.2/Lib/site.py sitepackages.append(os.path.join(prefix, "lib", "site-packages")) if sys.platform == "darwin": # for framework builds *only* we add the standard Apple -diff -aurN Python-3.3.2.orig/Lib/sysconfig.py Python-3.3.2/Lib/sysconfig.py ---- Python-3.3.2.orig/Lib/sysconfig.py 2013-08-02 10:07:05.378371271 +0200 -+++ Python-3.3.2/Lib/sysconfig.py 2013-08-02 10:07:26.360212825 +0200 -@@ -21,10 +21,10 @@ +diff -aurN Python-3.4.2.orig/Lib/sysconfig.py Python-3.4.2/Lib/sysconfig.py +--- Python-3.4.2.orig/Lib/sysconfig.py 2015-02-08 20:07:32.739318738 +0100 ++++ Python-3.4.2/Lib/sysconfig.py 2015-02-08 20:27:21.501221891 +0100 +@@ -20,10 +20,10 @@ _INSTALL_SCHEMES = { 'posix_prefix': { @@ -72,7 +72,7 @@ diff -aurN Python-3.3.2.orig/Lib/sysconfig.py Python-3.3.2/Lib/sysconfig.py 'include': '{installed_base}/include/python{py_version_short}{abiflags}', 'platinclude': -@@ -33,10 +33,10 @@ +@@ -32,10 +32,10 @@ 'data': '{base}', }, 'posix_home': { @@ -86,7 +86,7 @@ diff -aurN Python-3.3.2.orig/Lib/sysconfig.py Python-3.3.2/Lib/sysconfig.py 'include': '{installed_base}/include/python', 'platinclude': '{installed_base}/include/python', 'scripts': '{base}/bin', -@@ -81,10 +81,10 @@ +@@ -61,10 +61,10 @@ 'data': '{userbase}', }, 'posix_user': { @@ -100,10 +100,10 @@ diff -aurN Python-3.3.2.orig/Lib/sysconfig.py Python-3.3.2/Lib/sysconfig.py 'include': '{userbase}/include/python{py_version_short}', 'scripts': '{userbase}/bin', 'data': '{userbase}', -diff -aurN Python-3.3.2.orig/Makefile.pre.in Python-3.3.2/Makefile.pre.in ---- Python-3.3.2.orig/Makefile.pre.in 2013-08-02 10:07:05.339369707 +0200 -+++ Python-3.3.2/Makefile.pre.in 2013-08-02 10:21:36.792384672 +0200 -@@ -1177,7 +1177,7 @@ +diff -aurN Python-3.4.2.orig/Makefile.pre.in Python-3.4.2/Makefile.pre.in +--- Python-3.4.2.orig/Makefile.pre.in 2015-02-08 20:07:32.739318738 +0100 ++++ Python-3.4.2/Makefile.pre.in 2015-02-08 20:28:14.416685868 +0100 +@@ -1310,7 +1310,7 @@ # Install the library and miscellaneous stuff needed for extending/embedding # This goes into $(exec_prefix) @@ -112,10 +112,10 @@ diff -aurN Python-3.3.2.orig/Makefile.pre.in Python-3.3.2/Makefile.pre.in # pkgconfig directory LIBPC= $(LIBDIR)/pkgconfig -diff -aurN Python-3.3.2.orig/Modules/getpath.c Python-3.3.2/Modules/getpath.c ---- Python-3.3.2.orig/Modules/getpath.c 2013-08-02 10:07:05.363370670 +0200 -+++ Python-3.3.2/Modules/getpath.c 2013-08-02 10:07:26.361212865 +0200 -@@ -123,7 +123,7 @@ +diff -aurN Python-3.4.2.orig/Modules/getpath.c Python-3.4.2/Modules/getpath.c +--- Python-3.4.2.orig/Modules/getpath.c 2015-02-08 20:07:32.789320577 +0100 ++++ Python-3.4.2/Modules/getpath.c 2015-02-08 20:34:35.188347324 +0100 +@@ -119,7 +119,7 @@ #ifndef PYTHONPATH #define PYTHONPATH PREFIX "/lib/python" VERSION ":" \ @@ -124,42 +124,31 @@ diff -aurN Python-3.3.2.orig/Modules/getpath.c Python-3.3.2/Modules/getpath.c #endif #ifndef LANDMARK -@@ -136,6 +136,7 @@ - static wchar_t *module_search_path = NULL; - static int module_search_path_malloced = 0; - static wchar_t *lib_python = L"lib/python" VERSION; -+static wchar_t *lib64_python = L"lib64/python" VERSION; +@@ -490,13 +490,15 @@ + #endif + wchar_t *_pythonpath, *_prefix, *_exec_prefix; + wchar_t *lib_python; ++ wchar_t *lib64_python; - static void - reduce(wchar_t *dir) -@@ -391,7 +392,7 @@ - wcsncpy(exec_prefix, delim+1, MAXPATHLEN); - else - wcsncpy(exec_prefix, home, MAXPATHLEN); -- joinpath(exec_prefix, lib_python); -+ joinpath(exec_prefix, lib64_python); - joinpath(exec_prefix, L"lib-dynload"); - return 1; - } -@@ -432,7 +433,7 @@ - copy_absolute(exec_prefix, argv0_path, MAXPATHLEN+1); - do { - n = wcslen(exec_prefix); -- joinpath(exec_prefix, lib_python); -+ joinpath(exec_prefix, lib64_python); - joinpath(exec_prefix, L"lib-dynload"); - if (isdir(exec_prefix)) - return 1; -@@ -442,7 +443,7 @@ + _pythonpath = _Py_char2wchar(PYTHONPATH, NULL); + _prefix = _Py_char2wchar(PREFIX, NULL); + _exec_prefix = _Py_char2wchar(EXEC_PREFIX, NULL); + lib_python = _Py_char2wchar("lib/python" VERSION, NULL); ++ lib64_python = _Py_char2wchar("lib64/python" VERSION, NULL); + +- if (!_pythonpath || !_prefix || !_exec_prefix || !lib_python) { ++ if (!_pythonpath || !_prefix || !_exec_prefix || !lib_python || !lib64_python) { + Py_FatalError( + "Unable to decode path variables in getpath.c: " + "memory error"); +@@ -689,13 +691,13 @@ + zip_path[bufsz - 5] = VERSION[2]; - /* Look at configure's EXEC_PREFIX */ - wcsncpy(exec_prefix, _exec_prefix, MAXPATHLEN); -- joinpath(exec_prefix, lib_python); -+ joinpath(exec_prefix, lib64_python); - joinpath(exec_prefix, L"lib-dynload"); - if (isdir(exec_prefix)) - return 1; -@@ -687,7 +688,7 @@ + efound = search_for_exec_prefix(argv0_path, home, +- _exec_prefix, lib_python); ++ _exec_prefix, lib64_python); + if (!efound) { + if (!Py_FrozenFlag) fprintf(stderr, "Could not find platform dependent libraries \n"); wcsncpy(exec_prefix, _exec_prefix, MAXPATHLEN); @@ -168,10 +157,18 @@ diff -aurN Python-3.3.2.orig/Modules/getpath.c Python-3.3.2/Modules/getpath.c } /* If we found EXEC_PREFIX do *not* reduce it! (Yet.) */ -diff -aurN Python-3.3.2.orig/setup.py Python-3.3.2/setup.py ---- Python-3.3.2.orig/setup.py 2013-08-02 10:07:05.407372435 +0200 -+++ Python-3.3.2/setup.py 2013-08-02 10:10:13.610945524 +0200 -@@ -712,11 +712,11 @@ +diff -aurN Python-3.4.2.orig/setup.py Python-3.4.2/setup.py +--- Python-3.4.2.orig/setup.py 2015-02-08 20:07:32.732651827 +0100 ++++ Python-3.4.2/setup.py 2015-02-08 20:38:20.647041951 +0100 +@@ -452,6 +452,7 @@ + # 10520. + if not cross_compiling: + add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') ++ add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib64') + add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') + # only change this for cross builds for 3.3, issues on Mageia + if cross_compiling: +@@ -730,11 +731,11 @@ elif curses_library: readline_libs.append(curses_library) elif self.compiler.find_library_file(lib_dirs + diff --git a/python3-pythonpath.patch b/python3-pythonpath.patch index fe5e48e..69be183 100644 --- a/python3-pythonpath.patch +++ b/python3-pythonpath.patch @@ -58,14 +58,3 @@ '/usr/bin/env python', line) print(filename, ':', repr(line)) f = open(filename, "w") ---- Python-3.0.1/Doc/README.txt.wiget 2009-02-13 00:46:00.000000000 +0100 -+++ Python-3.0.1/Doc/README.txt 2009-03-14 18:12:32.000000000 +0100 -@@ -37,7 +37,7 @@ the top-level index `build/html/index.ht - To use a Python interpreter that's not called ``python``, use the standard - way to set Makefile variables, using e.g. :: - -- make html PYTHON=/usr/bin/python2.5 -+ make html PYTHON=/usr/bin/python3 - - Available make targets are: - diff --git a/python3-regenerate-platspec.patch b/python3-regenerate-platspec.patch index ad36d50..bfb5a82 100644 --- a/python3-regenerate-platspec.patch +++ b/python3-regenerate-platspec.patch @@ -1,24 +1,23 @@ -diff -r d9893d13c628 Lib/plat-aix4/regen ---- a/Lib/plat-aix4/regen Sat Apr 06 09:40:02 2013 +0200 -+++ b/Lib/plat-aix4/regen Sat Apr 27 14:39:28 2013 -0700 +https://bugs.python.org/issue12619 + +--- Lib/plat-aix4/regen ++++ Lib/plat-aix4/regen @@ -5,4 +5,4 @@ exit 1;; esac set -v -h2py.py -i '(u_long)' /usr/include/netinet/in.h +python$EXE ../../Tools/scripts/h2py.py -i '(u_long)' /usr/include/netinet/in.h -diff -r d9893d13c628 Lib/plat-linux/regen ---- a/Lib/plat-linux/regen Sat Apr 06 09:40:02 2013 +0200 -+++ b/Lib/plat-linux/regen Sat Apr 27 14:39:28 2013 -0700 +--- Lib/plat-linux/regen ++++ Lib/plat-linux/regen @@ -5,4 +5,4 @@ exit 1;; esac set -v -h2py -i '(u_long)' /usr/include/sys/types.h /usr/include/netinet/in.h /usr/include/dlfcn.h +python$EXE ../../Tools/scripts/h2py.py -i '(u_long)' /usr/include/sys/types.h /usr/include/netinet/in.h /usr/include/dlfcn.h /usr/include/linux/cdrom.h -diff -r d9893d13c628 Lib/plat-sunos5/regen ---- a/Lib/plat-sunos5/regen Sat Apr 06 09:40:02 2013 +0200 -+++ b/Lib/plat-sunos5/regen Sat Apr 27 14:39:28 2013 -0700 +--- Lib/plat-sunos5/regen ++++ Lib/plat-sunos5/regen @@ -5,5 +5,4 @@ exit 1;; esac @@ -26,9 +25,8 @@ diff -r d9893d13c628 Lib/plat-sunos5/regen -h2py -i '(u_long)' /usr/include/sys/types.h /usr/include/netinet/in.h /usr/include/sys/stropts.h /usr/include/dlfcn.h - +python$EXE ../../Tools/scripts/h2py.py -i '(u_long)' /usr/include/sys/types.h /usr/include/netinet/in.h /usr/include/sys/stropts.h /usr/include/dlfcn.h -diff -r d9893d13c628 Lib/plat-unixware7/regen ---- a/Lib/plat-unixware7/regen Sat Apr 06 09:40:02 2013 +0200 -+++ b/Lib/plat-unixware7/regen Sat Apr 27 14:39:28 2013 -0700 +--- Lib/plat-unixware7/regen ++++ Lib/plat-unixware7/regen @@ -5,5 +5,5 @@ exit 1;; esac @@ -37,20 +35,19 @@ diff -r d9893d13c628 Lib/plat-unixware7/regen -h2py /usr/include/sys/stropts.h +python$EXE ../../Tools/scripts/h2py.py -i '(u_long)' /usr/include/netinet/in.h +python$EXE ../../Tools/scripts/h2py.py /usr/include/sys/stropts.h -diff -r d9893d13c628 Makefile.pre.in ---- a/Makefile.pre.in Sat Apr 06 09:40:02 2013 +0200 -+++ b/Makefile.pre.in Sat Apr 27 14:39:28 2013 -0700 -@@ -440,7 +440,7 @@ +--- Makefile.pre.in ++++ Makefile.pre.in +@@ -464,7 +464,7 @@ # Default target all: build_all --build_all: $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks Modules/_testembed -+build_all: $(BUILDPYTHON) oldsharedmods sharedmods platformspecificmods gdbhooks Modules/_testembed +-build_all: $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks Modules/_testembed python-config ++build_all: $(BUILDPYTHON) oldsharedmods sharedmods platformspecificmods gdbhooks Modules/_testembed python-config # Compile a binary with gcc profile guided optimization. profile-opt: -@@ -495,6 +495,26 @@ - $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ +@@ -572,6 +572,32 @@ + _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build +# Build the platform-specific modules @@ -67,16 +64,22 @@ diff -r d9893d13c628 Makefile.pre.in + @EXE="$(BUILDEXE)"; export EXE; \ + PATH="`pwd`:$$PATH"; export PATH; \ + PYTHONPATH="`pwd`/Lib"; export PYTHONPATH; \ ++ if [ -n "$(MULTIARCH)" ]; then MULTIARCH=$(MULTIARCH); export MULTIARCH; fi; \ ++ if [ "$(BUILD_GNU_TYPE)" = "$(HOST_GNU_TYPE)" ]; then \ ++ PYTHON_FOR_BUILD="$(BUILDPYTHON)"; \ ++ else \ ++ PYTHON_FOR_BUILD="$(PYTHON_FOR_BUILD)"; \ ++ fi; export PYTHON_FOR_BUILD; \ + cd $(srcdir)/Lib/$(PLATDIR); \ + $(RUNSHARED) ./regen || exit 1; \ + for module in *.py; do \ -+ $(RUNSHARED) $(BUILDPYTHON) -c "import py_compile; py_compile.compile('$$module', cfile='/dev/null', doraise=True)" || exit 1; \ ++ $(RUNSHARED) $(BUILDPYTHON) -c "with open('$$module', 'rb') as module: compile(module.read(), '$$module', 'exec')" || exit 1; \ + done + # Build static library # avoid long command lines, same as LIBRARY_OBJS $(LIBRARY): $(LIBRARY_OBJS) -@@ -1052,7 +1072,7 @@ +@@ -1189,7 +1215,7 @@ unittest unittest/test unittest/test/testmock \ venv venv/scripts venv/scripts/posix \ curses pydoc_data $(MACHDEPS) @@ -85,7 +88,7 @@ diff -r d9893d13c628 Makefile.pre.in @for i in $(SCRIPTDIR) $(LIBDEST); \ do \ if test ! -d $(DESTDIR)$$i; then \ -@@ -1135,23 +1155,6 @@ +@@ -1272,23 +1298,6 @@ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt @@ -106,10 +109,10 @@ diff -r d9893d13c628 Makefile.pre.in - fi; \ - cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen - - python-config: $(srcdir)/Misc/python-config.in + python-config: $(srcdir)/Misc/python-config.in Misc/python-config.sh # Substitution happens here, as the completely-expanded BINDIR # is not available in configure -@@ -1466,7 +1469,7 @@ +@@ -1611,7 +1620,7 @@ Python/thread.o: @THREADHEADERS@ # Declare targets that aren't real files diff --git a/python3.spec b/python3.spec index 71163f1..c6344f7 100644 --- a/python3.spec +++ b/python3.spec @@ -1,16 +1,16 @@ -%bcond_with tests # skip tests - -# tests which will not work on 64-bit platforms -%define no64bit_tests test_audioop test_rgbimg test_imageop -# tests which may fail because of builder environment limitations (no /proc or /dev/pts) -%define nobuilder_tests test_resource test_openpty test_socket test_nis test_posix test_locale test_pty - -# tests which fail because of some unknown/unresolved reason (this list should be empty) -# test_site: fails because our site.py is patched to include both /usr/share/... and /usr/lib... -# test_gdb: fails, as the gdb uses old python version -%define broken_tests test_httpservers test_distutils test_cmd_line test_pydoc test_telnetlib test_zlib test_gdb test_site +# based on PLD Linux spec git://git.pld-linux.org/packages/python3.git -%define py_ver 3.3 +%bcond_with tests # skip tests +# 366 tests OK. +# 3 tests failed: +# test_distutils test_socket test_strptime +# 15 tests skipped: +# test_devpoll test_idle test_kqueue test_msilib test_ossaudiodev +# test_pep277 test_startfile test_tcl test_tk test_ttk_guionly +# test_ttk_textonly test_unicode_file test_winreg test_winsound +# test_zipfile64 + +%define py_ver 3.4 %define py_abi %{py_ver}m %define py_prefix %{_prefix} @@ -26,8 +26,8 @@ Release: 2 Epoch: 1 License: PSF Group: Applications -Source0: http://www.python.org/ftp/python/%{version}/Python-%{version}.tar.bz2 -# Source0-md5: 7dffe775f3bea68a44f762a3490e5e28 +Source0: http://www.python.org/ftp/python/%{version}/Python-%{version}.tar.xz +# Source0-md5: 36fc7327c02c6f12fa24fc9ba78039e3 Patch0: %{name}-pythonpath.patch Patch1: %{name}-opt.patch Patch2: %{name}-cflags.patch @@ -51,6 +51,7 @@ BuildRequires: libffi-devel BuildRequires: libstdc++-devel BuildRequires: ncurses-ext-devel BuildRequires: openssl-devel +BuildRequires: python3-modules BuildRequires: readline-devel BuildRequires: rpm-pythonprov BuildRequires: sed @@ -60,9 +61,6 @@ BuildRequires: zlib-devel Requires: %{name}-libs = %{epoch}:%{version}-%{release} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define test_flags -w -l -x -%define test_list %{nobuilder_tests} %{broken_tests} - %description Python is an interpreted, interactive, object-oriented programming language. It incorporates modules, exceptions, dynamic typing, very @@ -109,7 +107,7 @@ IDE for Python language. %package devel Summary: Libraries and header files for building python code Group: Development/Languages/Python -Requires: %{name}-libs = %{epoch}:%{version}-%{release} +Requires: %{name}-modules = %{epoch}:%{version}-%{release} %description devel The Python interpreter is relatively easy to extend with dynamically @@ -137,6 +135,12 @@ Standard Python interface to the Tk GUI toolkit. %prep %setup -qn Python-%{version} + +%{__rm} -r Modules/{expat,zlib,_ctypes/{darwin,libffi*}} + +find . -name '*.py' | xargs -r grep -El '^#! */usr/bin/env python3?' | \ + xargs %{__sed} -i -e '1s,^#! */usr/bin/env python3\?,#!/usr/bin/python3,' + %patch0 -p1 %patch1 -p1 %patch2 -p1 @@ -146,17 +150,14 @@ Standard Python interface to the Tk GUI toolkit. %patch5 -p1 %endif %patch6 -p1 -%patch7 -p1 -%patch8 -p1 +# +%patch7 -p0 +%patch8 -p0 %patch9 -p0 -%{__rm} -r Modules/{expat,zlib,_ctypes/{darwin,libffi*}} - %build %{__aclocal} %{__autoconf} -CPPFLAGS="-I/usr/include/ncursesw %{rpmcppflags}" -export CPPFLAGS %configure \ ac_cv_posix_semaphores_enabled=yes \ ac_cv_broken_sem_getvalue=no \ @@ -168,6 +169,7 @@ export CPPFLAGS --with-system-expat \ --with-system-ffi \ --with-threads \ + --without-ensurepip \ BLDSHARED='$(CC) $(CFLAGS) -shared' \ LDFLAGS="%{rpmcflags} %{rpmldflags}" \ LDSHARED='$(CC) $(CFLAGS) -shared' \ @@ -209,6 +211,9 @@ ln -s python-%{py_ver}.pc $RPM_BUILD_ROOT%{_pkgconfigdir}/python-%{py_abi}.pc # pygettext.py is provided for compatibility install -p Tools/i18n/pygettext.py $RPM_BUILD_ROOT%{_bindir}/pygettext%{py_ver} +# reindent python code +install -p Tools/scripts/reindent.py $RPM_BUILD_ROOT%{_bindir}/pyreindent%{py_ver} + # just to cut the noise, as they are not packaged (now) # first tests (probably could be packaged) %{__rm} -r $RPM_BUILD_ROOT%{py_scriptdir}/test @@ -218,6 +223,7 @@ install -p Tools/i18n/pygettext.py $RPM_BUILD_ROOT%{_bindir}/pygettext%{py_ver} %{__rm} -r $RPM_BUILD_ROOT%{py_scriptdir}/sqlite3/test %{__rm} -r $RPM_BUILD_ROOT%{py_scriptdir}/tkinter/test %{__rm} -r $RPM_BUILD_ROOT%{py_scriptdir}/unittest/test +%{__rm} -r $RPM_BUILD_ROOT%{py_scriptdir}/idlelib/idle_test # other files %{__rm} $RPM_BUILD_ROOT%{py_scriptdir}/plat-*/regen @@ -239,15 +245,11 @@ install -p Tools/i18n/pygettext.py $RPM_BUILD_ROOT%{_bindir}/pygettext%{py_ver} %if %{with tests} %check -LC_ALL=C -export LC_ALL -binlibdir=`echo build/lib.*` -%{__make} test \ - TESTOPTS="%{test_flags} %{test_list}" \ - TESTPYTHON="LD_LIBRARY_PATH=`pwd` PYTHONHOME=`pwd` PYTHONPATH=`pwd`/Lib:`pwd`/$binlibdir ./python -tt" +export LC_ALL=C +export TERM=screen +LD_LIBRARY_PATH=$(pwd) ./python -m test.regrtest -uall -x test_posixpath test_uuid test_site test_urllib2_localnet test_gdb %endif - %clean rm -rf $RPM_BUILD_ROOT @@ -261,7 +263,7 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_bindir}/python3 %attr(755,root,root) %{_bindir}/pyvenv %attr(755,root,root) %{_bindir}/pyvenv-%{py_ver} -%{_mandir}/man1/python%{py_ver}.1* +%{_mandir}/man1/python*.1* %files libs %defattr(644,root,root,755) @@ -284,6 +286,9 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{py_dyndir}/_struct.cpython-*.so # modules required by python library +%{py_scriptdir}/_collections_abc.py +%{py_scriptdir}/_sitebuiltins.py +%{py_scriptdir}/_sysconfigdata.py %{py_scriptdir}/_weakrefset.py %{py_scriptdir}/abc.py %{py_scriptdir}/bisect.py @@ -292,10 +297,11 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/functools.py %{py_scriptdir}/genericpath.py %{py_scriptdir}/heapq.py +%{py_scriptdir}/io.py %{py_scriptdir}/keyword.py %{py_scriptdir}/linecache.py %{py_scriptdir}/locale.py -%{py_scriptdir}/io.py +%{py_scriptdir}/os.py %{py_scriptdir}/posixpath.py %{py_scriptdir}/re.py %{py_scriptdir}/reprlib.py @@ -307,9 +313,10 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/tokenize.py %{py_scriptdir}/traceback.py %{py_scriptdir}/weakref.py -%{py_scriptdir}/os.py # needed by the dynamic sys.lib patch -%{py_scriptdir}/types.py +%{py_scriptdir}/__pycache__/_collections_abc.cpython-*.py[co] +%{py_scriptdir}/__pycache__/_sitebuiltins.cpython-*.py[co] +%{py_scriptdir}/__pycache__/_sysconfigdata.cpython-*.py[co] %{py_scriptdir}/__pycache__/_weakrefset.cpython-*.py[co] %{py_scriptdir}/__pycache__/abc.cpython-*.py[co] %{py_scriptdir}/__pycache__/bisect.cpython-*.py[co] @@ -335,25 +342,15 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/__pycache__/traceback.cpython-*.py[co] %{py_scriptdir}/__pycache__/types.cpython-*.py[co] %{py_scriptdir}/__pycache__/weakref.cpython-*.py[co] +%{py_scriptdir}/types.py + +%{py_scriptdir}/collections # encodings required by python library %dir %{py_scriptdir}/encodings %{py_scriptdir}/encodings/__pycache__ %{py_scriptdir}/encodings/*.py -%dir %{py_scriptdir}/collections -%{py_scriptdir}/collections/*.py -%{py_scriptdir}/collections/__pycache__ - -%{py_scriptdir}/__pycache__/_sysconfigdata.cpython-33.pyc -%{py_scriptdir}/__pycache__/_sysconfigdata.cpython-33.pyo -%{py_scriptdir}/_sysconfigdata.py - -%dir %{py_scriptdir}/venv -%{py_scriptdir}/venv/*.py -%{py_scriptdir}/venv/__pycache__ -%{py_scriptdir}/venv/scripts - %dir %{py_libdir}/config-%{py_abi} %{py_libdir}/config-%{py_abi}/Makefile %{py_libdir}/config-%{py_abi}/Setup @@ -363,9 +360,12 @@ rm -rf $RPM_BUILD_ROOT %files modules %defattr(644,root,root,755) %{py_scriptdir}/__future__.py +%{py_scriptdir}/__phello__.foo.py +%{py_scriptdir}/_bootlocale.py %{py_scriptdir}/_compat_pickle.py %{py_scriptdir}/_dummy_thread.py %{py_scriptdir}/_markupbase.py +%{py_scriptdir}/_osx_support.py %{py_scriptdir}/_pyio.py %{py_scriptdir}/_strptime.py %{py_scriptdir}/_threading_local.py @@ -378,6 +378,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/base64.py %{py_scriptdir}/bdb.py %{py_scriptdir}/binhex.py +%{py_scriptdir}/bz2.py %{py_scriptdir}/cProfile.py %{py_scriptdir}/calendar.py %{py_scriptdir}/cgi.py @@ -391,6 +392,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/configparser.py %{py_scriptdir}/contextlib.py %{py_scriptdir}/copy.py +%{py_scriptdir}/crypt.py %{py_scriptdir}/csv.py %{py_scriptdir}/datetime.py %{py_scriptdir}/decimal.py @@ -398,6 +400,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/dis.py %{py_scriptdir}/doctest.py %{py_scriptdir}/dummy_threading.py +%{py_scriptdir}/enum.py %{py_scriptdir}/filecmp.py %{py_scriptdir}/fileinput.py %{py_scriptdir}/fnmatch.py @@ -413,7 +416,10 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/hmac.py %{py_scriptdir}/imaplib.py %{py_scriptdir}/imghdr.py +%{py_scriptdir}/imp.py %{py_scriptdir}/inspect.py +%{py_scriptdir}/ipaddress.py +%{py_scriptdir}/lzma.py %{py_scriptdir}/macpath.py %{py_scriptdir}/macurl2path.py %{py_scriptdir}/mailbox.py @@ -426,8 +432,9 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/nturl2path.py %{py_scriptdir}/numbers.py %{py_scriptdir}/opcode.py +%{py_scriptdir}/operator.py %{py_scriptdir}/optparse.py -%{py_scriptdir}/os2emxpath.py +%{py_scriptdir}/pathlib.py %{py_scriptdir}/pickle.py %{py_scriptdir}/pickletools.py %{py_scriptdir}/pipes.py @@ -445,6 +452,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/rlcompleter.py %{py_scriptdir}/runpy.py %{py_scriptdir}/sched.py +%{py_scriptdir}/selectors.py %{py_scriptdir}/shelve.py %{py_scriptdir}/shlex.py %{py_scriptdir}/shutil.py @@ -454,6 +462,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/socket.py %{py_scriptdir}/socketserver.py %{py_scriptdir}/ssl.py +%{py_scriptdir}/statistics.py %{py_scriptdir}/string.py %{py_scriptdir}/stringprep.py %{py_scriptdir}/struct.py @@ -469,6 +478,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/this.py %{py_scriptdir}/threading.py %{py_scriptdir}/trace.py +%{py_scriptdir}/tracemalloc.py %{py_scriptdir}/tty.py %{py_scriptdir}/turtle.py %{py_scriptdir}/uu.py @@ -478,10 +488,14 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/webbrowser.py %{py_scriptdir}/xdrlib.py %{py_scriptdir}/zipfile.py + %{py_scriptdir}/__pycache__/__future__.cpython-*.py[co] +%{py_scriptdir}/__pycache__/__phello__.cpython-*.py[co] +%{py_scriptdir}/__pycache__/_bootlocale.cpython-*.py[co] %{py_scriptdir}/__pycache__/_compat_pickle.cpython-*.py[co] %{py_scriptdir}/__pycache__/_dummy_thread.cpython-*.py[co] %{py_scriptdir}/__pycache__/_markupbase.cpython-*.py[co] +%{py_scriptdir}/__pycache__/_osx_support.cpython-*.py[co] %{py_scriptdir}/__pycache__/_pyio.cpython-*.py[co] %{py_scriptdir}/__pycache__/_strptime.cpython-*.py[co] %{py_scriptdir}/__pycache__/_threading_local.cpython-*.py[co] @@ -494,6 +508,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/__pycache__/base64.cpython-*.py[co] %{py_scriptdir}/__pycache__/bdb.cpython-*.py[co] %{py_scriptdir}/__pycache__/binhex.cpython-*.py[co] +%{py_scriptdir}/__pycache__/bz2.cpython-*.py[co] %{py_scriptdir}/__pycache__/cProfile.cpython-*.py[co] %{py_scriptdir}/__pycache__/calendar.cpython-*.py[co] %{py_scriptdir}/__pycache__/cgi.cpython-*.py[co] @@ -507,6 +522,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/__pycache__/configparser.cpython-*.py[co] %{py_scriptdir}/__pycache__/contextlib.cpython-*.py[co] %{py_scriptdir}/__pycache__/copy.cpython-*.py[co] +%{py_scriptdir}/__pycache__/crypt.cpython-*.py[co] %{py_scriptdir}/__pycache__/csv.cpython-*.py[co] %{py_scriptdir}/__pycache__/datetime.cpython-*.py[co] %{py_scriptdir}/__pycache__/decimal.cpython-*.py[co] @@ -514,6 +530,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/__pycache__/dis.cpython-*.py[co] %{py_scriptdir}/__pycache__/doctest.cpython-*.py[co] %{py_scriptdir}/__pycache__/dummy_threading.cpython-*.py[co] +%{py_scriptdir}/__pycache__/enum.cpython-*.py[co] %{py_scriptdir}/__pycache__/filecmp.cpython-*.py[co] %{py_scriptdir}/__pycache__/fileinput.cpython-*.py[co] %{py_scriptdir}/__pycache__/fnmatch.cpython-*.py[co] @@ -529,7 +546,10 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/__pycache__/hmac.cpython-*.py[co] %{py_scriptdir}/__pycache__/imaplib.cpython-*.py[co] %{py_scriptdir}/__pycache__/imghdr.cpython-*.py[co] +%{py_scriptdir}/__pycache__/imp.cpython-*.py[co] %{py_scriptdir}/__pycache__/inspect.cpython-*.py[co] +%{py_scriptdir}/__pycache__/ipaddress.cpython-*.py[co] +%{py_scriptdir}/__pycache__/lzma.cpython-*.py[co] %{py_scriptdir}/__pycache__/macpath.cpython-*.py[co] %{py_scriptdir}/__pycache__/macurl2path.cpython-*.py[co] %{py_scriptdir}/__pycache__/mailbox.cpython-*.py[co] @@ -542,8 +562,9 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/__pycache__/nturl2path.cpython-*.py[co] %{py_scriptdir}/__pycache__/numbers.cpython-*.py[co] %{py_scriptdir}/__pycache__/opcode.cpython-*.py[co] +%{py_scriptdir}/__pycache__/operator.cpython-*.py[co] %{py_scriptdir}/__pycache__/optparse.cpython-*.py[co] -%{py_scriptdir}/__pycache__/os2emxpath.cpython-*.py[co] +%{py_scriptdir}/__pycache__/pathlib.cpython-*.py[co] %{py_scriptdir}/__pycache__/pickle.cpython-*.py[co] %{py_scriptdir}/__pycache__/pickletools.cpython-*.py[co] %{py_scriptdir}/__pycache__/pipes.cpython-*.py[co] @@ -561,6 +582,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/__pycache__/rlcompleter.cpython-*.py[co] %{py_scriptdir}/__pycache__/runpy.cpython-*.py[co] %{py_scriptdir}/__pycache__/sched.cpython-*.py[co] +%{py_scriptdir}/__pycache__/selectors.cpython-*.py[co] %{py_scriptdir}/__pycache__/shelve.cpython-*.py[co] %{py_scriptdir}/__pycache__/shlex.cpython-*.py[co] %{py_scriptdir}/__pycache__/shutil.cpython-*.py[co] @@ -570,6 +592,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/__pycache__/socket.cpython-*.py[co] %{py_scriptdir}/__pycache__/socketserver.cpython-*.py[co] %{py_scriptdir}/__pycache__/ssl.cpython-*.py[co] +%{py_scriptdir}/__pycache__/statistics.cpython-*.py[co] %{py_scriptdir}/__pycache__/string.cpython-*.py[co] %{py_scriptdir}/__pycache__/stringprep.cpython-*.py[co] %{py_scriptdir}/__pycache__/struct.cpython-*.py[co] @@ -585,6 +608,7 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/__pycache__/this.cpython-*.py[co] %{py_scriptdir}/__pycache__/threading.cpython-*.py[co] %{py_scriptdir}/__pycache__/trace.cpython-*.py[co] +%{py_scriptdir}/__pycache__/tracemalloc.cpython-*.py[co] %{py_scriptdir}/__pycache__/tty.cpython-*.py[co] %{py_scriptdir}/__pycache__/turtle.cpython-*.py[co] %{py_scriptdir}/__pycache__/uu.cpython-*.py[co] @@ -595,68 +619,48 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/__pycache__/xdrlib.cpython-*.py[co] %{py_scriptdir}/__pycache__/zipfile.cpython-*.py[co] -%{py_scriptdir}/__phello__.foo.py -%{py_scriptdir}/__pycache__/__phello__.cpython-33.pyc -%{py_scriptdir}/__pycache__/__phello__.cpython-33.pyo -%{py_scriptdir}/__pycache__/bz2.cpython-33.pyc -%{py_scriptdir}/__pycache__/bz2.cpython-33.pyo -%{py_scriptdir}/__pycache__/crypt.cpython-33.pyc -%{py_scriptdir}/__pycache__/crypt.cpython-33.pyo -%{py_scriptdir}/__pycache__/imp.cpython-33.pyc -%{py_scriptdir}/__pycache__/imp.cpython-33.pyo -%{py_scriptdir}/__pycache__/ipaddress.cpython-33.pyc -%{py_scriptdir}/__pycache__/ipaddress.cpython-33.pyo -%{py_scriptdir}/__pycache__/lzma.cpython-33.pyc -%{py_scriptdir}/__pycache__/lzma.cpython-33.pyo -%{py_scriptdir}/bz2.py -%{py_scriptdir}/crypt.py -%{py_scriptdir}/imp.py -%{py_scriptdir}/ipaddress.py -%{py_scriptdir}/lzma.py - -# # list .so modules to be sure that all of them are built -# %attr(755,root,root) %{py_dyndir}/_bisect.cpython-*.so -%attr(755,root,root) %{py_dyndir}/_bz2.cpython-33m.so +%attr(755,root,root) %{py_dyndir}/_bz2.cpython-*.so %attr(755,root,root) %{py_dyndir}/_codecs_cn.cpython-*.so %attr(755,root,root) %{py_dyndir}/_codecs_hk.cpython-*.so %attr(755,root,root) %{py_dyndir}/_codecs_iso2022.cpython-*.so %attr(755,root,root) %{py_dyndir}/_codecs_jp.cpython-*.so %attr(755,root,root) %{py_dyndir}/_codecs_kr.cpython-*.so %attr(755,root,root) %{py_dyndir}/_codecs_tw.cpython-*.so -%attr(755,root,root) %{py_dyndir}/_crypt.cpython-33m.so +%attr(755,root,root) %{py_dyndir}/_crypt.cpython-*.so %attr(755,root,root) %{py_dyndir}/_csv.cpython-*.so %attr(755,root,root) %{py_dyndir}/_ctypes*.cpython-*.so %attr(755,root,root) %{py_dyndir}/_curses.cpython-*.so %attr(755,root,root) %{py_dyndir}/_curses_panel.cpython-*.so %attr(755,root,root) %{py_dyndir}/_datetime.cpython-*.so %attr(755,root,root) %{py_dyndir}/_dbm.cpython-*.so -%attr(755,root,root) %{py_dyndir}/_decimal.cpython-33m.so +%attr(755,root,root) %{py_dyndir}/_decimal.cpython-*.so %attr(755,root,root) %{py_dyndir}/_elementtree.cpython-*.so %attr(755,root,root) %{py_dyndir}/_gdbm.cpython-*.so %attr(755,root,root) %{py_dyndir}/_hashlib.cpython-*.so %attr(755,root,root) %{py_dyndir}/_heapq.cpython-*.so %attr(755,root,root) %{py_dyndir}/_json.cpython-*.so %attr(755,root,root) %{py_dyndir}/_lsprof.cpython-*.so -%attr(755,root,root) %{py_dyndir}/_lzma.cpython-33m.so -%attr(755,root,root) %{py_dyndir}/_md5.cpython-33m.so +%attr(755,root,root) %{py_dyndir}/_lzma.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_md5.cpython-*.so %attr(755,root,root) %{py_dyndir}/_multibytecodec.cpython-*.so %attr(755,root,root) %{py_dyndir}/_multiprocessing.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_opcode.cpython-*.so %attr(755,root,root) %{py_dyndir}/_pickle.cpython-*.so %attr(755,root,root) %{py_dyndir}/_posixsubprocess.cpython-*.so %attr(755,root,root) %{py_dyndir}/_random.cpython-*.so -%attr(755,root,root) %{py_dyndir}/_sha1.cpython-33m.so -%attr(755,root,root) %{py_dyndir}/_sha256.cpython-33m.so -%attr(755,root,root) %{py_dyndir}/_sha512.cpython-33m.so +%attr(755,root,root) %{py_dyndir}/_sha1.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_sha256.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_sha512.cpython-*.so %attr(755,root,root) %{py_dyndir}/_socket.cpython-*.so %attr(755,root,root) %{py_dyndir}/_ssl.cpython-*.so -%attr(755,root,root) %{py_dyndir}/_testbuffer.cpython-33m.so +%attr(755,root,root) %{py_dyndir}/_testbuffer.cpython-*.so %attr(755,root,root) %{py_dyndir}/_testcapi.cpython-*.so +%attr(755,root,root) %{py_dyndir}/_testimportmultiple.cpython-*.so %attr(755,root,root) %{py_dyndir}/array.cpython-*.so -%attr(755,root,root) %{py_dyndir}/atexit.cpython-*.so %attr(755,root,root) %{py_dyndir}/audioop.cpython-*.so %attr(755,root,root) %{py_dyndir}/binascii.cpython-*.so %attr(755,root,root) %{py_dyndir}/cmath.cpython-*.so @@ -671,16 +675,16 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{py_dyndir}/readline.cpython-*.so %attr(755,root,root) %{py_dyndir}/resource.cpython-*.so %attr(755,root,root) %{py_dyndir}/select.cpython-*.so +%attr(755,root,root) %{py_dyndir}/spwd.cpython-*.so %attr(755,root,root) %{py_dyndir}/syslog.cpython-*.so %attr(755,root,root) %{py_dyndir}/termios.cpython-*.so %attr(755,root,root) %{py_dyndir}/time.cpython-*.so -%attr(755,root,root) %{py_dyndir}/spwd.cpython-*.so %attr(755,root,root) %{py_dyndir}/unicodedata.cpython-*.so %attr(755,root,root) %{py_dyndir}/zlib.cpython-*.so -%dir %{py_scriptdir}/plat-* -%{py_scriptdir}/plat-*/__pycache__ -%{py_scriptdir}/plat-*/*.py +%dir %{py_scriptdir}/asyncio +%{py_scriptdir}/asyncio/__pycache__ +%{py_scriptdir}/asyncio/*.py %{py_scriptdir}/concurrent @@ -712,10 +716,16 @@ rm -rf $RPM_BUILD_ROOT %dir %{py_scriptdir}/email %dir %{py_scriptdir}/email/mime -%{py_scriptdir}/email/__pycache__ -%{py_scriptdir}/email/mime/__pycache__ %{py_scriptdir}/email/*.py +%{py_scriptdir}/email/__pycache__ +%{py_scriptdir}/email/architecture.rst %{py_scriptdir}/email/mime/*.py +%{py_scriptdir}/email/mime/__pycache__ + +%dir %{py_scriptdir}/ensurepip +%{py_scriptdir}/ensurepip/__pycache__ +%{py_scriptdir}/ensurepip/*.py +%{py_scriptdir}/ensurepip/_bundled %dir %{py_scriptdir}/html %{py_scriptdir}/html/*.py @@ -725,6 +735,8 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/http/__pycache__ %{py_scriptdir}/http/*.py +%dir %{py_scriptdir}/idlelib + %dir %{py_scriptdir}/importlib %{py_scriptdir}/importlib/__pycache__ %{py_scriptdir}/importlib/*.py @@ -744,13 +756,27 @@ rm -rf $RPM_BUILD_ROOT %{py_scriptdir}/multiprocessing/dummy/__pycache__ %{py_scriptdir}/multiprocessing/dummy/*.py +%dir %{py_scriptdir}/plat-* +%{py_scriptdir}/plat-*/__pycache__ +%{py_scriptdir}/plat-*/*.py + %{py_scriptdir}/turtledemo -%{py_scriptdir}/unittest + +%dir %{py_scriptdir}/unittest +%{py_scriptdir}/unittest/__pycache__ +%{py_scriptdir}/unittest/*.py %dir %{py_scriptdir}/urllib %{py_scriptdir}/urllib/__pycache__ %{py_scriptdir}/urllib/*.py +%dir %{py_scriptdir}/venv +%dir %{py_scriptdir}/venv/scripts +%{py_scriptdir}/venv/*.py +%{py_scriptdir}/venv/__pycache__ +%dir %{py_scriptdir}/venv/scripts/posix +%{py_scriptdir}/venv/scripts/posix/activate + %dir %{py_scriptdir}/wsgiref %{py_scriptdir}/wsgiref/__pycache__ %{py_scriptdir}/wsgiref/*.py @@ -795,7 +821,6 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/idle3 %attr(755,root,root) %{_bindir}/idle%{py_ver} -%dir %{py_scriptdir}/idlelib %dir %{py_scriptdir}/idlelib/Icons %{py_scriptdir}/idlelib/__pycache__ %{py_scriptdir}/idlelib/*.py @@ -819,6 +844,7 @@ rm -rf $RPM_BUILD_ROOT %{py_libdir}/config-%{py_abi}/config.c %{py_libdir}/config-%{py_abi}/config.c.in %{py_libdir}/config-%{py_abi}/python.o +%{py_libdir}/config-%{py_abi}/python-config.py %{_pkgconfigdir}/python-%{py_ver}.pc %{_pkgconfigdir}/python-%{py_abi}.pc %{_pkgconfigdir}/python3.pc @@ -826,6 +852,7 @@ rm -rf $RPM_BUILD_ROOT %files devel-tools %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/pygettext%{py_ver} +%attr(755,root,root) %{_bindir}/pyreindent%{py_ver} %{py_scriptdir}/pdb.py %{py_scriptdir}/profile.py %{py_scriptdir}/pstats.py