From 1994c7f1cfe5cd11b999c7a3daeae3f4b3dbc250 Mon Sep 17 00:00:00 2001 From: Andrew MacIntyre Date: Sun, 18 Aug 2002 06:31:01 +0000 Subject: [PATCH] Prep for 2.3: - update DLL version number - add files required for 2.3 (no changes to modules though) - restructure build of pgen.exe NOTE: As I don't have the VACPP compiler, these changes are untested. Apart from slightly re-ordering some file lists, and matching file name casing, I believe these changes are the minimum necessary to build 2.3 with VACPP. --- PC/os2vacpp/makefile | 73 +++++++++++++++++++++++--------------------- 1 file changed, 39 insertions(+), 34 deletions(-) diff --git a/PC/os2vacpp/makefile b/PC/os2vacpp/makefile index 680a8e6b3b3..13eeb1921d1 100644 --- a/PC/os2vacpp/makefile +++ b/PC/os2vacpp/makefile @@ -6,10 +6,10 @@ # for OS/2 compiler, version 3.0, with Fixpack 8 applied. It uses # version 4.0 of the NMAKE tool that comes with that package. # -# The output of the build is a largish Python15.DLL containing the +# The output of the build is a largish Python23.DLL containing the # essential modules of Python and a small Python.exe program to start # the interpreter. When embedding Python within another program, only -# Python15.DLL is needed. +# Python23.DLL is needed. # # These two binaries can be statically linked with the VisualAge C/C++ # runtime library (producing larger binaries), or dynamically linked @@ -133,24 +133,33 @@ PYTHON = \ PARSER = \ $(PATHOBJ)\Acceler.obj \ $(PATHOBJ)\Grammar1.obj \ - $(PATHOBJ)\MyReadline.obj \ + $(PATHOBJ)\ListNode.obj \ $(PATHOBJ)\Node.obj \ $(PATHOBJ)\Parser.obj \ $(PATHOBJ)\ParseTok.obj \ - $(PATHOBJ)\Tokenizer.obj + $(PATHOBJ)\BitSet.obj \ + $(PATHOBJ)\MetaGrammar.obj \ + $(PATHOBJ)\Tokenizer.obj \ + $(PATHOBJ)\MyReadline.obj # Python Object Types OBJECTS = \ $(PATHOBJ)\Abstract.obj \ + $(PATHOBJ)\BoolObject.obj \ + $(PATHOBJ)\BufferObject.obj \ + $(PATHOBJ)\CellObject.obj \ $(PATHOBJ)\ClassObject.obj \ $(PATHOBJ)\CObject.obj \ $(PATHOBJ)\ComplexObject.obj \ + $(PATHOBJ)\DescrObject.obj \ $(PATHOBJ)\DictObject.obj \ + $(PATHOBJ)\EnumObject.obj \ $(PATHOBJ)\FileObject.obj \ $(PATHOBJ)\FloatObject.obj \ $(PATHOBJ)\FrameObject.obj \ $(PATHOBJ)\FuncObject.obj \ $(PATHOBJ)\IntObject.obj \ + $(PATHOBJ)\IterObject.obj \ $(PATHOBJ)\ListObject.obj \ $(PATHOBJ)\LongObject.obj \ $(PATHOBJ)\MethodObject.obj \ @@ -159,14 +168,12 @@ OBJECTS = \ $(PATHOBJ)\RangeObject.obj \ $(PATHOBJ)\SliceObject.obj \ $(PATHOBJ)\StringObject.obj \ + $(PATHOBJ)\StructSeq.obj \ $(PATHOBJ)\TupleObject.obj \ $(PATHOBJ)\TypeObject.obj \ - $(PATHOBJ)\unicodeobject.obj \ - $(PATHOBJ)\unicodectype.obj \ - $(PATHOBJ)\cellobject.obj \ - $(PATHOBJ)\descrobject.obj \ - $(PATHOBJ)\weakrefobject.obj \ - $(PATHOBJ)\structseq.obj + $(PATHOBJ)\UnicodeObject.obj \ + $(PATHOBJ)\UnicodeCType.obj \ + $(PATHOBJ)\WeakrefObject.obj # Extension Modules (Built-In or as Separate DLLs) MODULES = \ @@ -176,6 +183,7 @@ MODULES = \ $(PATHOBJ)\cPickle.obj \ $(PATHOBJ)\cStringIO.obj \ $(PATHOBJ)\ErrnoModule.obj \ + $(PATHOBJ)\GCModule.obj \ $(PATHOBJ)\GetBuildInfo.obj \ $(PATHOBJ)\GetPathP.obj \ $(PATHOBJ)\Main.obj \ @@ -196,20 +204,17 @@ MODULES = \ $(PATHOBJ)\StructModule.obj \ $(PATHOBJ)\TimeModule.obj \ $(PATHOBJ)\ThreadModule.obj \ - $(PATHOBJ)\YUVConvert.obj \ - $(PATHOBJ)\bufferobject.obj \ - $(PATHOBJ)\gcmodule.obj + $(PATHOBJ)\YUVConvert.obj # Standalone Parser Generator Program (Shares Some of Python's Modules) PGEN = \ - $(PATHOBJ)\PGenMain.obj \ $(PATHOBJ)\PGen.obj \ + $(PATHOBJ)\PGenMain.obj \ + $(PATHOBJ)\MySNPrintf.obj \ + $(PATHOBJ)\Tokenizer_Pgen.obj \ $(PATHOBJ)\PrintGrammar.obj \ - $(PATHOBJ)\ListNode.obj \ $(PATHOBJ)\Grammar.obj \ - $(PATHOBJ)\BitSet.obj \ - $(PATHOBJ)\FirstSets.obj \ - $(PATHOBJ)\MetaGrammar.obj + $(PATHOBJ)\FirstSets.obj ################## # Macros and Flags @@ -223,7 +228,7 @@ _GEN = /G4 /Gm /Gd- # /Gm = Use Multithread Runtime # /Gd = Dynamically Load Runtime # /Ms = Use _System Calling Convention (vs _Optlink) - # (to allow non-VAC++ code to call into Python22.dll) + # (to allow non-VAC++ code to call into Python23.dll) _OPT = /O /Gl # /O = Enable Speed-Optimizations @@ -258,8 +263,8 @@ CFLAGS = $(_BASE) $(_GEN) $(_OPT) $(_DBG) $(_OUT) $(_EXE) /Ss ################### # Primary Target(s) ################### -All: obj noise PyCore.lib Python22.lib PGen.exe \ - Python.exe PythonPM.exe Python22.dll # _tkinter.dll +All: obj noise PyCore.lib Python23.lib PGen.exe \ + Python.exe PythonPM.exe Python23.dll # _tkinter.dll Modules: $(MODULES) Objects: $(OBJECTS) @@ -279,7 +284,7 @@ noise: ############## # Python Extension DLL: Tcl/Tk Interface -#_tkinter.dll: $(PATHOBJ)\_tkinter.obj Python22.lib _tkinter.def +#_tkinter.dll: $(PATHOBJ)\_tkinter.obj Python23.lib _tkinter.def # @ Echo Linking $@ As DLL # @ $(CC) $(CFLAGS) /B"/NOE" $(_DLL) /Fe$@ $(_MAP) $** $(OTHERLIBS) >>$(ERRS) @@ -292,7 +297,7 @@ PyCore.lib: $(MODULES) $(OBJECTS) $(PARSER) $(PYTHON) $(PATHOBJ)\Config.obj @ Echo Adding Updated Object Files to Link Library $@ @ ! ILIB $@ /NOLOGO /NOBACKUP -+$? ; >>$(ERRS) -Python22.dll: $(PATHOBJ)\Compile.obj PyCore.lib Python.def +Python23.dll: $(PATHOBJ)\Compile.obj PyCore.lib Python.def @ Echo Linking $@ As DLL @ $(CC) $(CFLAGS) /B"/NOE" $(_DLL) /Fe$@ $(_MAP) $** $(OTHERLIBS) >>$(ERRS) # @ Echo Compressing $@ with LxLite @@ -303,19 +308,19 @@ $(PATHOBJ)\Compile.obj: $(PY_PYTHON)\Compile.c @ Echo Compiling $** @ $(CC) -c $(CFLAGS) $(_DLL) -Fo$@ $** >>$(ERRS) -# Import Library for Using the Python22.dll -Python22.lib: Python.def +# Import Library for Using the Python23.dll +Python23.lib: Python.def @ Echo Making $@ @ IMPLIB /NOLOGO /NOIGNORE $@ $** >>$(ERRS) @ ILIB /NOLOGO /CONVFORMAT /NOEXTDICTIONARY /NOBROWSE /NOBACKUP $@; >>$(ERRS) -# Small Command-Line Program to Start Interpreter in Python22.dll -Python.exe: $(PATHOBJ)\Python.obj Python22.lib +# Small Command-Line Program to Start Interpreter in Python23.dll +Python.exe: $(PATHOBJ)\Python.obj Python23.lib @ Echo Linking $@ As EXE @ $(CC) $(CFLAGS) $(_EXE) /B"/PM:VIO /STACK:360000" /Fe$@ $(_MAP) $** $(OTHERLIBS) >>$(ERRS) -# Small PM-GUI Program to Start Interpreter in Python22.dll -PythonPM.exe: $(PATHOBJ)\Python.obj Python22.lib +# Small PM-GUI Program to Start Interpreter in Python23.dll +PythonPM.exe: $(PATHOBJ)\Python.obj Python23.lib @ Echo Linking $@ As EXE @ $(CC) $(CFLAGS) $(_EXE) /B"/PM:PM /STACK:360000" /Fe$@ $(_MAP) $** $(OTHERLIBS) >>$(ERRS) @@ -335,13 +340,13 @@ clean: # Remove All Targets, Including Final Binaries distclean: clean - -- Del /Q PyCore.lib Python22.lib >NUL 2>&1 - -- Del /Q Python22.dll Python.exe PGen.exe >NUL 2>&1 + -- Del /Q PyCore.lib Python23.lib >NUL 2>&1 + -- Del /Q Python23.dll Python.exe PGen.exe >NUL 2>&1 -release: Python.exe Python22.dll Python22.lib +release: Python.exe Python23.dll Python23.lib -- @Echo Y | copy /U Python.exe D:\EXEs - -- @Echo Y | copy /U Python22.dll D:\DLLs - -- @Echo Y | copy /U Python22.lib E:\Tau\Lib + -- @Echo Y | copy /U Python23.dll D:\DLLs + -- @Echo Y | copy /U Python23.lib E:\Tau\Lib -- @Echo Y | copy /U _tkinter.dll D:\Python test: