python27: new package, python 2.7.9
This commit is contained in:
parent
e6f4e99019
commit
93e4b9b208
98
python27/build.sh
Executable file
98
python27/build.sh
Executable file
@ -0,0 +1,98 @@
|
||||
#!/bin/bash
|
||||
# This is a buildpkg build.sh script
|
||||
# build.sh helper functions
|
||||
. ${BUILDPKG_SCRIPTS}/build.sh.functions
|
||||
#
|
||||
###########################################################
|
||||
# Check the following 4 variables before running the script
|
||||
topdir=python
|
||||
version=2.7.9
|
||||
pkgver=1
|
||||
source[0]=https://www.python.org/ftp/python/2.7.9/Python-$version.tar.xz
|
||||
# If there are no patches, simply comment this
|
||||
patch[0]=python-2.7.9-mmap-fcntl_h.patch
|
||||
patch[1]=python-2.7.9-tgcware.patch
|
||||
patch[2]=python-2.7.9-multiprocessing-without-urandom.patch
|
||||
|
||||
# Source function library
|
||||
. ${BUILDPKG_SCRIPTS}/buildpkg.functions
|
||||
|
||||
# Global settings
|
||||
export CPPFLAGS="-I$prefix/include"
|
||||
export LDFLAGS="-L$prefix/lib -R$prefix/lib"
|
||||
|
||||
configure_args+=(--disable-ipv6 --with-system-expat --enable-shared)
|
||||
make_check_target=test
|
||||
|
||||
# Reduce e.g. 2.7.9 to 2.7
|
||||
pydotver=${version%.*}
|
||||
dynload_dir=$_libdir/python${pydotver}/lib-dynload
|
||||
site_packages=$_libdir/python${pydotver}/site-packages
|
||||
pylibdir=$_libdir/python${pydotver}
|
||||
topsrcdir=Python-${version}
|
||||
|
||||
reg prep
|
||||
prep()
|
||||
{
|
||||
generic_prep
|
||||
setdir source
|
||||
echo "crypt cryptmodule.c" >> Modules/Setup.local
|
||||
rm -f Tools/pynche/*.pyw
|
||||
${__gsed} -i '/INSTALL_SHARED/ s/555/755/' Makefile*
|
||||
}
|
||||
|
||||
reg build
|
||||
build()
|
||||
{
|
||||
generic_build
|
||||
}
|
||||
|
||||
reg check
|
||||
check()
|
||||
{
|
||||
generic_check
|
||||
}
|
||||
|
||||
reg install
|
||||
install()
|
||||
{
|
||||
generic_install DESTDIR
|
||||
setdir source
|
||||
# This borrows heavily from CentOS rpm packages
|
||||
echo '#!/bin/sh' > ${stagedir}${prefix}/$_bindir/pynche${pydotver}
|
||||
echo 'exec `python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(plat_specific = True))"`/pynche/pynche' >> ${stagedir}${prefix}/$_bindir/pynche${pydotver}
|
||||
cp -pr Tools/pynche ${stagedir}${prefix}/$site_packages
|
||||
${__install} -p -m755 Tools/i18n/pygettext.py ${stagedir}${prefix}/$_bindir/pygettext${pydotver}.py
|
||||
${__install} -p -m755 Tools/i18n/msgfmt.py ${stagedir}${prefix}/$_bindir/msgfmt${pydotver}.py
|
||||
${__install} -p -m755 -d ${stagedir}${prefix}/$pylibdir/Tools/scripts
|
||||
${__install} -p -m755 Tools/README ${stagedir}${prefix}/$pylibdir/Tools
|
||||
${__install} -p -m755 Tools/scripts/*py ${stagedir}${prefix}/$pylibdir/Tools/scripts
|
||||
${__mv} ${stagedir}${prefix}/${_bindir}/2to3 ${stagedir}${prefix}/${_bindir}/2to3-${pydotver}
|
||||
${__mv} ${stagedir}${prefix}/${_bindir}/idle ${stagedir}${prefix}/${_bindir}/idle${pydotver}
|
||||
${__mv} ${stagedir}${prefix}/${_bindir}/pydoc ${stagedir}${prefix}/${_bindir}/pydoc${pydotver}
|
||||
${__mv} ${stagedir}${prefix}/${_bindir}/smtpd.py ${stagedir}${prefix}/${_bindir}/smtpd${pydotver}.py
|
||||
${__rm} -f ${stagedir}${prefix}/${_bindir}/python{,-config}
|
||||
${__rm} -f ${stagedir}${prefix}/${_bindir}/python2{,-config}
|
||||
${__rm} -f ${stagedir}${prefix}/${pylibdir}/LICENSE.txt
|
||||
${__rm} -f ${stagedir}${prefix}/${_mandir}/man1/python{,2}.1
|
||||
${__rm} -f ${stagedir}${prefix}/${_libdir}/pkgconfig/python{,2}.pc
|
||||
docs_for python27 LICENSE README
|
||||
docs_for python27-libs LICENSE README
|
||||
}
|
||||
|
||||
reg pack
|
||||
pack()
|
||||
{
|
||||
generic_pack
|
||||
}
|
||||
|
||||
reg distclean
|
||||
distclean()
|
||||
{
|
||||
clean distclean
|
||||
}
|
||||
|
||||
###################################################
|
||||
# No need to look below here
|
||||
###################################################
|
||||
build_sh $*
|
4
python27/meta/ChangeLog
Normal file
4
python27/meta/ChangeLog
Normal file
@ -0,0 +1,4 @@
|
||||
CHANGELOG
|
||||
---------
|
||||
* Sat Mar 21 2015 Tom G. Christensen <swpkg@jupiterrise.com> - 2.7.9-1
|
||||
- Initial package
|
5
python27/meta/depend
Normal file
5
python27/meta/depend
Normal file
@ -0,0 +1,5 @@
|
||||
TGCpy27 python27-libs auto
|
||||
TGCpy27to python27 auto
|
||||
TGCpy27te python27 auto
|
||||
TGCpy27tk python27 auto
|
||||
TGCpy27d python27 auto
|
389
python27/meta/pkgdef
Normal file
389
python27/meta/pkgdef
Normal file
@ -0,0 +1,389 @@
|
||||
[python27]
|
||||
pkgname="${pkgprefix}py27"
|
||||
name="python27 - Programming language"
|
||||
pkgcat="application"
|
||||
pkgvendor="http://python.org"
|
||||
pkgdesc="An interpreted, interactive, object-oriented programming language"
|
||||
pkgver="$pkgver"
|
||||
files(-,root,bin)
|
||||
default_docs
|
||||
$_bindir/pydoc${pydotver}
|
||||
$_bindir/python${pydotver}
|
||||
$_mandir/man1/python${pydotver}.1
|
||||
|
||||
[python27-libs]
|
||||
pkgname="${pkgprefix}py27l"
|
||||
name="python27-libs - Runtime libraries"
|
||||
pkgcat="application"
|
||||
pkgvendor="http://python.org"
|
||||
pkgdesc="The python standard library and libpython dynamic library"
|
||||
pkgver="$pkgver"
|
||||
files(-,root,bin)
|
||||
default_docs
|
||||
$_libdir/libpython*.so.*
|
||||
$site_packages/README
|
||||
$pylibdir/BaseHTTPServer.*
|
||||
$pylibdir/Bastion.*
|
||||
$pylibdir/CGIHTTPServer.*
|
||||
$pylibdir/ConfigParser.*
|
||||
$pylibdir/Cookie.*
|
||||
$pylibdir/DocXMLRPCServer.*
|
||||
$pylibdir/HTMLParser.*
|
||||
$pylibdir/MimeWriter.*
|
||||
$pylibdir/Queue.*
|
||||
$pylibdir/SimpleHTTPServer.*
|
||||
$pylibdir/SimpleXMLRPCServer.*
|
||||
$pylibdir/SocketServer.*
|
||||
$pylibdir/StringIO.*
|
||||
$pylibdir/UserDict.*
|
||||
$pylibdir/UserList.*
|
||||
$pylibdir/UserString.*
|
||||
$pylibdir/_LWPCookieJar.*
|
||||
$pylibdir/_MozillaCookieJar.*
|
||||
$pylibdir/__future__.*
|
||||
$pylibdir/__phello__.*
|
||||
$pylibdir/_abcoll.*
|
||||
$pylibdir/_osx_support.*
|
||||
$pylibdir/_pyio.*
|
||||
$pylibdir/_strptime.*
|
||||
$pylibdir/_sysconfigdata.*
|
||||
$pylibdir/_threading_local.*
|
||||
$pylibdir/_weakrefset.*
|
||||
$pylibdir/abc.*
|
||||
$pylibdir/aifc.*
|
||||
$pylibdir/antigravity.*
|
||||
$pylibdir/anydbm.*
|
||||
$pylibdir/argparse.*
|
||||
$pylibdir/ast.*
|
||||
$pylibdir/asynchat.*
|
||||
$pylibdir/asyncore.*
|
||||
$pylibdir/atexit.*
|
||||
$pylibdir/audiodev.*
|
||||
$pylibdir/base64.*
|
||||
$pylibdir/bdb.*
|
||||
$pylibdir/binhex.*
|
||||
$pylibdir/bisect.*
|
||||
$pylibdir/bsddb/*.*
|
||||
$pylibdir/cProfile.*
|
||||
$pylibdir/calendar.*
|
||||
$pylibdir/cgi.*
|
||||
$pylibdir/cgitb.*
|
||||
$pylibdir/chunk.*
|
||||
$pylibdir/cmd.*
|
||||
$pylibdir/code.*
|
||||
$pylibdir/codecs.*
|
||||
$pylibdir/codeop.*
|
||||
$pylibdir/collections.*
|
||||
$pylibdir/colorsys.*
|
||||
$pylibdir/commands.*
|
||||
$pylibdir/compileall.*
|
||||
$pylibdir/compiler/*.*
|
||||
$pylibdir/config/Makefile
|
||||
$pylibdir/contextlib.*
|
||||
$pylibdir/cookielib.*
|
||||
$pylibdir/copy.*
|
||||
$pylibdir/copy_reg.*
|
||||
$pylibdir/csv.*
|
||||
$pylibdir/ctypes/*.*
|
||||
$pylibdir/ctypes/macholib/*
|
||||
$pylibdir/curses/*.*
|
||||
$pylibdir/dbhash.*
|
||||
$pylibdir/decimal.*
|
||||
$pylibdir/difflib.*
|
||||
$pylibdir/dircache.*
|
||||
$pylibdir/dis.*
|
||||
$pylibdir/distutils/README
|
||||
$pylibdir/distutils/*.*
|
||||
$pylibdir/distutils/command/*.*
|
||||
$pylibdir/doctest.*
|
||||
$pylibdir/dumbdbm.*
|
||||
$pylibdir/dummy_thread.*
|
||||
$pylibdir/dummy_threading.*
|
||||
$pylibdir/email/*.*
|
||||
$pylibdir/email/mime/*.*
|
||||
$pylibdir/encodings/*.*
|
||||
$pylibdir/ensurepip/*.*
|
||||
$pylibdir/ensurepip/_bundled/*.*
|
||||
$pylibdir/filecmp.*
|
||||
$pylibdir/fileinput.*
|
||||
$pylibdir/fnmatch.*
|
||||
$pylibdir/formatter.*
|
||||
$pylibdir/fpformat.*
|
||||
$pylibdir/fractions.*
|
||||
$pylibdir/ftplib.*
|
||||
$pylibdir/functools.*
|
||||
$pylibdir/genericpath.*
|
||||
$pylibdir/getopt.*
|
||||
$pylibdir/getpass.*
|
||||
$pylibdir/gettext.*
|
||||
$pylibdir/glob.*
|
||||
$pylibdir/gzip.*
|
||||
$pylibdir/hashlib.*
|
||||
$pylibdir/heapq.*
|
||||
$pylibdir/hmac.*
|
||||
$pylibdir/hotshot/*.*
|
||||
$pylibdir/htmlentitydefs.*
|
||||
$pylibdir/htmllib.*
|
||||
$pylibdir/httplib.*
|
||||
$pylibdir/idlelib/ChangeLog
|
||||
$pylibdir/idlelib/*.*
|
||||
$pylibdir/idlelib/Icons/*.*
|
||||
$pylibdir/idlelib/idle_test/*.*
|
||||
$pylibdir/ihooks.*
|
||||
$pylibdir/imaplib.*
|
||||
$pylibdir/imghdr.*
|
||||
$pylibdir/importlib/*.*
|
||||
$pylibdir/imputil.*
|
||||
$pylibdir/inspect.*
|
||||
$pylibdir/io.*
|
||||
$pylibdir/json/*.*
|
||||
$pylibdir/keyword.*
|
||||
$pylibdir/lib2to3/*.*
|
||||
$pylibdir/lib2to3/pgen2/*.*
|
||||
$pylibdir/lib2to3/fixes/*.*
|
||||
$pylibdir/linecache.*
|
||||
$pylibdir/locale.*
|
||||
$pylibdir/logging/*.*
|
||||
$pylibdir/macpath.*
|
||||
$pylibdir/macurl2path.*
|
||||
$pylibdir/mailbox.*
|
||||
$pylibdir/mailcap.*
|
||||
$pylibdir/markupbase.*
|
||||
$pylibdir/md5.*
|
||||
$pylibdir/mhlib.*
|
||||
$pylibdir/mimetools.*
|
||||
$pylibdir/mimetypes.*
|
||||
$pylibdir/mimify.*
|
||||
$pylibdir/modulefinder.*
|
||||
$pylibdir/multifile.*
|
||||
$pylibdir/multiprocessing/*.*
|
||||
$pylibdir/multiprocessing/dummy/*.*
|
||||
$pylibdir/mutex.*
|
||||
$pylibdir/netrc.*
|
||||
$pylibdir/new.*
|
||||
$pylibdir/nntplib.*
|
||||
$pylibdir/ntpath.*
|
||||
$pylibdir/nturl2path.*
|
||||
$pylibdir/numbers.*
|
||||
$pylibdir/opcode.*
|
||||
$pylibdir/optparse.*
|
||||
$pylibdir/os.*
|
||||
$pylibdir/os2emxpath.*
|
||||
$pylibdir/pdb.*
|
||||
$pylibdir/pickle.*
|
||||
$pylibdir/pickletools.*
|
||||
$pylibdir/pipes.*
|
||||
$pylibdir/pkgutil.*
|
||||
$pylibdir/plat-sunos5/*
|
||||
$pylibdir/platform.*
|
||||
$pylibdir/plistlib.*
|
||||
$pylibdir/popen2.*
|
||||
$pylibdir/poplib.*
|
||||
$pylibdir/posixfile.*
|
||||
$pylibdir/posixpath.*
|
||||
$pylibdir/pprint.*
|
||||
$pylibdir/profile.*
|
||||
$pylibdir/pstats.*
|
||||
$pylibdir/pty.*
|
||||
$pylibdir/py_compile.*
|
||||
$pylibdir/pyclbr.*
|
||||
$pylibdir/pydoc.*
|
||||
$pylibdir/pydoc_data/*
|
||||
$pylibdir/quopri.*
|
||||
$pylibdir/random.*
|
||||
$pylibdir/re.*
|
||||
$pylibdir/repr.*
|
||||
$pylibdir/rexec.*
|
||||
$pylibdir/rfc822.*
|
||||
$pylibdir/rlcompleter.*
|
||||
$pylibdir/robotparser.*
|
||||
$pylibdir/runpy.*
|
||||
$pylibdir/sched.*
|
||||
$pylibdir/sets.*
|
||||
$pylibdir/sgmllib.*
|
||||
$pylibdir/sha.*
|
||||
$pylibdir/shelve.*
|
||||
$pylibdir/shlex.*
|
||||
$pylibdir/shutil.*
|
||||
$pylibdir/site.*
|
||||
$pylibdir/smtpd.*
|
||||
$pylibdir/smtplib.*
|
||||
$pylibdir/sndhdr.*
|
||||
$pylibdir/socket.*
|
||||
$pylibdir/sqlite3/*.*
|
||||
$pylibdir/sre.*
|
||||
$pylibdir/sre_compile.*
|
||||
$pylibdir/sre_constants.*
|
||||
$pylibdir/sre_parse.*
|
||||
$pylibdir/ssl.*
|
||||
$pylibdir/stat.*
|
||||
$pylibdir/statvfs.*
|
||||
$pylibdir/string.*
|
||||
$pylibdir/stringold.*
|
||||
$pylibdir/stringprep.*
|
||||
$pylibdir/struct.*
|
||||
$pylibdir/subprocess.*
|
||||
$pylibdir/sunau.*
|
||||
$pylibdir/sunaudio.*
|
||||
$pylibdir/symbol.*
|
||||
$pylibdir/symtable.*
|
||||
$pylibdir/sysconfig.*
|
||||
$pylibdir/tabnanny.*
|
||||
$pylibdir/tarfile.*
|
||||
$pylibdir/telnetlib.*
|
||||
$pylibdir/tempfile.*
|
||||
$pylibdir/textwrap.*
|
||||
$pylibdir/this.*
|
||||
$pylibdir/threading.*
|
||||
$pylibdir/timeit.*
|
||||
$pylibdir/toaiff.*
|
||||
$pylibdir/token.*
|
||||
$pylibdir/tokenize.*
|
||||
$pylibdir/trace.*
|
||||
$pylibdir/traceback.*
|
||||
$pylibdir/tty.*
|
||||
$pylibdir/types.*
|
||||
$pylibdir/unittest/*.*
|
||||
$pylibdir/unittest/test/*.*
|
||||
$pylibdir/urllib.*
|
||||
$pylibdir/urllib2.*
|
||||
$pylibdir/urlparse.*
|
||||
$pylibdir/user.*
|
||||
$pylibdir/uu.*
|
||||
$pylibdir/uuid.*
|
||||
$pylibdir/warnings.*
|
||||
$pylibdir/wave.*
|
||||
$pylibdir/weakref.*
|
||||
$pylibdir/webbrowser.*
|
||||
$pylibdir/whichdb.*
|
||||
$pylibdir/wsgiref.*
|
||||
$pylibdir/wsgiref/*.*
|
||||
$pylibdir/xdrlib.*
|
||||
$pylibdir/xml
|
||||
$pylibdir/xmllib.*
|
||||
$pylibdir/xmlrpclib.*
|
||||
$pylibdir/zipfile.*
|
||||
$dynload_dir/Python-${version}-py${pydotver}.egg-info
|
||||
$dynload_dir/_bisect.so*
|
||||
$dynload_dir/_codecs_cn.so*
|
||||
$dynload_dir/_codecs_hk.so*
|
||||
$dynload_dir/_codecs_iso2022.so*
|
||||
$dynload_dir/_codecs_jp.so*
|
||||
$dynload_dir/_codecs_kr.so*
|
||||
$dynload_dir/_codecs_tw.so*
|
||||
$dynload_dir/_collections.so*
|
||||
$dynload_dir/_csv.so*
|
||||
$dynload_dir/_ctypes.so*
|
||||
$dynload_dir/_ctypes_test.so*
|
||||
$dynload_dir/_curses_failed.so*
|
||||
$dynload_dir/_curses_panel_failed.so*
|
||||
$dynload_dir/_elementtree.so*
|
||||
$dynload_dir/_functools.so*
|
||||
$dynload_dir/_hashlib.so*
|
||||
$dynload_dir/_heapq.so*
|
||||
$dynload_dir/_hotshot.so*
|
||||
$dynload_dir/_io.so*
|
||||
$dynload_dir/_json.so*
|
||||
$dynload_dir/_locale.so*
|
||||
$dynload_dir/_lsprof.so*
|
||||
$dynload_dir/_multibytecodec.so*
|
||||
$dynload_dir/_multiprocessing.so*
|
||||
$dynload_dir/_random.so*
|
||||
$dynload_dir/_socket.so*
|
||||
$dynload_dir/_sqlite3.so*
|
||||
$dynload_dir/_ssl.so*
|
||||
$dynload_dir/_struct.so*
|
||||
$dynload_dir/_testcapi.so*
|
||||
$dynload_dir/array.so*
|
||||
$dynload_dir/audioop.so*
|
||||
$dynload_dir/binascii.so*
|
||||
$dynload_dir/bz2.so*
|
||||
$dynload_dir/cPickle.so*
|
||||
$dynload_dir/cStringIO.so*
|
||||
$dynload_dir/cmath.so*
|
||||
$dynload_dir/datetime.so*
|
||||
$dynload_dir/dbm.so*
|
||||
$dynload_dir/dl.so*
|
||||
$dynload_dir/fcntl.so*
|
||||
$dynload_dir/future_builtins.so*
|
||||
$dynload_dir/grp.so*
|
||||
$dynload_dir/imageop.so*
|
||||
$dynload_dir/itertools.so*
|
||||
$dynload_dir/math.so*
|
||||
$dynload_dir/mmap.so*
|
||||
$dynload_dir/nis.so*
|
||||
$dynload_dir/operator.so*
|
||||
$dynload_dir/parser.so*
|
||||
$dynload_dir/pyexpat.so*
|
||||
$dynload_dir/readline.so*
|
||||
$dynload_dir/resource.so*
|
||||
$dynload_dir/select.so*
|
||||
$dynload_dir/spwd.so*
|
||||
$dynload_dir/strop.so*
|
||||
$dynload_dir/sunaudiodev.so*
|
||||
$dynload_dir/syslog.so*
|
||||
$dynload_dir/termios.so*
|
||||
$dynload_dir/time.so*
|
||||
$dynload_dir/unicodedata.so*
|
||||
$dynload_dir/zlib.so*
|
||||
|
||||
[python27-tools]
|
||||
pkgname="${pkgprefix}py27to"
|
||||
name="python27-tools - Development tools for Python"
|
||||
pkgcat="application"
|
||||
pkgvendor="http://python.org"
|
||||
pkgdesc="A collection of development tools included with Python"
|
||||
pkgver="$pkgver"
|
||||
files(-,root,bin)
|
||||
$_bindir/2to3-${pydotver}
|
||||
$_bindir/idle${pydotver}
|
||||
$_bindir/smtpd${pydotver}.py
|
||||
$_bindir/pygettext${pydotver}.py
|
||||
$_bindir/msgfmt${pydotver}.py
|
||||
$_bindir/pynche${pydotver}
|
||||
$pylibdir/Tools
|
||||
$site_packages/pynche
|
||||
|
||||
[python27-test]
|
||||
pkgname="${pkgprefix}py27te"
|
||||
name="python27-test - Test modules from the main python package"
|
||||
pkgcat="application"
|
||||
pkgvendor="http://python.org"
|
||||
pkgdesc="Test modules that are rarely if ever needed in production"
|
||||
pkgver="$pkgver"
|
||||
files(-,root,bin)
|
||||
$pylibdir/test
|
||||
$pylibdir/bsddb/test
|
||||
$pylibdir/ctypes/test
|
||||
$pylibdir/email/test
|
||||
$pylibdir/sqlite3/test
|
||||
$pylibdir/distutils/tests
|
||||
$pylibdir/json/tests
|
||||
$pylibdir/lib2to3/tests
|
||||
|
||||
[python27-devel]
|
||||
pkgname="${pkgprefix}py27d"
|
||||
name="python27-devel - Development support for Python"
|
||||
pkgcat="application"
|
||||
pkgvendor="http://python.org"
|
||||
pkgdesc="Files needed for developing with Python"
|
||||
pkgver="$pkgver"
|
||||
files(-,root,bin)
|
||||
$_bindir/python*config
|
||||
$_includedir/python${pydotver}
|
||||
$_libdir/pkgconfig/python-${pydotver}.pc
|
||||
$pylibdir/config
|
||||
$pylibdir/distutils
|
||||
$_libdir/libpython*.so
|
||||
|
||||
[python27-tkinter]
|
||||
pkgname="${pkgprefix}py27tk"
|
||||
name="python27-tkinter - Graphical User interface for Python"
|
||||
pkgcat="application"
|
||||
pkgvendor="http://python.org"
|
||||
pkgdesc="A graphical user interface for the Python scripting language"
|
||||
pkgver="$pkgver"
|
||||
files(-,root,bin)
|
||||
$dynload_dir/_tkinter.so
|
||||
$pylibdir/lib-tk
|
||||
|
12
python27/src/python-2.7.9-mmap-fcntl_h.patch
Normal file
12
python27/src/python-2.7.9-mmap-fcntl_h.patch
Normal file
@ -0,0 +1,12 @@
|
||||
--- Python-2.7.9/Modules/mmapmodule.c.fnctl 2014-12-10 16:59:55.000000000 +0100
|
||||
+++ Python-2.7.9/Modules/mmapmodule.c 2015-03-21 12:20:50.544882000 +0100
|
||||
@@ -23,9 +23,7 @@
|
||||
|
||||
#ifndef MS_WINDOWS
|
||||
#define UNIX
|
||||
-# ifdef __APPLE__
|
||||
# include <fcntl.h>
|
||||
-# endif
|
||||
#endif
|
||||
|
||||
#ifdef MS_WINDOWS
|
@ -0,0 +1,34 @@
|
||||
Patch based on http://bugs.python.org/issue6645
|
||||
|
||||
--- Python-2.7.9/Lib/multiprocessing/process.py.nourandom 2014-12-10 16:59:39.000000000 +0100
|
||||
+++ Python-2.7.9/Lib/multiprocessing/process.py 2015-04-20 08:20:38.663871000 +0200
|
||||
@@ -306,7 +306,12 @@
|
||||
self._popen = None
|
||||
self._counter = itertools.count(1)
|
||||
self._children = set()
|
||||
- self._authkey = AuthenticationString(os.urandom(32))
|
||||
+ try:
|
||||
+ self._authkey = AuthenticationString(os.urandom(32))
|
||||
+ except:
|
||||
+ import random
|
||||
+ bytes = [chr(random.randrange(256)) for i in range(32)]
|
||||
+ self._authkey = AuthenticationString(bytes)
|
||||
self._tempdir = None
|
||||
|
||||
_current_process = _MainProcess()
|
||||
--- Python-2.7.9/Lib/multiprocessing/connection.py.nourandom 2014-12-10 16:59:39.000000000 +0100
|
||||
+++ Python-2.7.9/Lib/multiprocessing/connection.py 2015-04-20 08:21:05.113976000 +0200
|
||||
@@ -412,7 +412,12 @@
|
||||
def deliver_challenge(connection, authkey):
|
||||
import hmac
|
||||
assert isinstance(authkey, bytes)
|
||||
- message = os.urandom(MESSAGE_LENGTH)
|
||||
+ try:
|
||||
+ message = os.urandom(MESSAGE_LENGTH)
|
||||
+ except:
|
||||
+ import random
|
||||
+ bytes = [chr(random.randrange(256)) for i in range(MESSAGE_LENGTH)]
|
||||
+ self._authkey = AuthenticationString(bytes)
|
||||
connection.send_bytes(CHALLENGE + message)
|
||||
digest = hmac.new(authkey, message).digest()
|
||||
response = connection.recv_bytes(256) # reject large message
|
16
python27/src/python-2.7.9-tgcware.patch
Normal file
16
python27/src/python-2.7.9-tgcware.patch
Normal file
@ -0,0 +1,16 @@
|
||||
--- Python-2.7.9/setup.py.tgcware 2014-12-10 17:00:01.000000000 +0100
|
||||
+++ Python-2.7.9/setup.py 2015-03-21 13:24:40.240267000 +0100
|
||||
@@ -438,10 +438,10 @@
|
||||
os.unlink(tmpfile)
|
||||
|
||||
def detect_modules(self):
|
||||
- # Ensure that /usr/local is always used
|
||||
+ # Ensure that /usr/tgcware is always used
|
||||
if not cross_compiling:
|
||||
- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||
- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||
+ add_dir_to_list(self.compiler.library_dirs, '/usr/tgcware/lib')
|
||||
+ add_dir_to_list(self.compiler.include_dirs, '/usr/tgcware/include')
|
||||
if cross_compiling:
|
||||
self.add_gcc_paths()
|
||||
self.add_multiarch_paths()
|
Loading…
x
Reference in New Issue
Block a user