Skip to content

Conversation

@UebelAndre
Copy link
Contributor

@UebelAndre UebelAndre commented Apr 14, 2025

This change introduces support for Windows by avoiding reliance on relative paths and instead looking up include paths via runfiles interfaces to provide a more consistent cross-platform experience. This is the same approach to how rules_python handles import paths.

Changes:

  • perl_binary and perl_test now writes a *.bat entrypoint when building for windows.
  • Introduced a common entrypoint.pl script that is now responsible for spawning the main entrypoint for Perl binaries.
  • PerlInfo.includes will not be a depset of rlocationpath strings.
  • Environment variables are handled by RunEnvironmentInfo vs being injected into the shell entrypoint.

This change should be considered a major change.

@UebelAndre UebelAndre marked this pull request as ready for review April 14, 2025 20:41
@UebelAndre UebelAndre requested a review from skeletonkey as a code owner April 14, 2025 20:41
@UebelAndre
Copy link
Contributor Author

@skeletonkey this change is now ready for review.

@UebelAndre
Copy link
Contributor Author

Some additional context. This change is intended to provide support for windows but by default windows systems do not support symlinks which limits them to RUNFILES_MANIFEST_FILE interfaces of runfiles. This limitation is what inflated the size of this change.

@skeletonkey skeletonkey merged commit cae79dd into bazel-contrib:main Apr 21, 2025
1 check passed
@UebelAndre UebelAndre deleted the runfiles branch April 21, 2025 14:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants