cpython/Parser/grammar.mak
Jeremy Hylton 3e0055f8c6 Merge ast-branch to head
This change implements a new bytecode compiler, based on a
transformation of the parse tree to an abstract syntax defined in
Parser/Python.asdl.

The compiler implementation is not complete, but it is in stable
enough shape to run the entire test suite excepting two disabled
tests.
2005-10-20 19:59:25 +00:00

46 lines
1.3 KiB
Makefile

# This manages to rebuild graminit.{h, c} under MSVC 6 (Windows), via
#
# nmake /f grammar.mak
#
# You may also need to copy python23.dll into this directory, or get
# it on your search path.
#
# The intermediate files can be nuked afterwards:
#
# nmake /f grammar.mak clean
#
# I don't understand the maze of preprocessor #define's on Windows, and
# as a result this requires linking with python23.lib, so it's of no use
# for bootstrapping (the cause appears to be a useless-- in this
# particular case --pragma in PC\pyconfig.h, which demands that
# python23.lib get linked in).
LIBS= ..\PCbuild\python25.lib
CFLAGS= /I ..\Include /I ..\PC /D MS_NO_COREDLL /D PGEN /MD
GRAMMAR_H= ..\Include\graminit.h
GRAMMAR_C= ..\Python\graminit.c
GRAMMAR_INPUT= ..\Grammar\Grammar
PGEN= pgen.exe
POBJS= acceler.obj grammar1.obj listnode.obj node.obj parser.obj \
parsetok.obj tokenizer.obj bitset.obj metagrammar.obj
PARSER_OBJS= $(POBJS) myreadline.obj
PGOBJS= firstsets.obj grammar.obj pgen.obj printgrammar.obj pgenmain.obj
PGENOBJS= $(POBJS) $(PGOBJS)
$(GRAMMAR_H) $(GRAMMAR_C): $(PGEN) $(GRAMMAR_INPUT)
$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
$(PGEN): $(PGENOBJS)
$(CC) $(PGENOBJS) $(LIBS) /Fe$(PGEN)
clean:
del *.obj
del $(PGEN)