diff options
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/packages/Package.java | 2 | ||||
-rwxr-xr-x | src/test/shell/bazel/local_repository_test.sh | 33 |
2 files changed, 34 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/packages/Package.java b/src/main/java/com/google/devtools/build/lib/packages/Package.java index 5c04220a06..51a496dc7a 100644 --- a/src/main/java/com/google/devtools/build/lib/packages/Package.java +++ b/src/main/java/com/google/devtools/build/lib/packages/Package.java @@ -1331,7 +1331,7 @@ public class Package { * an InputFile target. */ void createInputFileMaybe(Label label, Location location) { - if (label != null && label.getPackageFragment().equals(pkg.getNameFragment())) { + if (label != null && label.getPackageIdentifier().equals(pkg.getPackageIdentifier())) { if (!targets.containsKey(label.getName())) { addInputFile(label, location); } diff --git a/src/test/shell/bazel/local_repository_test.sh b/src/test/shell/bazel/local_repository_test.sh index 7e6d8a447c..0719f151cb 100755 --- a/src/test/shell/bazel/local_repository_test.sh +++ b/src/test/shell/bazel/local_repository_test.sh @@ -1000,4 +1000,37 @@ EOF bazel build @r//:a || fail "build failed" } +# Regression test for https://github.com/bazelbuild/bazel/issues/792 +function test_build_all() { + local r=$TEST_TMPDIR/r + mkdir -p $r + touch $r/WORKSPACE + cat > $r/BUILD <<'EOF' +genrule( + name = "dummy1", + outs = ["dummy.txt"], + cmd = "echo 1 >$@", + visibility = ["//visibility:public"], +) +EOF + + cat > WORKSPACE <<EOF +local_repository( + name="r", + path="$r", +) +EOF + + cat > BUILD <<'EOF' +genrule( + name = "dummy2", + srcs = ["@r//:dummy1"], + outs = ["dummy.txt"], + cmd = "cat $(SRCS) > $@", +) +EOF + + bazel build :* || fail "build failed" +} + run_suite "local repository tests" |