Unconditionally include gcc's stdc-predef.h if it is available.

--
MOS_MIGRATED_REVID=89964638
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java b/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
index 5bf199d..1ad6f32 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java
@@ -540,7 +540,7 @@
   }
 
   private void prepareToBuild(PackageRootResolver resolver) throws ViewCreationFailedException {
-    for (BuildConfiguration config : configurations.getTargetConfigurations()) {
+    for (BuildConfiguration config : configurations.getAllConfigurations()) {
       config.prepareToBuild(directories.getExecRoot(), getArtifactFactory(), resolver);
     }
   }
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
index 8789cad..530b759 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java
@@ -152,8 +152,7 @@
      * The fragment may use this hook to perform I/O and read data into memory that is used during
      * analysis. During the analysis phase disk I/O operations are disallowed.
      *
-     * <p>This hook is only called for the top-level configuration after the loading phase is
-     * complete.
+     * <p>This hook is called for all configurations after the loading phase is complete.
      */
     @SuppressWarnings("unused")
     public void prepareHook(Path execPath, ArtifactFactory artifactFactory,
@@ -1873,6 +1872,9 @@
    * phase is generally not allowed to perform disk I/O. This code is here because it is
    * conceptually part of the analysis phase, and it needs to happen when the loading phase is
    * complete.
+   *
+   * <p>C++ also requires this to resolve artifacts that are unconditionally included in every
+   * compilation.</p>
    */
   public void prepareToBuild(Path execRoot, ArtifactFactory artifactFactory,
       PackageRootResolver resolver) throws ViewCreationFailedException {