blob: d4a599494f59cb9d4bd81c13ec3eb92035a1a4ca [file] [log] [blame]
# typed: false
# frozen_string_literal: true
class Dart < Formula
desc "SDK"
homepage "https://dart.dev"
head do
version "2.16.0-103.0.dev"
if OS.mac? && Hardware::CPU.intel?
url "https://storage.googleapis.com/dart-archive/channels/dev/release/2.16.0-103.0.dev/sdk/dartsdk-macos-x64-release.zip"
sha256 "ca95ab938166fcd03d348b28a2a8dd76ffaa2786ca3618452561681e61eefe4c"
elsif OS.mac? && Hardware::CPU.arm?
url "https://storage.googleapis.com/dart-archive/channels/dev/release/2.16.0-103.0.dev/sdk/dartsdk-macos-arm64-release.zip"
sha256 "8cfd055ce9b6dc8cd37f4e810b11319bd31af6847ce94c68373125211e25f7c7"
elsif OS.linux? && Hardware::CPU.intel?
if Hardware::CPU.is_64_bit?
url "https://storage.googleapis.com/dart-archive/channels/dev/release/2.16.0-103.0.dev/sdk/dartsdk-linux-x64-release.zip"
sha256 "680b51758c3d339ebd6ae9012b010b905b6f2aab18fd47fe716ae44718d41c62"
else
url "https://storage.googleapis.com/dart-archive/channels/dev/release/2.16.0-103.0.dev/sdk/dartsdk-linux-ia32-release.zip"
sha256 "20170b337f4530d360d739969a4f20a913575eb3cbfc536cf65c38d243943813"
end
elsif OS.linux? && Hardware::CPU.arm?
if Hardware::CPU.is_64_bit?
url "https://storage.googleapis.com/dart-archive/channels/dev/release/2.16.0-103.0.dev/sdk/dartsdk-linux-arm64-release.zip"
sha256 "5c33e5335143460b2b8323117d42991922128e0ff360f92bed406745d93f0c51"
else
url "https://storage.googleapis.com/dart-archive/channels/dev/release/2.16.0-103.0.dev/sdk/dartsdk-linux-arm-release.zip"
sha256 "b74471a0c91c854e17e9d5413758e56f604648c689e64ff7d0fbef02803115da"
end
end
end
conflicts_with "dart-beta", because: "dart-beta ships the same binaries"
if OS.mac? && Hardware::CPU.intel?
url "https://storage.googleapis.com/dart-archive/channels/stable/release/2.15.1/sdk/dartsdk-macos-x64-release.zip"
sha256 "b3a6e4c21da6e4a751aff5b1597c08b4ef58683a69fc7237c639d2d941e637e2"
elsif OS.mac? && Hardware::CPU.arm?
url "https://storage.googleapis.com/dart-archive/channels/stable/release/2.15.1/sdk/dartsdk-macos-arm64-release.zip"
sha256 "0c31380e90369bcc0a91466e4039f83695d5bed689eac20778a36393745ba581"
elsif OS.linux? && Hardware::CPU.intel?
if Hardware::CPU.is_64_bit?
url "https://storage.googleapis.com/dart-archive/channels/stable/release/2.15.1/sdk/dartsdk-linux-x64-release.zip"
sha256 "0f45dcaa53b4090b69b277b885ea9a4cb3a41589c9119113e1b978ad55ce335f"
else
url "https://storage.googleapis.com/dart-archive/channels/stable/release/2.15.1/sdk/dartsdk-linux-ia32-release.zip"
sha256 "491ab94edc52f9bc02a95c5ad14d99867f09d56b66e0e9eafb7b904bef79d6cc"
end
elsif OS.linux? && Hardware::CPU.arm?
if Hardware::CPU.is_64_bit?
url "https://storage.googleapis.com/dart-archive/channels/stable/release/2.15.1/sdk/dartsdk-linux-arm64-release.zip"
sha256 "8836c294234352cc53e8aea4a1ce0442ebbb769a536ce7f309579da5020a2395"
else
url "https://storage.googleapis.com/dart-archive/channels/stable/release/2.15.1/sdk/dartsdk-linux-arm-release.zip"
sha256 "751935fc08dec2121410c3f2f33de8215d8a4e5f21192a4c42c4b81dd00f8659"
end
end
def install
libexec.install Dir["*"]
bin.install_symlink "#{libexec}/bin/dart"
bin.write_exec_script Dir["#{libexec}/bin/{pub,dart?*}"]
end
def caveats
<<~EOS
Please note the path to the Dart SDK:
#{opt_libexec}
EOS
end
test do
(testpath/"sample.dart").write <<~EOS
void main() {
print(r"test message");
}
EOS
assert_equal "test message\n", shell_output("#{bin}/dart sample.dart")
end
end