71 lines
3.6 KiB
Ruby
71 lines
3.6 KiB
Ruby
class Spigot < Formula
|
|
desc "Command-line streaming exact real calculator"
|
|
homepage "https://www.chiark.greenend.org.uk/~sgtatham/spigot/"
|
|
url "https://www.chiark.greenend.org.uk/~sgtatham/spigot/spigot-20210527.7dd3cfd.tar.gz"
|
|
version "20210527"
|
|
sha256 "1014b79607cbb6cc8143c9b3a093f266144124d9a4552785e5779c1a072faadc"
|
|
license "MIT"
|
|
|
|
livecheck do
|
|
url :homepage
|
|
regex(/href=.*?spigot[._-]v?(\d+(?:\.\d+)*)(?:[._-][\da-z]+)?\.t/i)
|
|
end
|
|
|
|
bottle do
|
|
sha256 cellar: :any_skip_relocation, arm64_monterey: "f29fed5c8bcde09370f28cb44769301b51a5e9070b56aafdce2b49149d6fb73b"
|
|
sha256 cellar: :any_skip_relocation, arm64_big_sur: "ea601301d75ed829ff918c22884199fef4a35afcffbdc03da464d7051b55d3e1"
|
|
sha256 cellar: :any_skip_relocation, monterey: "3d46df4506b0880add1c37d6d7ad9af0ff4a33062504b83a54e48a2f8c4d5001"
|
|
sha256 cellar: :any_skip_relocation, big_sur: "daf9a73394d08cdfc2b5746b367112ea1790f924169d36e2ec288b201433b148"
|
|
sha256 cellar: :any_skip_relocation, catalina: "7a78a2d6416a800148fbd44f269865c3baacf150164f757459f9dbf622b41fa9"
|
|
sha256 cellar: :any_skip_relocation, mojave: "f7f31fcf972afaecdb231e4b7e413a98a7ec8f05f7d3e4717cc9128c7cae0fab"
|
|
sha256 cellar: :any_skip_relocation, x86_64_linux: "b0e15ff42ceacf124df8655ee07bebb44dcb0ee0a5f8785ab4da5c8b27ea1467"
|
|
end
|
|
|
|
depends_on "cmake" => :build
|
|
|
|
uses_from_macos "ncurses"
|
|
|
|
on_linux do
|
|
depends_on "gmp"
|
|
end
|
|
|
|
def install
|
|
mkdir "build" do
|
|
system "cmake", "..", *std_cmake_args
|
|
system "make", "install"
|
|
end
|
|
end
|
|
|
|
test do
|
|
# Get Ramanujan's number of decimal places of Tau in base10
|
|
expected = <<~EOS
|
|
6.28318530717958647692528676655900576839433879875021164194988918461563281
|
|
2572417997256069650684234135964296173026564613294187689219101164463450718
|
|
8162569622349005682054038770422111192892458979098607639288576219513318668
|
|
9225695129646757356633054240381829129713384692069722090865329642678721452
|
|
0498282547449174013212631176349763041841925658508183430728735785180720022
|
|
6610610976409330427682939038830232188661145407315191839061843722347638652
|
|
2358621023709614892475992549913470377150544978245587636602389825966734672
|
|
4881313286172042789892790449474381404359721887405541078434352586353504769
|
|
3496369353388102640011362542905271216555715426855155792183472743574429368
|
|
8180244990686029309917074210158455937851784708403991222425804392172806883
|
|
6319627259549542619921037414422699999996745956099902119463465632192637190
|
|
0489189106938166052850446165066893700705238623763420200062756775057731750
|
|
6641676284123435533829460719650698085751093746231912572776470757518750391
|
|
5563715561064342453613226003855753222391818432840397876190514402130971726
|
|
5577318723067636559364606039040706037059379915472451988277824994435505669
|
|
5826303114971448490830139190165906623372345571177815019676350927492987863
|
|
8510120801855403342278019697648025716723207127415320209420363885911192397
|
|
8935356748988965107595494536942080950692924160933685181389825866273540579
|
|
7830420950432411393204811607630038702250676486007117528049499294652782839
|
|
8545208539845593564709563272018683443282439849172630060572365949111413499
|
|
6770109891771738539913818544215950186059106423306899744055119204729613309
|
|
9823976366959550713273961485308505572510363683514934578195554558760016329
|
|
4120032290498384346434429544700282883947137096322722314705104266951483698
|
|
9368770466478147882866690955248337250379671389711241
|
|
EOS
|
|
assert_equal shell_output("#{bin}/spigot -d1729 tau").strip,
|
|
expected.delete!("\n")
|
|
end
|
|
end
|