diff options
-rw-r--r-- | python/python3/patches/python3.no-static-library.diff | 59 | ||||
-rw-r--r-- | python/python3/patches/python3.x86_64.diff | 88 | ||||
-rw-r--r-- | python/python3/python3.SlackBuild | 39 | ||||
-rw-r--r-- | python/python3/python3.info | 10 | ||||
-rw-r--r-- | python/python3/slack-desc | 10 |
5 files changed, 143 insertions, 63 deletions
diff --git a/python/python3/patches/python3.no-static-library.diff b/python/python3/patches/python3.no-static-library.diff new file mode 100644 index 0000000000000..dd7bdad6a1c97 --- /dev/null +++ b/python/python3/patches/python3.no-static-library.diff @@ -0,0 +1,59 @@ +diff -uar Python-3.3.0.orig/Makefile.pre.in Python-3.3.0/Makefile.pre.in +--- Python-3.3.0.orig/Makefile.pre.in 2012-09-29 11:00:41.000000000 +0300 ++++ Python-3.3.0/Makefile.pre.in 2012-10-09 21:55:38.253943598 +0300 +@@ -463,7 +463,7 @@ + + + # Build the interpreter +-$(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) ++$(BUILDPYTHON): Modules/python.o $(LDLIBRARY) $(PY3LIBRARY) + $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) + + platform: $(BUILDPYTHON) $(SYSCONFIGDATA) +@@ -479,18 +479,6 @@ + $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ + $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build + +-# Build static library +-# avoid long command lines, same as LIBRARY_OBJS +-$(LIBRARY): $(LIBRARY_OBJS) +- -rm -f $@ +- $(AR) $(ARFLAGS) $@ Modules/getbuildinfo.o +- $(AR) $(ARFLAGS) $@ $(PARSER_OBJS) +- $(AR) $(ARFLAGS) $@ $(OBJECT_OBJS) +- $(AR) $(ARFLAGS) $@ $(PYTHON_OBJS) Python/frozen.o +- $(AR) $(ARFLAGS) $@ $(MODULE_OBJS) $(SIGNAL_OBJS) +- $(AR) $(ARFLAGS) $@ $(MODOBJS) +- $(RANLIB) $@ +- + libpython$(LDVERSION).so: $(LIBRARY_OBJS) + if test $(INSTSONAME) != $(LDLIBRARY); then \ + $(BLDSHARED) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ +@@ -580,7 +568,7 @@ + echo "-----------------------------------------------"; \ + fi + +-Modules/_testembed: Modules/_testembed.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) ++Modules/_testembed: Modules/_testembed.o $(LDLIBRARY) $(PY3LIBRARY) + $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/_testembed.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) + + ############################################################################ +@@ -1148,18 +1136,6 @@ + else true; \ + fi; \ + done +- @if test -d $(LIBRARY); then :; else \ +- if test "$(PYTHONFRAMEWORKDIR)" = no-framework; then \ +- if test "$(SO)" = .dll; then \ +- $(INSTALL_DATA) $(LDLIBRARY) $(DESTDIR)$(LIBPL) ; \ +- else \ +- $(INSTALL_DATA) $(LIBRARY) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \ +- $(RANLIB) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \ +- fi; \ +- else \ +- echo Skip install of $(LIBRARY) - use make frameworkinstall; \ +- fi; \ +- fi + $(INSTALL_DATA) Modules/config.c $(DESTDIR)$(LIBPL)/config.c + $(INSTALL_DATA) Modules/python.o $(DESTDIR)$(LIBPL)/python.o + $(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in diff --git a/python/python3/patches/python3.x86_64.diff b/python/python3/patches/python3.x86_64.diff index 963f59cc33348..d97019c5441d6 100644 --- a/python/python3/patches/python3.x86_64.diff +++ b/python/python3/patches/python3.x86_64.diff @@ -1,6 +1,6 @@ -diff -uar Python-3.2.2.orig/Lib/distutils/command/install.py Python-3.2.2/Lib/distutils/command/install.py ---- Python-3.2.2.orig/Lib/distutils/command/install.py 2011-09-03 19:16:40.000000000 +0300 -+++ Python-3.2.2/Lib/distutils/command/install.py 2011-09-05 23:16:30.986061070 +0300 +diff -uar Python-3.3.0.orig/Lib/distutils/command/install.py Python-3.3.0/Lib/distutils/command/install.py +--- Python-3.3.0.orig/Lib/distutils/command/install.py 2012-09-29 11:00:27.000000000 +0300 ++++ Python-3.3.0/Lib/distutils/command/install.py 2012-10-09 21:15:04.125445023 +0300 @@ -44,15 +44,15 @@ INSTALL_SCHEMES = { @@ -21,10 +21,10 @@ diff -uar Python-3.2.2.orig/Lib/distutils/command/install.py Python-3.2.2/Lib/di 'headers': '$base/include/python/$dist_name', 'scripts': '$base/bin', 'data' : '$base', -diff -uar Python-3.2.2.orig/Lib/distutils/sysconfig.py Python-3.2.2/Lib/distutils/sysconfig.py ---- Python-3.2.2.orig/Lib/distutils/sysconfig.py 2011-09-03 19:16:40.000000000 +0300 -+++ Python-3.2.2/Lib/distutils/sysconfig.py 2011-09-05 23:16:30.986061070 +0300 -@@ -123,7 +123,7 @@ +diff -uar Python-3.3.0.orig/Lib/distutils/sysconfig.py Python-3.3.0/Lib/distutils/sysconfig.py +--- Python-3.3.0.orig/Lib/distutils/sysconfig.py 2012-09-29 11:00:28.000000000 +0300 ++++ Python-3.3.0/Lib/distutils/sysconfig.py 2012-10-09 21:16:03.057946912 +0300 +@@ -140,7 +140,7 @@ if os.name == "posix": libpython = os.path.join(prefix, @@ -33,10 +33,10 @@ diff -uar Python-3.2.2.orig/Lib/distutils/sysconfig.py Python-3.2.2/Lib/distutil if standard_lib: return libpython else: -diff -uar Python-3.2.2.orig/Lib/site.py Python-3.2.2/Lib/site.py ---- Python-3.2.2.orig/Lib/site.py 2011-09-03 19:16:42.000000000 +0300 -+++ Python-3.2.2/Lib/site.py 2011-09-05 23:16:30.986061070 +0300 -@@ -285,13 +285,13 @@ +diff -uar Python-3.3.0.orig/Lib/site.py Python-3.3.0/Lib/site.py +--- Python-3.3.0.orig/Lib/site.py 2012-09-29 11:00:31.000000000 +0300 ++++ Python-3.3.0/Lib/site.py 2012-10-09 21:17:48.131059160 +0300 +@@ -303,13 +303,13 @@ if sys.platform in ('os2emx', 'riscos'): sitepackages.append(os.path.join(prefix, "Lib", "site-packages")) elif os.sep == '/': @@ -52,41 +52,41 @@ diff -uar Python-3.2.2.orig/Lib/site.py Python-3.2.2/Lib/site.py if sys.platform == "darwin": # for framework builds *only* we add the standard Apple # locations. -diff -uar Python-3.2.2.orig/Lib/sysconfig.py Python-3.2.2/Lib/sysconfig.py ---- Python-3.2.2.orig/Lib/sysconfig.py 2011-09-03 19:16:42.000000000 +0300 -+++ Python-3.2.2/Lib/sysconfig.py 2011-09-05 23:16:30.994061003 +0300 +diff -uar Python-3.3.0.orig/Lib/sysconfig.py Python-3.3.0/Lib/sysconfig.py +--- Python-3.3.0.orig/Lib/sysconfig.py 2012-09-29 11:00:31.000000000 +0300 ++++ Python-3.3.0/Lib/sysconfig.py 2012-10-09 21:24:26.697695600 +0300 @@ -21,10 +21,10 @@ _INSTALL_SCHEMES = { 'posix_prefix': { -- 'stdlib': '{base}/lib/python{py_version_short}', +- 'stdlib': '{installed_base}/lib/python{py_version_short}', - 'platstdlib': '{platbase}/lib/python{py_version_short}', - 'purelib': '{base}/lib/python{py_version_short}/site-packages', - 'platlib': '{platbase}/lib/python{py_version_short}/site-packages', -+ 'stdlib': '{base}/lib64/python{py_version_short}', ++ 'stdlib': '{installed_base}/lib64/python{py_version_short}', + 'platstdlib': '{platbase}/lib64/python{py_version_short}', + 'purelib': '{base}/lib64/python{py_version_short}/site-packages', + 'platlib': '{platbase}/lib64/python{py_version_short}/site-packages', 'include': - '{base}/include/python{py_version_short}{abiflags}', + '{installed_base}/include/python{py_version_short}{abiflags}', 'platinclude': @@ -33,10 +33,10 @@ 'data': '{base}', }, 'posix_home': { -- 'stdlib': '{base}/lib/python', +- 'stdlib': '{installed_base}/lib/python', - 'platstdlib': '{base}/lib/python', - 'purelib': '{base}/lib/python', - 'platlib': '{base}/lib/python', -+ 'stdlib': '{base}/lib64/python', ++ 'stdlib': '{installed_base}/lib64/python', + 'platstdlib': '{base}/lib64/python', + 'purelib': '{base}/lib64/python', + 'platlib': '{base}/lib64/python', - 'include': '{base}/include/python', - 'platinclude': '{base}/include/python', + 'include': '{installed_base}/include/python', + 'platinclude': '{installed_base}/include/python', 'scripts': '{base}/bin', @@ -81,10 +81,10 @@ - 'data' : '{userbase}', + 'data': '{userbase}', }, 'posix_user': { - 'stdlib': '{userbase}/lib/python{py_version_short}', @@ -99,11 +99,11 @@ diff -uar Python-3.2.2.orig/Lib/sysconfig.py Python-3.2.2/Lib/sysconfig.py + 'platlib': '{userbase}/lib64/python{py_version_short}/site-packages', 'include': '{userbase}/include/python{py_version_short}', 'scripts': '{userbase}/bin', - 'data' : '{userbase}', -diff -uar Python-3.2.2.orig/Makefile.pre.in Python-3.2.2/Makefile.pre.in ---- Python-3.2.2.orig/Makefile.pre.in 2011-09-03 19:16:45.000000000 +0300 -+++ Python-3.2.2/Makefile.pre.in 2011-09-05 23:16:30.994061003 +0300 -@@ -106,7 +106,7 @@ + 'data': '{userbase}', +diff -uar Python-3.3.0.orig/Makefile.pre.in Python-3.3.0/Makefile.pre.in +--- Python-3.3.0.orig/Makefile.pre.in 2012-09-29 11:00:41.000000000 +0300 ++++ Python-3.3.0/Makefile.pre.in 2012-10-09 21:26:05.949858929 +0300 +@@ -108,7 +108,7 @@ MANDIR= @mandir@ INCLUDEDIR= @includedir@ CONFINCLUDEDIR= $(exec_prefix)/include @@ -112,9 +112,9 @@ diff -uar Python-3.2.2.orig/Makefile.pre.in Python-3.2.2/Makefile.pre.in ABIFLAGS= @ABIFLAGS@ # Detailed destination directories -diff -uar Python-3.2.2.orig/Modules/getpath.c Python-3.2.2/Modules/getpath.c ---- Python-3.2.2.orig/Modules/getpath.c 2011-09-03 19:16:46.000000000 +0300 -+++ Python-3.2.2/Modules/getpath.c 2011-09-05 23:16:30.995060994 +0300 +diff -uar Python-3.3.0.orig/Modules/getpath.c Python-3.3.0/Modules/getpath.c +--- Python-3.3.0.orig/Modules/getpath.c 2012-09-29 11:00:45.000000000 +0300 ++++ Python-3.3.0/Modules/getpath.c 2012-10-09 21:30:59.047390113 +0300 @@ -122,8 +122,8 @@ #endif @@ -135,7 +135,7 @@ diff -uar Python-3.2.2.orig/Modules/getpath.c Python-3.2.2/Modules/getpath.c static void reduce(wchar_t *dir) -@@ -583,7 +583,7 @@ +@@ -677,7 +677,7 @@ } else wcsncpy(zip_path, _prefix, MAXPATHLEN); @@ -144,7 +144,7 @@ diff -uar Python-3.2.2.orig/Modules/getpath.c Python-3.2.2/Modules/getpath.c bufsz = wcslen(zip_path); /* Replace "00" with version */ zip_path[bufsz - 6] = VERSION[0]; zip_path[bufsz - 5] = VERSION[2]; -@@ -593,7 +593,7 @@ +@@ -687,7 +687,7 @@ fprintf(stderr, "Could not find platform dependent libraries <exec_prefix>\n"); wcsncpy(exec_prefix, _exec_prefix, MAXPATHLEN); @@ -153,19 +153,19 @@ diff -uar Python-3.2.2.orig/Modules/getpath.c Python-3.2.2/Modules/getpath.c } /* If we found EXEC_PREFIX do *not* reduce it! (Yet.) */ -diff -uar Python-3.2.2.orig/setup.py Python-3.2.2/setup.py ---- Python-3.2.2.orig/setup.py 2011-09-03 19:16:50.000000000 +0300 -+++ Python-3.2.2/setup.py 2011-09-05 23:16:30.995060994 +0300 -@@ -396,7 +396,7 @@ - # Ensure that /usr/local is always used, but the local build +diff -uar Python-3.3.0.orig/setup.py Python-3.3.0/setup.py +--- Python-3.3.0.orig/setup.py 2012-09-29 11:00:50.000000000 +0300 ++++ Python-3.3.0/setup.py 2012-10-09 21:33:43.444006602 +0300 +@@ -459,7 +459,7 @@ # directories (i.e. '.' and 'Include') must be first. See issue # 10520. -- 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') - self.add_multiarch_paths() - -@@ -643,11 +643,11 @@ + 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: +@@ -729,11 +729,11 @@ elif curses_library: readline_libs.append(curses_library) elif self.compiler.find_library_file(lib_dirs + @@ -179,7 +179,7 @@ diff -uar Python-3.2.2.orig/setup.py Python-3.2.2/setup.py extra_link_args=readline_extra_link_args, libraries=readline_libs) ) else: -@@ -684,8 +684,8 @@ +@@ -770,8 +770,8 @@ if krb5_h: ssl_incs += krb5_h ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs, diff --git a/python/python3/python3.SlackBuild b/python/python3/python3.SlackBuild index ad9e4f7f02f37..05f2520e62ca0 100644 --- a/python/python3/python3.SlackBuild +++ b/python/python3/python3.SlackBuild @@ -1,11 +1,29 @@ #!/bin/sh # Slackware build script for python3 -# Written by Audrius Kažukauskas <audrius@neutrino.lt> -# Based on Patrick Volkerding's official build script for python + +# Copyright 2012 Audrius Kažukauskas <audrius@neutrino.lt> +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PRGNAM=python3 -VERSION=${VERSION:-3.2.3} +VERSION=${VERSION:-3.3.0} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -37,9 +55,9 @@ fi set -eu # Location for Python site-packages: -SITEPK=$PKG/usr/lib${LIBDIRSUFFIX}/python3.2/site-packages +SITEPK=$PKG/usr/lib${LIBDIRSUFFIX}/python3.3/site-packages # same as above without $PKG -TOOLSDIR=/usr/lib${LIBDIRSUFFIX}/python3.2/site-packages +TOOLSDIR=/usr/lib${LIBDIRSUFFIX}/python3.3/site-packages rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT @@ -49,6 +67,8 @@ tar xvf $CWD/Python-$VERSION.tar.xz cd Python-$VERSION patch -p1 < $CWD/patches/python3.readline.set_pre_input_hook.diff +# We don't want a large libpython*.a: +patch -p1 < $CWD/patches/python3.no-static-library.diff if [ "$ARCH" = "x86_64" ]; then # Install to lib64 instead of lib: @@ -66,7 +86,6 @@ chmod -R u+w,go+r-w,a-s+X . --with-threads \ --enable-ipv6 \ --enable-shared \ - --with-computed-gotos \ --build=$ARCH-slackware-linux make @@ -74,9 +93,11 @@ make altinstall DESTDIR=$PKG # Create a few useful symlinks. ( cd $PKG/usr/bin - ln -sf python3.2 python3 - ln -sf python3.2*-config python3.2-config - ln -sf pydoc3.2 pydoc3 + ln -sf python3.3 python3 + ln -sf python3.3*-config python3.3-config + ln -sf pydoc3.3 pydoc3 + ln -sf pyvenv-3.3 pyvenv + ln -sf idle3.3 idle3 ) # We'll install the python-tools under site-packages: diff --git a/python/python3/python3.info b/python/python3/python3.info index 58401f5d60e64..c7cf075e69248 100644 --- a/python/python3/python3.info +++ b/python/python3/python3.info @@ -1,10 +1,10 @@ PRGNAM="python3" -VERSION="3.2.3" +VERSION="3.3.0" HOMEPAGE="http://python.org/" -DOWNLOAD="http://python.org/ftp/python/3.2.3/Python-3.2.3.tar.xz \ - http://python.org/ftp/python/doc/3.2.3/python-3.2.3-docs-html.tar.bz2" -MD5SUM="187564726f2c1473d301c586acc24847 \ - c970e7bcbc3268a3dbc2de5c15b5a3d3" +DOWNLOAD="http://python.org/ftp/python/3.3.0/Python-3.3.0.tar.xz \ + http://python.org/ftp/python/doc/3.3.0/python-3.3.0-docs-html.tar.bz2" +MD5SUM="2e7533b4009ac4adae62a7797a442e7a \ + d8de7264eb5b03b54044825b765324c7" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="" diff --git a/python/python3/slack-desc b/python/python3/slack-desc index 694d9ed798ffe..bfc8d5c5544e5 100644 --- a/python/python3/slack-desc +++ b/python/python3/slack-desc @@ -1,9 +1,9 @@ # HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line -# up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must -# make exactly 11 lines for the formatting to be correct. It's also -# customary to leave one space after the ':'. +# The "handy ruler" below makes it easier to edit a package description. +# Line up the first '|' above the ':' following the base package name, and +# the '|' on the right side marks the last column you can put a character in. +# You must make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':' except on otherwise blank lines. |-----handy-ruler------------------------------------------------------| python3: python3 (object-oriented interpreted programming language) |