diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java
index 2240ee58b5d11a..1c84d82981d62b 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/BuildConfigurationFunction.java
@@ -100,7 +100,9 @@ public SkyValue compute(SkyKey skyKey, Environment env)
       if (platformMappingValue == null) {
         return null;
       }
-      BuildOptions baselineOptions = PrecomputedValue.BASELINE_CONFIGURATION.get(env);
+      BuildOptions baselineOptions = targetOptions.get(CoreOptions.class).isExec
+          ? PrecomputedValue.EXEC_BASELINE_CONFIGURATION.get(env)
+          : PrecomputedValue.BASELINE_CONFIGURATION.get(env);
       try {
         BuildOptions mappedBaselineOptions =
             BuildConfigurationKey.withPlatformMapping(platformMappingValue, baselineOptions)
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/PrecomputedValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/PrecomputedValue.java
index 1b56eca79d1856..debc874c97c1f3 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/PrecomputedValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/PrecomputedValue.java
@@ -98,6 +98,8 @@ public static <T> Injected injected(Precomputed<T> precomputed, T value) {
   // Unsharable because of complications in deserializing BuildOptions on startup due to caching.
   public static final Precomputed<BuildOptions> BASELINE_CONFIGURATION =
       new Precomputed<>("baseline_configuration", /*shareable=*/ false);
+  public static final Precomputed<BuildOptions> EXEC_BASELINE_CONFIGURATION =
+      new Precomputed<>("exec_baseline_configuration", /*shareable=*/ false);
 
   private final Object value;
 
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java
index fc07a946d8d92c..5322fbc175e99c 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java
@@ -1223,6 +1223,8 @@ private void setStarlarkSemantics(StarlarkSemantics starlarkSemantics) {
 
   public void setBaselineConfiguration(BuildOptions buildOptions) {
     PrecomputedValue.BASELINE_CONFIGURATION.set(injectable(), buildOptions);
+    PrecomputedValue.EXEC_BASELINE_CONFIGURATION.set(injectable(),
+        buildOptions.createExecOptions());
   }
 
   public void injectExtraPrecomputedValues(List<PrecomputedValue.Injected> extraPrecomputedValues) {