Skip to content

Commit

Permalink
Build process updates:
Browse files Browse the repository at this point in the history
 - the security fixes to tempfile have lead to test_tempfile wanting
   to create 100 temporary files.  as the EMX default is only 40,
   the number of file handles has been bumped (up to 250).
 - changes to pgen have required restructuring its build support.
  • Loading branch information
Andrew MacIntyre committed Aug 18, 2002
1 parent e888cdc commit 4fffdff
Showing 1 changed file with 33 additions and 17 deletions.
50 changes: 33 additions & 17 deletions PC/os2emx/Makefile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#####################==================----------------·············
#####################==================----------------
#
# Top-Level Makefile for Building Python 2.3 for OS/2 using GCC/EMX
# Originally written by Andrew Zabolotny, <[email protected]> for Python 1.5.2
Expand All @@ -21,7 +21,7 @@
# make lx (if you have lxlite)
# make test (optional)
#
#####################==================----------------·············
#####################==================----------------

# === Compilation mode: debug or release ===
MODE= optimize
Expand Down Expand Up @@ -71,6 +71,8 @@ LDFLAGS.A= $(LDFLAGS) $(LIBS)
ARFLAGS= crs
IMPLIB= emximp
EXPLIB= emxexp
EXEOPT= emxbind


# adjust C compiler settings based on build options
ifeq ($(MODE),debug)
Expand Down Expand Up @@ -112,6 +114,10 @@ else
AR= ar
endif

# 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

# Source file paths
SRCPATH=.;../../Python;../../Parser;../../Objects;../../Include;../../Modules
# Python contains the central core, containing the builtins and interpreter.
Expand Down Expand Up @@ -235,15 +241,6 @@ DESCRIPTION._curses$(MODULE.EXT)= Python Extension DLL for access to ncurses lib
DESCRIPTION.pyexpat$(MODULE.EXT)= Python Extension DLL for access to expat library

# Source files
SRC.PGEN= $(addprefix ../../Parser/, \
pgenmain.c \
pgen.c \
printgrammar.c \
grammar.c \
bitset.c \
firstsets.c)
OBJ.PGEN= $(addprefix $(OUT),$(notdir $(SRC.PGEN:.c=$O)))

SRC.OS2EMX= config.c dlfcn.c getpathp.c
SRC.MAIN= $(addprefix $(TOP), \
Modules/getbuildinfo.c \
Expand All @@ -253,17 +250,20 @@ SRC.MODULES= $(addprefix $(TOP), \
Modules/signalmodule.c \
Modules/posixmodule.c \
Modules/threadmodule.c)
SRC.PARSER= $(addprefix $(TOP), \
SRC.PARSE1= $(addprefix $(TOP), \
Parser/acceler.c \
Parser/grammar1.c \
Parser/listnode.c \
Parser/node.c \
Parser/parser.c \
Parser/parsetok.c \
Parser/tokenizer.c \
Parser/bitset.c \
Parser/metagrammar.c \
Parser/metagrammar.c)
SRC.PARSE2= $(addprefix $(TOP), \
Parser/tokenizer.c \
Parser/myreadline.c)
SRC.PARSER= $(SRC.PARSE1) \
$(SRC.PARSE2)
SRC.PYTHON= $(addprefix $(TOP), \
Python/bltinmodule.c \
Python/exceptions.c \
Expand Down Expand Up @@ -338,6 +338,21 @@ SRC.LIB= $(SRC.OS2EMX) \
$(SRC.MODULES)
OBJ.LIB= $(addprefix $(OUT),$(notdir $(SRC.LIB:.c=$O)))

SRC.PGEN= $(SRC.PARSE1) \
$(addprefix $(TOP), \
Objects/obmalloc.c) \
$(addprefix $(TOP), \
Python/mysnprintf.c) \
$(addprefix $(TOP), \
Parser/tokenizer_pgen.c \
Parser/pgenmain.c \
Parser/pgen.c \
Parser/printgrammar.c \
Parser/grammar.c \
Parser/firstsets.c) \

OBJ.PGEN= $(addprefix $(OUT),$(notdir $(SRC.PGEN:.c=$O)))

SRC.EXE= $(TOP)Modules/python.c
SRC.PMEXE= pythonpm.c

Expand All @@ -356,7 +371,6 @@ EASYEXTMODULES= array \
fpetest \
_locale \
math \
new \
parser \
pwd \
rgbimg \
Expand Down Expand Up @@ -471,11 +485,13 @@ $(PYTHON.DLL): $(OUT)dllentry$O $(PYTHON.LIB) $(PYTHON.DEF)

$(PYTHON.EXE): $(SRC.EXE) $(PYTHON.EXEIMP) $(OUT)python.def
$(CC) -Zmt $(LDMODE.EXE) -Zcrtdll -Wall $(INCLUDE) -L. -lgcc -o $@ $(SRC.EXE) $(PYTHON.EXEIMP) $(LIBS) $(OUT)python.def
$(EXEOPT) -aq $(PYTHON.EXE) -h$(NFILES)

$(PYTHONPM.EXE): $(SRC.PMEXE) $(PYTHON.EXEIMP) $(OUT)pythonpm.def
$(CC) -Zmt $(LDMODE.EXE) -Zcrtdll -Wall $(INCLUDE) -L. -lgcc -o $@ $(SRC.PMEXE) $(PYTHON.EXEIMP) $(LIBS) $(OUT)pythonpm.def
$(EXEOPT) -aq $(PYTHONPM.EXE) -h$(NFILES)

$(PGEN.EXE): $(OBJ.PGEN) $(PYTHON.LIB) $(OUT)pgen.def
$(PGEN.EXE): $(OBJ.PGEN) $(OUT)pgen.def

# Explicit building instructions for those external modules that require
# awkward handling (due e.g. to non-std naming, or multiple source files)
Expand Down Expand Up @@ -631,6 +647,6 @@ zlib$(MODULE.EXT): $(OUT)zlibmodule$O $(OUT)zlib_m.def $(PYTHON.IMPLIB)

# the test target
test:
./python -tt ../../lib/test/regrtest.py -l -u "network"
./python -E -tt ../../lib/test/regrtest.py -l -u "network"

-include $(OUTBASE)python.dep

0 comments on commit 4fffdff

Please sign in to comment.