Patch #1355883: Build Python-ast.c and Python-ast.h
independently. Fixes #1355883.
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 6d4d622..5ddcdc2 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -219,13 +219,15 @@
##########################################################################
# AST
-AST_H= $(srcdir)/Include/Python-ast.h
-AST_C= $(srcdir)/Python/Python-ast.c
+AST_H_DIR= $(srcdir)/Include
+AST_H= $(AST_H_DIR)/Python-ast.h
+AST_C_DIR= $(srcdir)/Python
+AST_C= $(AST_C_DIR)/Python-ast.c
AST_ASDL= $(srcdir)/Parser/Python.asdl
ASDLGEN_FILES= $(srcdir)/Parser/asdl.py $(srcdir)/Parser/asdl_c.py
# XXX Note that a build now requires Python exist before the build starts
-ASDLGEN= $(srcdir)/Parser/asdl_c.py -h $(srcdir)/Include -c $(srcdir)/Python
+ASDLGEN= $(srcdir)/Parser/asdl_c.py
##########################################################################
# Python
@@ -465,9 +467,12 @@
Parser/tokenizer_pgen.o: $(srcdir)/Parser/tokenizer.c
-$(AST_H) $(AST_C): $(AST_ASDL) $(ASDLGEN_FILES)
- $(ASDLGEN) $(AST_ASDL)
+$(AST_H): $(AST_ASDL) $(ASDLGEN_FILES)
+ $(ASDLGEN) -h $(AST_H_DIR) $(AST_ASDL)
+$(AST_C): $(AST_ASDL) $(ASDLGEN_FILES)
+ $(ASDLGEN) -c $(AST_C_DIR) $(AST_ASDL)
+
Python/compile.o Python/symtable.o: $(GRAMMAR_H) $(AST_H)
Python/getplatform.o: $(srcdir)/Python/getplatform.c