Issue #15819: additional fixes for out-of-tree builds from read-only src.

Unlike 3.2, 3.3 and 3.x, which add "-IObjects -IPython -IInclude" to
BASECPPFLAGS when building out-of-tree, 2.7 only needs to add -IInclude
(for Python-ast.h and graminit.h).
diff --git a/configure b/configure
index bced441..f2304f6 100755
--- a/configure
+++ b/configure
@@ -648,6 +648,8 @@
 HGBRANCH
 HGTAG
 HGVERSION
+BASECPPFLAGS
+BUILDDIR
 SVNVERSION
 ARFLAGS
 AR
@@ -5175,6 +5177,22 @@
 	SVNVERSION="echo Unversioned directory"
 fi
 
+BUILDDIR="`pwd`"
+
+
+if test "$srcdir" != "$BUILDDIR"; then
+    # If we're building out-of-tree make sure Include (in the current dir)
+    # gets picked up before its $srcdir counterpart in order for Python-ast.h
+    # and graminit.h to get picked up from the correct directory.
+    # (A side effect of this is that these resources will automatically be
+    #  regenerated when building out-of-tree, regardless of whether or not
+    #  the $srcdir counterpart is up-to-date.  This is an acceptable trade
+    #  off.)
+    BASECPPFLAGS="-IInclude"
+else
+    BASECPPFLAGS=""
+fi
+