diff --git a/src/parser/xhpast/bin/PhutilXHPASTBinary.php b/src/parser/xhpast/bin/PhutilXHPASTBinary.php --- a/src/parser/xhpast/bin/PhutilXHPASTBinary.php +++ b/src/parser/xhpast/bin/PhutilXHPASTBinary.php @@ -40,7 +40,7 @@ '%s -C %s %Ls', $command, $path, - array('clean', 'all', 'install')); + array('SKIP_PARSER=1', 'SKIP_SCANNER=1', 'clean', 'all', 'install')); // Test the binary. if (!self::isAvailable()) { diff --git a/support/xhpast/Makefile b/support/xhpast/Makefile --- a/support/xhpast/Makefile +++ b/support/xhpast/Makefile @@ -39,18 +39,27 @@ cp xhpast $(ROOT)/bin/xhpast .PHONY: parser scanner + parser: parser.yacc.hpp parser.yacc.cpp scanner: scanner.lex.hpp scanner.lex.cpp %.lex.hpp %.lex.cpp: %.l +ifndef SKIP_SCANNER flex $(FLEXFLAGS) --header-file=$*.lex.hpp --outfile=$*.lex.cpp $< @echo '/* @gen''er''ated */' >> $*.lex.hpp @echo '/* @gen''er''ated */' >> $*.lex.cpp +else + touch $*.lex.hpp $*.lex.cpp +endif %.yacc.hpp %.yacc.cpp: %.y +ifndef SKIP_PARSER bison $(BISONFLAGS) --defines=$*.yacc.hpp --output=$*.yacc.cpp $< @echo '/* @gen''er''ated */' >> $*.yacc.hpp @echo '/* @gen''er''ated */' >> $*.yacc.cpp +else + touch $*.yacc.hpp $*.yacc.cpp +endif %.o: %.cpp $(CXX) -c $(CPPFLAGS) -o $@ $<