Alien-Bazel

 view release on metacpan or  search on metacpan

alienfile  view on Meta::CPAN

            '%{make_path} %{.install.stage}/bin',
            '%{cp} output/bazel %{.install.stage}/bin'
        ];
    } else {
        patch sub {
            my ($build) = @_;
            my ($bazel_file) = Path::Tiny->new('.')->children(qr/^bazel-/);
            # remove all but 'bazel' prefix and possibly a '.exe' suffix (on
            # MSWin32) so $exe is either 'bazel' or 'bazel.exe'
            (my $exe = $bazel_file->basename) =~ s/^ (bazel) .*? ( (?:\.exe)? ) $/$1$2/x;
            $bazel_file->move( $bazel_file->parent->child($exe) );
            $build->install_prop->{bazel_exe} = $exe;
        };
        build [
            '%{make_path} %{.install.stage}/bin',
            "%{cp} %{.install.bazel_exe} %{.install.stage}/bin",

            ( $^O ne 'MSWin32'
            ? "chmod +x %{.install.stage}/bin/%{.install.bazel_exe}"
            : ()
            )

lib/Alien/Bazel/Util.pm  view on Meta::CPAN

    my @checks;

    if( exists $ENV{JAVA_HOME} && $ENV{JAVA_HOME} ) {
        push @checks, { home => $ENV{JAVA_HOME},
            src => 'JAVA_HOME environment variable' };
    }

    if( my $javac = which('javac') ) {
        my ($version, $exit) = capture_stdout { system($javac, qw(--version)) };
        if( !$exit && $version =~ /javac/s ) {
            my $java_home = path($javac)->realpath->parent(2);
            push @checks, { home => $java_home,
                src => 'javac in PATH' };
        }
    }

    if( $^O eq 'darwin' ) {
        chomp(my $java_home = `/usr/libexec/java_home -v 1.8`);
        push @checks, { home => $java_home,
            src => 'macOS /usr/libexec/java_home' };
    }



( run in 0.481 second using v1.01-cache-2.11-cpan-4d50c553e7e )