Rewrite symlinks for vendored repositories
To make sure symlinks work correctly, Bazel uses the following strategy to rewrite symlinks in the vendored source: - Create a symlink `<vendor_dir>/bazel-external` that points to `$(bazel info output_base)/external`. It is refreshed by every Bazel command automatically. - For the vendored source, rewrite all symlinks that originally point to a path under `$(bazel info output_base)/external` to a relative path under `<vendor_dir>/bazel-external`. Fixes https://github.com/bazelbuild/bazel/issues/22303 Closes #22723. PiperOrigin-RevId: 644349481 Change-Id: I853ac0ea5405f0cf58431e988d727e690cbbb013
Showing
- site/en/external/vendor.md 57 additions, 2 deletionssite/en/external/vendor.md
- src/main/java/com/google/devtools/build/lib/bazel/BUILD 2 additions, 1 deletionsrc/main/java/com/google/devtools/build/lib/bazel/BUILD
- src/main/java/com/google/devtools/build/lib/bazel/BazelRepositoryModule.java 31 additions, 0 deletions...oogle/devtools/build/lib/bazel/BazelRepositoryModule.java
- src/main/java/com/google/devtools/build/lib/bazel/bzlmod/BUILD 3 additions, 0 deletions...ain/java/com/google/devtools/build/lib/bazel/bzlmod/BUILD
- src/main/java/com/google/devtools/build/lib/bazel/bzlmod/VendorManager.java 88 additions, 29 deletions...google/devtools/build/lib/bazel/bzlmod/VendorManager.java
- src/main/java/com/google/devtools/build/lib/profiler/ProfilerTask.java 1 addition, 0 deletions.../com/google/devtools/build/lib/profiler/ProfilerTask.java
- src/test/py/bazel/bzlmod/bazel_vendor_test.py 84 additions, 8 deletionssrc/test/py/bazel/bzlmod/bazel_vendor_test.py
- src/test/py/bazel/test_base.py 11 additions, 2 deletionssrc/test/py/bazel/test_base.py
Please register or sign in to comment