Automated g4 rollback of commit c4134802dd15d6ef5cca6521f6bf6aac395ee2ad.

*** Reason for rollback ***

Roll forward of directory name change

*** Original change description ***

Automated g4 rollback of commit 1d9e1ac90197b1d3d7b137ba3c1ada67bb9ba31b.

*** Reason for rollback ***

Breaks //src/test/shell/integration:force_delete_output_test

*** Original change description ***

Symlink output directories to the correct directory name

If the workspace directory is /path/to/my/proj and the name in the WORKSPACE
file is "floop", this will symlink the output directories to
output_base/execroot/floop instead of output_base/execroot/proj.

More prep for #1262, fixes #1681.

PiperOrigin-RevId: 156892980
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 6044583..b515fd7 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
@@ -53,6 +53,12 @@
   @Override
   public SkyValue compute(SkyKey skyKey, Environment env)
       throws InterruptedException, BuildConfigurationFunctionException {
+    WorkspaceNameValue workspaceNameValue = (WorkspaceNameValue) env
+        .getValue(WorkspaceNameValue.key());
+    if (workspaceNameValue == null) {
+      return null;
+    }
+
     BuildConfigurationValue.Key key = (BuildConfigurationValue.Key) skyKey.argument();
     Set<Fragment> fragments;
     try {
@@ -70,7 +76,7 @@
     }
 
     BuildConfiguration config = new BuildConfiguration(directories, fragmentsMap,
-        key.getBuildOptions());
+        key.getBuildOptions(), workspaceNameValue.getName());
     // Unlike static configurations, dynamic configurations don't need to embed transition logic
     // within the configuration itself. However we still use this interface to provide a mapping
     // between Transition types (e.g. HOST) and the dynamic transitions that apply those