[Python-checkins] python/dist/src/PC/os2emx Makefile, 1.4.2.2, 1.4.2.3 README.os2emx, 1.1.2.2, 1.1.2.3 getpathp.c, 1.1.2.2, 1.1.2.3

jhylton@users.sourceforge.net jhylton at users.sourceforge.net
Sun Oct 16 07:24:08 CEST 2005


Update of /cvsroot/python/python/dist/src/PC/os2emx
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27718/PC/os2emx

Modified Files:
      Tag: ast-branch
	Makefile README.os2emx getpathp.c 
Log Message:
Merge head to branch (for the last time)


Index: Makefile
===================================================================
RCS file: /cvsroot/python/python/dist/src/PC/os2emx/Makefile,v
retrieving revision 1.4.2.2
retrieving revision 1.4.2.3
diff -u -d -r1.4.2.2 -r1.4.2.3
--- Makefile	7 Jan 2005 07:04:23 -0000	1.4.2.2
+++ Makefile	16 Oct 2005 05:24:05 -0000	1.4.2.3
@@ -59,6 +59,8 @@
 HAVE_GDBM=	no
 # Do you have the BZ2 compression library installed?
 HAVE_BZ2=	no
+# Do you have the OpenSSL libraries installed
+HAVE_OPENSSL=	no
 
 # === install locations ===
 # default value of PYTHONHOME
@@ -129,10 +131,26 @@
   AR=		ar
 endif
 
+
+# === Build time resource settings ===
+
 # EMX's default number of file handles is 40, which is sometimes insufficient
 # (the tempfile regression test tries to create 100 temporary files)
 NFILES=250
 
+# The default stack size for child threads is 64k bytes, which is
+# insufficient for some applications which do a lot of work in threads
+# (such as Zope, especially in conjunction with Plone).
+# Note that this setting is distinct from the stack size for the main
+# thread, which is set via the %.def rule below.
+# EMX documents that the thread stack size should be at least 32768 bytes;
+# for Zope/Plone at least 128k bytes is recommended.
+# Uncomment & adjust the next line to override the default stack size:
+#CFLAGS+=	-DTHREAD_STACK_SIZE=0x20000
+
+
+# === The environment ===
+
 # Source file paths
 SRCPATH=.;../../Python;../../Parser;../../Objects;../../Include;../../Modules
 # Python contains the central core, containing the builtins and interpreter.
@@ -215,7 +233,7 @@
 	@echo Creating .DEF file: $@
 	@echo NAME $(notdir $*) $(EXETYPE.$(notdir $*).exe) >$@
 	@echo DESCRIPTION $(DQUOTE)$(DESCRIPTION.$(notdir $*).exe)$(DQUOTE) >>$@
-	@echo STACKSIZE 1572864 >>$@
+	@echo STACKSIZE 2097152 >>$@
 
 # Output file names
 PYTHON_VER=	2.4
@@ -460,6 +478,9 @@
 ifeq ($(HAVE_BZ2),yes)
   HARDEXTMODULES+=	bz2
 endif
+ifeq ($(HAVE_OPENSSL),yes)
+  HARDEXTMODULES+=	_ssl
+endif
 
 # Expat is now distributed with the Python source
 HARDEXTMODULES+=	pyexpat
@@ -655,6 +676,9 @@
 bz2$(MODULE.EXT): $(OUT)bz2module$O $(OUT)bz2_m.def $(PYTHON.IMPLIB)
 	$(LD) $(LDFLAGS.DLL) -o $@ $(^^) $(L^) $(LIBS) -lbz2
 
+_ssl$(MODULE.EXT): $(OUT)_ssl$O $(OUT)_ssl_m.def $(PYTHON.IMPLIB)
+	$(LD) $(LDFLAGS.DLL) -o $@ $(^^) $(L^) $(LIBS) -lssl -lcrypto
+
 # the test target
 test:
 	-find ../../Lib -name "*.py[co]" -exec rm {} ";"

Index: README.os2emx
===================================================================
RCS file: /cvsroot/python/python/dist/src/PC/os2emx/README.os2emx,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -d -r1.1.2.2 -r1.1.2.3
--- README.os2emx	7 Jan 2005 07:04:23 -0000	1.1.2.2
+++ README.os2emx	16 Oct 2005 05:24:05 -0000	1.1.2.3
@@ -1,4 +1,4 @@
-This is a port of Python 2.4 to OS/2 using the EMX development tools
+This is a port of Python 2.5 to OS/2 using the EMX development tools
 =========================================================================
 
 What's new since the previous release
