Skip to content
This repository has been archived by the owner on Feb 3, 2021. It is now read-only.

Commit

Permalink
Add 'nqp-self' target, to test-build a self-hosted copy of NQP.
Browse files Browse the repository at this point in the history
Works for building its own parser.
  • Loading branch information
pmichaud committed Oct 28, 2009
1 parent ff564c6 commit 9f4cd36
Showing 1 changed file with 11 additions and 3 deletions.
14 changes: 11 additions & 3 deletions build/Makefile.in
Expand Up @@ -84,6 +84,8 @@ STAGE1_PBCS = $(STAGE1)/$(P6REGEX_PBC) $(STAGE1)/$(P6GRAMMAR_PBC)

HLLGRAMMAR_PBC = HLLGrammar.pbc

NQP = nqp$(EXE)

CLEANUPS = \
*.manifest \
*.pdb \
Expand Down Expand Up @@ -188,14 +190,20 @@ $(HLLGRAMMAR_PBC): $(P6GRAMMAR_PBC) $(P6REGEX_PBC) $(HLLGRAMMAR_SOURCES)
src/HLL/Actions.pm >src/gen/hll-actions.pir
$(PARROT) -o HLLGrammar.pbc src/cheats/hll-grammar.pir

nqp$(EXE): $(HLLGRAMMAR_PBC) $(P6GRAMMAR_PBC) $(PARROT_NQP) $(PBC_TO_EXE) $(NQP_SOURCES)
$(NQP): $(HLLGRAMMAR_PBC) $(P6GRAMMAR_PBC) $(PARROT_NQP) $(PBC_TO_EXE) $(NQP_SOURCES)
$(PARROT) $(P6GRAMMAR_PBC) --target=pir \
src/NQP/Grammar.pm >src/gen/nqp-grammar.pir
$(PARROT_NQP) --target=pir \
src/NQP/Actions.pm >src/gen/nqp-actions.pir
$(PARROT) -o nqp.pbc src/NQP/Compiler.pir
$(PBC_TO_EXE) nqp.pbc

nqp-self: $(NQP)
./$(NQP) --target=pir --output=src/gen/nqp-grammar.pir \
src/NQP/Grammar.pm
$(PARROT) -o nqp-self.pbc src/NQP/Compiler.pir
$(PBC_TO_EXE) nqp-self.pbc


bootstrap: p6grammar
./p6grammar --target=pir src/Regex/P6Regex/Grammar.pm >p6regex-grammar.pir
Expand All @@ -218,8 +226,8 @@ p6regex-test: $(P6REGEX_PBC)
p6regex-test-loud: $(P6REGEX_PBC)
prove -r -v --exec $(PARROT) t/p6regex

nqp-test: nqp$(EXE)
prove -r --exec ./nqp$(EXE) t/nqp
nqp-test: $(NQP)
prove -r --exec ./$(NQP) t/nqp

## cleaning
clean:
Expand Down

0 comments on commit 9f4cd36

Please sign in to comment.