From 7973fc080113a02c49fd78fd329b1cc384b634d1 Mon Sep 17 00:00:00 2001 From: UebelAndre Date: Fri, 25 Apr 2025 19:08:44 -0700 Subject: [PATCH] Updated filenames to match modern patterns --- BUILD => BUILD.bazel | 0 WORKSPACE => WORKSPACE.bazel | 6 +- examples/cpan/{BUILD => BUILD.bazel} | 0 examples/cpan_remote/{BUILD => BUILD.bazel} | 0 .../{fcgi.BUILD => BUILD.fcgi.bazel} | 0 examples/env/{BUILD => BUILD.bazel} | 0 .../external_module/{BUILD => BUILD.bazel} | 0 examples/fibonacci/{BUILD => BUILD.bazel} | 0 examples/genhtml/{BUILD => BUILD.bazel} | 0 .../{genhtml.BUILD => BUILD.genhtml.bazel} | 0 examples/hello_world/{BUILD => BUILD.bazel} | 0 perl/{BUILD => BUILD.bazel} | 4 +- perl/deps.bzl | 10 +-- perl/platforms.bzl | 65 +++++++++++++++++ perl/private/{BUILD => BUILD.bazel} | 0 platforms.bzl | 71 +++---------------- test/{BUILD => BUILD.bazel} | 0 test/data_dep/{BUILD => BUILD.bazel} | 6 -- 18 files changed, 84 insertions(+), 78 deletions(-) rename BUILD => BUILD.bazel (100%) rename WORKSPACE => WORKSPACE.bazel (84%) rename examples/cpan/{BUILD => BUILD.bazel} (100%) rename examples/cpan_remote/{BUILD => BUILD.bazel} (100%) rename examples/cpan_remote/{fcgi.BUILD => BUILD.fcgi.bazel} (100%) rename examples/env/{BUILD => BUILD.bazel} (100%) rename examples/external_module/{BUILD => BUILD.bazel} (100%) rename examples/fibonacci/{BUILD => BUILD.bazel} (100%) rename examples/genhtml/{BUILD => BUILD.bazel} (100%) rename examples/genhtml/{genhtml.BUILD => BUILD.genhtml.bazel} (100%) rename examples/hello_world/{BUILD => BUILD.bazel} (100%) rename perl/{BUILD => BUILD.bazel} (97%) create mode 100644 perl/platforms.bzl rename perl/private/{BUILD => BUILD.bazel} (100%) rename test/{BUILD => BUILD.bazel} (100%) rename test/data_dep/{BUILD => BUILD.bazel} (85%) diff --git a/BUILD b/BUILD.bazel similarity index 100% rename from BUILD rename to BUILD.bazel diff --git a/WORKSPACE b/WORKSPACE.bazel similarity index 84% rename from WORKSPACE rename to WORKSPACE.bazel index 2e71a5d..fefac1d 100644 --- a/WORKSPACE +++ b/WORKSPACE.bazel @@ -1,7 +1,7 @@ workspace(name = "rules_perl") load("@rules_perl//perl:deps.bzl", "perl_register_toolchains", "perl_rules_dependencies", "perl_rules_dev_dependencies") -load("//:platforms.bzl", "platforms") +load("//perl:platforms.bzl", "PLATFORMS") perl_rules_dependencies() @@ -14,12 +14,12 @@ perl_register_toolchains() # other than rules_perl. [ register_toolchains( - "@rules_perl//:perl_{os}_{cpu}_toolchain".format( + "@rules_perl//perl:perl_{os}_{cpu}_toolchain".format( cpu = platform.cpu, os = platform.os, ), ) - for platform in platforms + for platform in PLATFORMS ] # Testing only, do not add to your WORKSPACE diff --git a/examples/cpan/BUILD b/examples/cpan/BUILD.bazel similarity index 100% rename from examples/cpan/BUILD rename to examples/cpan/BUILD.bazel diff --git a/examples/cpan_remote/BUILD b/examples/cpan_remote/BUILD.bazel similarity index 100% rename from examples/cpan_remote/BUILD rename to examples/cpan_remote/BUILD.bazel diff --git a/examples/cpan_remote/fcgi.BUILD b/examples/cpan_remote/BUILD.fcgi.bazel similarity index 100% rename from examples/cpan_remote/fcgi.BUILD rename to examples/cpan_remote/BUILD.fcgi.bazel diff --git a/examples/env/BUILD b/examples/env/BUILD.bazel similarity index 100% rename from examples/env/BUILD rename to examples/env/BUILD.bazel diff --git a/examples/external_module/BUILD b/examples/external_module/BUILD.bazel similarity index 100% rename from examples/external_module/BUILD rename to examples/external_module/BUILD.bazel diff --git a/examples/fibonacci/BUILD b/examples/fibonacci/BUILD.bazel similarity index 100% rename from examples/fibonacci/BUILD rename to examples/fibonacci/BUILD.bazel diff --git a/examples/genhtml/BUILD b/examples/genhtml/BUILD.bazel similarity index 100% rename from examples/genhtml/BUILD rename to examples/genhtml/BUILD.bazel diff --git a/examples/genhtml/genhtml.BUILD b/examples/genhtml/BUILD.genhtml.bazel similarity index 100% rename from examples/genhtml/genhtml.BUILD rename to examples/genhtml/BUILD.genhtml.bazel diff --git a/examples/hello_world/BUILD b/examples/hello_world/BUILD.bazel similarity index 100% rename from examples/hello_world/BUILD rename to examples/hello_world/BUILD.bazel diff --git a/perl/BUILD b/perl/BUILD.bazel similarity index 97% rename from perl/BUILD rename to perl/BUILD.bazel index 62c085f..941864b 100644 --- a/perl/BUILD +++ b/perl/BUILD.bazel @@ -1,4 +1,4 @@ -load("//:platforms.bzl", "platforms") +load(":platforms.bzl", "PLATFORMS") load(":toolchain.bzl", "current_perl_toolchain", "perl_toolchain") alias( @@ -49,7 +49,7 @@ toolchain_type( visibility = ["//visibility:public"], ), ) - for platform in platforms + for platform in PLATFORMS ] # This rule exists so that the current perl toolchain can be used in the `toolchains` attribute of diff --git a/perl/deps.bzl b/perl/deps.bzl index d47be7a..b3e4f8b 100644 --- a/perl/deps.bzl +++ b/perl/deps.bzl @@ -1,14 +1,14 @@ """Perl rules dependencies""" load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") -load("//:platforms.bzl", "platforms") load("//perl:repo.bzl", _perl_download = "perl_download") +load(":platforms.bzl", "PLATFORMS") perl_download = _perl_download # buildifier: disable=unnamed-macro def perl_repos(): - for platform in platforms: + for platform in PLATFORMS: perl_download( name = "perl_%s_%s" % (platform.os, platform.cpu), strip_prefix = platform.strip_prefix, @@ -21,7 +21,7 @@ def perl_register_toolchains(): """Register the relocatable perl toolchains.""" perl_repos() - for platform in platforms: + for platform in PLATFORMS: native.register_toolchains( "@rules_perl//perl:perl_{os}_{cpu}_toolchain".format( os = platform.os, @@ -69,7 +69,7 @@ def perl_rules_dev_dependencies(): _maybe( http_archive, name = "fcgi", - build_file = "//:examples/cpan_remote/fcgi.BUILD", + build_file = "//:examples/cpan_remote/BUILD.fcgi.bazel", sha256 = "8cfa4e1b14fb8d5acaa22ced672c6af68c0a8e25dc2a9697a0ed7f4a4efb34e4", strip_prefix = "FCGI-0.79", url = "https://cpan.metacpan.org/authors/id/E/ET/ETHER/FCGI-0.79.tar.gz", @@ -81,7 +81,7 @@ def perl_rules_dev_dependencies(): _maybe( http_archive, name = "genhtml", - build_file = "//:examples/genhtml/genhtml.BUILD", + build_file = "//:examples/genhtml/BUILD.genhtml.bazel", sha256 = "d88b0718f59815862785ac379aed56974b9edd8037567347ae70081cd4a3542a", strip_prefix = "lcov-1.15/bin", url = "https://github.com/linux-test-project/lcov/archive/refs/tags/v1.15.tar.gz", diff --git a/perl/platforms.bzl b/perl/platforms.bzl new file mode 100644 index 0000000..3544788 --- /dev/null +++ b/perl/platforms.bzl @@ -0,0 +1,65 @@ +"""platforms.bzl defines metadata about the different relocatable-perl versions +""" + +UNIX_VERSION = "5.40.1.0" + +PLATFORMS = [ + struct( + os = "darwin", + cpu = "arm64", + urls = ["https://github.com/skaji/relocatable-perl/releases/download/{}/perl-darwin-arm64.tar.xz".format(UNIX_VERSION)], + sha256 = "e58b98338bc52f352dc95310363ab6c725897557512b90b593c70ea357f1b2ab", + strip_prefix = "perl-darwin-arm64", + exec_compatible_with = [ + "@platforms//os:macos", + "@platforms//cpu:aarch64", + ], + ), + struct( + os = "darwin", + cpu = "amd64", + urls = ["https://github.com/skaji/relocatable-perl/releases/download/{}/perl-darwin-amd64.tar.xz".format(UNIX_VERSION)], + sha256 = "6e16d12f6a765cbb708ebcb6fe9c74f0d71e1d648bff0ff7b8d88134e54b736a", + strip_prefix = "perl-darwin-amd64", + exec_compatible_with = [ + "@platforms//os:macos", + "@platforms//cpu:x86_64", + ], + ), + struct( + os = "linux", + cpu = "amd64", + urls = ["https://github.com/skaji/relocatable-perl/releases/download/{}/perl-linux-amd64.tar.xz".format(UNIX_VERSION)], + sha256 = "cd3216bd72fa4fe3b76fc7f4e2f1004d75e42495d515c09b53d79cba3700dd7b", + strip_prefix = "perl-linux-amd64", + exec_compatible_with = [ + "@platforms//os:linux", + "@platforms//cpu:x86_64", + ], + ), + struct( + os = "linux", + cpu = "arm64", + urls = ["https://github.com/skaji/relocatable-perl/releases/download/{}/perl-linux-arm64.tar.xz".format(UNIX_VERSION)], + sha256 = "01b3beb5e5f806a5447e42246b440e54a96c314284a68be89ff2b980ba4a4ec1", + strip_prefix = "perl-linux-arm64", + exec_compatible_with = [ + "@platforms//os:linux", + "@platforms//cpu:arm64", + ], + ), + struct( + os = "windows", + cpu = "x86_64", + urls = [ + "https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_54001_64bit_UCRT/strawberry-perl-5.40.0.1-64bit-portable.zip", + "https://mirror.bazel.build/github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_54001_64bit_UCRT/strawberry-perl-5.40.0.1-64bit-portable.zip", + ], + sha256 = "754f3e2a8e473dc68d1540c7802fb166a025f35ef18960c4564a31f8b5933907", + strip_prefix = "", + exec_compatible_with = [ + "@platforms//os:windows", + "@platforms//cpu:x86_64", + ], + ), +] diff --git a/perl/private/BUILD b/perl/private/BUILD.bazel similarity index 100% rename from perl/private/BUILD rename to perl/private/BUILD.bazel diff --git a/platforms.bzl b/platforms.bzl index 68e9008..252e9f8 100644 --- a/platforms.bzl +++ b/platforms.bzl @@ -1,65 +1,12 @@ -"""platforms.bzl defines metadata about the different relocatable-perl versions +"""DEPRECATED: use `@rules_perl//perl:platforms.bzl` """ -unix_version = "5.40.1.0" +load( + "//perl:platforms.bzl", + "PLATFORMS", + "UNIX_VERSION", +) -platforms = [ - struct( - os = "darwin", - cpu = "arm64", - urls = ["https://github.com/skaji/relocatable-perl/releases/download/{}/perl-darwin-arm64.tar.xz".format(unix_version)], - sha256 = "e58b98338bc52f352dc95310363ab6c725897557512b90b593c70ea357f1b2ab", - strip_prefix = "perl-darwin-arm64", - exec_compatible_with = [ - "@platforms//os:osx", - "@platforms//cpu:aarch64", - ], - ), - struct( - os = "darwin", - cpu = "amd64", - urls = ["https://github.com/skaji/relocatable-perl/releases/download/{}/perl-darwin-amd64.tar.xz".format(unix_version)], - sha256 = "6e16d12f6a765cbb708ebcb6fe9c74f0d71e1d648bff0ff7b8d88134e54b736a", - strip_prefix = "perl-darwin-amd64", - exec_compatible_with = [ - "@platforms//os:osx", - "@platforms//cpu:x86_64", - ], - ), - struct( - os = "linux", - cpu = "amd64", - urls = ["https://github.com/skaji/relocatable-perl/releases/download/{}/perl-linux-amd64.tar.xz".format(unix_version)], - sha256 = "cd3216bd72fa4fe3b76fc7f4e2f1004d75e42495d515c09b53d79cba3700dd7b", - strip_prefix = "perl-linux-amd64", - exec_compatible_with = [ - "@platforms//os:linux", - "@platforms//cpu:x86_64", - ], - ), - struct( - os = "linux", - cpu = "arm64", - urls = ["https://github.com/skaji/relocatable-perl/releases/download/{}/perl-linux-arm64.tar.xz".format(unix_version)], - sha256 = "01b3beb5e5f806a5447e42246b440e54a96c314284a68be89ff2b980ba4a4ec1", - strip_prefix = "perl-linux-arm64", - exec_compatible_with = [ - "@platforms//os:linux", - "@platforms//cpu:arm64", - ], - ), - struct( - os = "windows", - cpu = "x86_64", - urls = [ - "https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_54001_64bit_UCRT/strawberry-perl-5.40.0.1-64bit-portable.zip", - "https://mirror.bazel.build/github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_54001_64bit_UCRT/strawberry-perl-5.40.0.1-64bit-portable.zip", - ], - sha256 = "754f3e2a8e473dc68d1540c7802fb166a025f35ef18960c4564a31f8b5933907", - strip_prefix = "", - exec_compatible_with = [ - "@platforms//os:windows", - "@platforms//cpu:x86_64", - ], - ), -] +unix_version = UNIX_VERSION + +platforms = PLATFORMS diff --git a/test/BUILD b/test/BUILD.bazel similarity index 100% rename from test/BUILD rename to test/BUILD.bazel diff --git a/test/data_dep/BUILD b/test/data_dep/BUILD.bazel similarity index 85% rename from test/data_dep/BUILD rename to test/data_dep/BUILD.bazel index e37ea81..905a6dc 100644 --- a/test/data_dep/BUILD +++ b/test/data_dep/BUILD.bazel @@ -29,9 +29,3 @@ echo '#!/bin/sh' >$@ echo 'exec env --ignore-environment test/data_dep/program_bin' >>$@ """, ) - -# sh_test( -# name = "program_test", -# srcs = ["program_test.sh"], -# data = [":program_bin"], -# )