@@ -10,11 +10,11 @@
 Licenses and info about Python and EMX
 --------------------------------------
 
-Please read the file README.Python-2.4 included in this package for 
-information about Python 2.4.  This file is the README file from the 
-Python 2.4 source distribution available via http://www.python.org/ 
-and its mirrors.  The file LICENCE.Python-2.4 is the text of the Licence 
-from the Python 2.4 source distribution.
+Please read the file README.Python-2.5 included in this package for 
+information about Python 2.5.  This file is the README file from the 
+Python 2.5 source distribution available via http://www.python.org/ 
+and its mirrors.  The file LICENCE.Python-2.5 is the text of the Licence 
+from the Python 2.5 source distribution.
 
 Note that the EMX package that this package depends on is released under 
 the GNU General Public Licence.  Please refer to the documentation 
@@ -46,7 +46,7 @@
 
 The best known would be that by Jeff Rush, most recently of version 
 1.5.2.  Jeff used IBM's Visual Age C++ (v3) for his ports, and his 
-patches have been included in the Python 2.4 source distribution.
+patches have been included in the Python 2.5 source distribution.
 
 Andy Zabolotny implemented a port of Python v1.5.2 using the EMX 
 development tools.  His patches against the Python v1.5.2 source 
@@ -92,7 +92,7 @@
 to compile & link the executable.  This is so that fork() works (see 
 "YOU HAVE BEEN WARNED" item 1).
 
-Python24.dll is created as a normal OMF DLL, with an OMF import 
+Python25.dll is created as a normal OMF DLL, with an OMF import 
 library and module definition file.  There is also an a.out (.a) import 
 library to support linking the DLL to a.out executables.  The DLL 
 requires the EMX runtime DLLs.
@@ -148,7 +148,7 @@
 
 Upstream source patches:
 
-No updates to the Python 2.4 release have become available.
+No updates to the Python 2.5 release have become available.
 
 Eberhard Mattes' EMXFIX04 update to his EMX 0.9d tools suite includes 
 bug fixes for the BSD DB library.  The bsddb module included in this 
@@ -157,7 +157,7 @@
 Library and other distributed Python code:
 
 The Python standard library lives in the Lib directory.  All the standard 
-library code included with the Python 2.4 source distribution is included 
+library code included with the Python 2.5 source distribution is included 
 in the binary archive, with the exception of the dos-8x3 and tkinter 
 subdirectories which have been omitted to reduce the size of the binary 
 archive - the dos-8x3 components are unnecessary duplicates and Tkinter 
@@ -172,7 +172,7 @@
 also been omitted.
 
 All subdirectories omitted from the binary archive can be reconstituted 
-from the Python 2.4 source distribution, if desired.
+from the Python 2.5 source distribution, if desired.
 
 Support for building Python extensions:
 
@@ -190,15 +190,15 @@
 ---------
 
 This port is packaged as follows:
-- python-2.4-os2emx-bin-03????.zip  (binaries, library modules)
-- python-2.4-os2emx-src-03????      (patches+makefiles for non-Python code)
+- python-2.5-os2emx-bin-03????.zip  (binaries, library modules)
+- python-2.5-os2emx-src-03????      (patches+makefiles for non-Python code)
 
 As all the Python specific patches for the port are now part of the 
 Python release tarball, only the patches and makefiles involved in 
 building external libraries for optional extensions are included in 
 the source archive.
 
