Allow globs to be used outside of the skyframe package.

--
MOS_MIGRATED_REVID=93647914
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/GlobValue.java b/src/main/java/com/google/devtools/build/lib/skyframe/GlobValue.java
index 6de0fbd..c93370c 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/GlobValue.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/GlobValue.java
@@ -25,12 +25,10 @@
 import com.google.devtools.build.skyframe.SkyKey;
 import com.google.devtools.build.skyframe.SkyValue;
 
-/**
- * A value corresponding to a glob.
- */
+/** A value corresponding to a glob. */
 @Immutable
 @ThreadSafe
-final class GlobValue implements SkyValue {
+public final class GlobValue implements SkyValue {
 
   static final GlobValue EMPTY = new GlobValue(
       NestedSetBuilder.<PathFragment>emptySet(Order.STABLE_ORDER));
@@ -44,7 +42,7 @@
   /**
    * Returns glob matches.
    */
-  NestedSet<PathFragment> getMatches() {
+  public NestedSet<PathFragment> getMatches() {
     return matches;
   }
 
@@ -75,7 +73,8 @@
    * @throws InvalidGlobPatternException if the pattern is not valid.
    */
   @ThreadSafe
-  static SkyKey key(PackageIdentifier packageId, String pattern, boolean excludeDirs)
+  public static SkyKey key(PackageIdentifier packageId, String pattern, boolean excludeDirs,
+      PathFragment subdir)
       throws InvalidGlobPatternException {
     if (pattern.indexOf('?') != -1) {
       throw new InvalidGlobPatternException(pattern, "wildcard ? forbidden");
@@ -86,7 +85,7 @@
       throw new InvalidGlobPatternException(pattern, error);
     }
 
-    return internalKey(packageId, PathFragment.EMPTY_FRAGMENT, pattern, excludeDirs);
+    return internalKey(packageId, subdir, pattern, excludeDirs);
   }
 
   /**
@@ -116,7 +115,7 @@
    * An exception that indicates that a glob pattern is syntactically invalid.
    */
   @ThreadSafe
-  static final class InvalidGlobPatternException extends Exception {
+  public static final class InvalidGlobPatternException extends Exception {
     private final String pattern;
 
     InvalidGlobPatternException(String pattern, String error) {