-Documentation for the Python language, as well as the Python 2.4 
+Documentation for the Python language, as well as the Python 2.5 
 source distibution, can be obtained from the Python website 
 (http://www.python.org/) or the Python project pages at Sourceforge 
 (http://sf.net/projects/python/).
@@ -213,7 +213,7 @@
 Unpack this archive, preserving the subdirectories, in the root directory 
 of the drive where you want Python to live.
 
-Add the Python directory (eg C:\Python24) to the PATH and LIBPATH 
+Add the Python directory (eg C:\Python25) to the PATH and LIBPATH 
 variables in CONFIG.SYS.
 
 You should then set the PYTHONHOME and PYTHONPATH environment variables 
@@ -223,9 +223,9 @@
 should be set to the semicolon separated list of principal Python library 
 directories.
 I use:
-  SET PYTHONHOME=F:/Python24
-  SET PYTHONPATH=F:/Python24/Lib;F:/Python24/Lib/plat-os2emx;
-                 F:/Python24/Lib/lib-dynload;F:/Python24/Lib/site-packages
+  SET PYTHONHOME=F:/Python25
+  SET PYTHONPATH=F:/Python25/Lib;F:/Python25/Lib/plat-os2emx;
+                 F:/Python25/Lib/lib-dynload;F:/Python25/Lib/site-packages
 
 NOTE!:  the PYTHONPATH setting above is linewrapped for this document - it 
 should all be on one line in CONFIG.SYS!
@@ -238,7 +238,7 @@
 distribution.  This can be used by setting the TERMINFO environment variable 
 to the path of the Terminfo subdirectory below the Python home directory.
 On my system this looks like:
-  SET TERMINFO=F:/Python24/Terminfo
+  SET TERMINFO=F:/Python25/Terminfo
 
 For the TERM environment variable, I would try one of the following:
   SET TERM=ansi
@@ -252,8 +252,8 @@
 you can change into the Python home directory and run the COMPILEALL.CMD 
 batch file.
 
-You can execute the regression tests included with the Python 2.4 source 
-distribution by changing to the Python 2.4 home directory and executing the 
+You can execute the regression tests included with the Python 2.5 source 
+distribution by changing to the Python 2.5 home directory and executing the 
 REGRTEST.CMD batch file.  The following tests are known to fail at this 
 time:
 - test_mhlib (I don't know of any port of MH to OS/2);
@@ -299,7 +299,7 @@
 1. decide if you need to change the location of the Python installation.
    If you wish to do this, set the value of the Makefile variable LIB_DIR 
    to the directory you wish to use for PYTHONHOME 
-   (eg /usr/local/lib/python2.4).
+   (eg /usr/local/lib/python2.5).
 
    If you want Python to find its library without the PYTHONHOME 
    environment variable set, set the value of the Makefile variable 
@@ -309,7 +309,7 @@
    to be installed in a directory other than the PYTHONHOME directory, set 
    the value of the Makefile variable EXE_DIR to the appropriate directory.
 
-3. If you wish the Python core DLL (python24.dll) to be installed in a 
+3. If you wish the Python core DLL (python25.dll) to be installed in a 
    directory other than the directory in which the Python executables are 
    installed (by default, the PYTHONHOME directory), set the value of the 
    Makefile variable DLL_DIR to the appropriate directory.  This DLL must 
@@ -330,6 +330,7 @@
    ncurses               HAVE_NCURSES
    GNU gdbm              HAVE_GDBM
    libbz2                HAVE_BZ2
+   OpenSSL               HAVE_OPENSSL
 
    Please note that you need to check that what you have installed 
    is compatible with Python's build options.  In particular, the 
@@ -651,6 +652,22 @@
 27.  As of Python 2.4, the mpz, rotor and xreadlines modules have been 
 dropped from the Python source tree.
 
+28.  The subprocess module was added to the standard library relatively
+late in the 2.4 development cycle.  Unfortunately I haven't had the
+round tuits to adapt the module to the EMX environment yet, and
+test_subprocess has a number of failures as a result.
+
+29.  The default stack size for threads has been 64k.  This is proving
+insufficient for some codebases, such as Zope.  The thread stack size
+still defaults to 64k, but this can now be increased by defining
+THREAD_STACK_SIZE to an appropriate value in the Makefile (which contains
+a commented out definition for 128kB thread stacks).  I have seen
+references to heavy Zope/Plone usage requiring 1MB thread stacks on
+FreeBSD and Linux, but doubt that for most likely usage on OS/2 that
+more than 256kB is necessary.  The size of the required stacks (main 
+and thread) can vary significantly depending on which version of gcc
+is used along with the compiler optimisations selected.
+
 ... probably other issues that I've not encountered, or don't remember :-(
 
 If you encounter other difficulties with this port, which can be 
@@ -690,4 +707,4 @@
 E-mail: andymac at bullseye.apana.org.au, or andymac at pcug.org.au
 Web:    http://www.andymac.org/
 
-3 October, 2004.
+17 February, 2005.

Index: getpathp.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/PC/os2emx/getpathp.c,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -d -r1.1.2.2 -r1.1.2.3
--- getpathp.c	7 Jan 2005 07:04:23 -0000	1.1.2.2
+++ getpathp.c	16 Oct 2005 05:24:05 -0000	1.1.2.3
@@ -11,7 +11,7 @@
    * Python always adds an empty entry at the start, which corresponds
      to the current directory.
 
-   * If the PYTHONPATH env. var. exists, it's entries are added next.
+   * If the PYTHONPATH env. var. exists, its entries are added next.
 
    * We attempt to locate the "Python Home" - if the PYTHONHOME env var
      is set, we believe it.  Otherwise, we use the path of our host .EXE's



More information about the Python-checkins mailing list