diff --git a/.github/autobump.txt b/.github/autobump.txt index 803f0306d42f..b15a962998a5 100644 --- a/.github/autobump.txt +++ b/.github/autobump.txt @@ -2367,7 +2367,6 @@ rust rust-analyzer rust-parallel rustcat -rustfmt rustls-ffi rustscan rustup diff --git a/Aliases/llvm@18 b/Aliases/llvm@19 similarity index 100% rename from Aliases/llvm@18 rename to Aliases/llvm@19 diff --git a/Aliases/thrift@0.20 b/Aliases/thrift@0.21 similarity index 100% rename from Aliases/thrift@0.20 rename to Aliases/thrift@0.21 diff --git a/Formula/a/apache-arrow.rb b/Formula/a/apache-arrow.rb index aee8bd82eb31..2e437678e4d7 100644 --- a/Formula/a/apache-arrow.rb +++ b/Formula/a/apache-arrow.rb @@ -5,16 +5,16 @@ class ApacheArrow < Formula mirror "https://archive.apache.org/dist/arrow/arrow-17.0.0/apache-arrow-17.0.0.tar.gz" sha256 "9d280d8042e7cf526f8c28d170d93bfab65e50f94569f6a790982a878d8d898d" license "Apache-2.0" - revision 4 + revision 5 head "https://github.com/apache/arrow.git", branch: "main" bottle do - sha256 cellar: :any, arm64_sequoia: "2966504797cf0e9213d4d46bf49c7648a4f11f248b3b9e16f9a2e63bf16b7993" - sha256 cellar: :any, arm64_sonoma: "7b6a3c22a210c64dbfa6714eaf39e1af777a3e89647128d2337712b8fd8ef999" - sha256 cellar: :any, arm64_ventura: "950b16ab769bafc1295ccca886ff956bf93498c3ca160b4dda44d03f9a18c132" - sha256 cellar: :any, sonoma: "aa9dca74f90e7c61bd4676e6a98baddbaaaa6a0c04371f0d73ecf9685d53efb0" - sha256 cellar: :any, ventura: "8c77ca0e8d6b747bf75edf84bfd49fa6754598bccf4284c95d58fbe8308befcb" - sha256 cellar: :any_skip_relocation, x86_64_linux: "fc11875ec70969549970725a0cf6ea4bb08d680ef4e2fa2b51cbc808b2aff258" + sha256 cellar: :any, arm64_sequoia: "9279c593cbf8b829537f022f13f9587b06dfc85626771772796f46df96a39790" + sha256 cellar: :any, arm64_sonoma: "5d3991e57162dc1a9d89d26892f8f125268f4da19e5e7c6ad694889684ef6b20" + sha256 cellar: :any, arm64_ventura: "3d7cffc5893fc206ed04e44d818298a7021b23e93e358a5f7301caa3b05cc4cc" + sha256 cellar: :any, sonoma: "04f000e1e88e0064febc52c86102a71723ed2291f1944f9f820f4a5bba270d8c" + sha256 cellar: :any, ventura: "64f8a3767b9e24c8f2a3f8aed90df98cafe19af1f8aa608764a94851cccc5426" + sha256 cellar: :any_skip_relocation, x86_64_linux: "8516105924d39b3557bf096cbc59563d50fa1b503850d2b746a1bcd265fbb5ed" end depends_on "boost" => :build @@ -27,7 +27,7 @@ class ApacheArrow < Formula depends_on "c-ares" depends_on "glog" depends_on "grpc" - depends_on "llvm" + depends_on "llvm@18" depends_on "lz4" depends_on "openssl@3" depends_on "protobuf" @@ -43,11 +43,15 @@ class ApacheArrow < Formula fails_with gcc: "5" + def llvm + deps.map(&:to_formula).find { |f| f.name.match?(/^llvm(@\d+)?$/) } + end + def install # Work around an Xcode 15 linker issue which causes linkage against LLVM's # libunwind due to it being present in a library search path. - llvm = Formula["llvm"] ENV.remove "HOMEBREW_LIBRARY_PATHS", llvm.opt_lib if DevelopmentTools.clang_build_version >= 1500 + ENV.append "LDFLAGS", "-Wl,-rpath,#{llvm.opt_lib}" if OS.linux? # We set `ARROW_ORC=OFF` because it fails to build with Protobuf 27.0 args = %W[ diff --git a/Formula/a/aptos.rb b/Formula/a/aptos.rb index 77ba209cfcdf..90befdd43628 100644 --- a/Formula/a/aptos.rb +++ b/Formula/a/aptos.rb @@ -12,17 +12,18 @@ class Aptos < Formula end bottle do - sha256 cellar: :any_skip_relocation, arm64_sequoia: "34a3e4997abd60172fe213f65ffa0fcee8f00df921ada7ea07aeb4d2de32b13c" - sha256 cellar: :any_skip_relocation, arm64_sonoma: "630fee62cd288dce870873fba7376e057e4a49b6c06379105b685fb3c20efffc" - sha256 cellar: :any_skip_relocation, arm64_ventura: "634680f145c1c4fd62a1fabb46aae7d42944b21f004d4f3aa2affabe46970459" - sha256 cellar: :any_skip_relocation, sonoma: "98a354b8ba6faef706e8db6207a941d28258c0daa23b97cf12b7af342e0b3b30" - sha256 cellar: :any_skip_relocation, ventura: "81a6ea50e541bd7f0fc97fbe49ba72edd9664590331b9fba80a83a39fb352874" - sha256 cellar: :any_skip_relocation, x86_64_linux: "f2ad14b66dd889e278df704d7abe181f07d37637a5fed8fa1a1b2f44b75ed21e" + rebuild 1 + sha256 cellar: :any_skip_relocation, arm64_sequoia: "383a10d2d0e0e9ff03d4c994e7c830575c1d5f2d3ef7184a1f8aab0717aac8fd" + sha256 cellar: :any_skip_relocation, arm64_sonoma: "1235578eac1e6e0541b432f563d13dfdb0d9fce6fd9326e3a5aa722da3d7afc9" + sha256 cellar: :any_skip_relocation, arm64_ventura: "afbba60ab7449bf52e444b960d6ed35c279362cbcabd7f67c24ee41eff1f2a9f" + sha256 cellar: :any_skip_relocation, sonoma: "9631f242d87e8898ebbc6dc8aeec5f88b0577026572f0d02aeea3de44d9d1e42" + sha256 cellar: :any_skip_relocation, ventura: "78c1c494a0af2ce2d2438dafa7fa0b72720ec69eb4f28b63c8b8acd1acc15ef6" + sha256 cellar: :any_skip_relocation, x86_64_linux: "9a729432b4dcccf8e3a7753fe5b952d34d1cfed2730fb853dfeadc127c702c0b" end depends_on "cmake" => :build depends_on "rust" => :build - depends_on "rustfmt" => :build + uses_from_macos "llvm" => :build on_linux do @@ -39,8 +40,9 @@ class Aptos < Formula end def install - # FIXME: Figure out why cargo doesn't respect .cargo/config.toml's rustflags - ENV["RUSTFLAGS"] = "--cfg tokio_unstable -C force-frame-pointers=yes -C force-unwind-tables=yes" + # FIXME: Look into a different way to specify extra RUSTFLAGS in superenv as they override .cargo/config.toml + # Ref: https://github.com/Homebrew/brew/blob/master/Library/Homebrew/extend/ENV/super.rb#L65 + ENV.append "RUSTFLAGS", "--cfg tokio_unstable -C force-frame-pointers=yes -C force-unwind-tables=yes" system "cargo", "install", *std_cargo_args(path: "crates/aptos"), "--profile=cli" end diff --git a/Formula/c/c2rust.rb b/Formula/c/c2rust.rb index df9022e4401f..9ffcb15a0aa3 100644 --- a/Formula/c/c2rust.rb +++ b/Formula/c/c2rust.rb @@ -4,21 +4,20 @@ class C2rust < Formula url "https://github.com/immunant/c2rust/archive/refs/tags/v0.19.0.tar.gz" sha256 "912c28e5e289d1a9ef1e0f6c89db97eba19eda58625ca8bdc5b513fdb3c19ba4" license "BSD-3-Clause" + revision 1 bottle do - sha256 cellar: :any, arm64_sequoia: "34a4e0a9c45c009219de7577f411f54d32ffa3ffdd0f2417a00f8b0587bad7eb" - sha256 cellar: :any, arm64_sonoma: "91ba7bf44c954d674c4d17d5c4959347a4ecec307c89c467f86c2385993e9bd6" - sha256 cellar: :any, arm64_ventura: "df6a11535c68760e4cd319d282b791d0ac53e17508bc446cb38e74f16e581862" - sha256 cellar: :any, arm64_monterey: "b153725d08d02ecf282b119fd23d9b5d8b8633719d84dae1da651babc78a6d27" - sha256 cellar: :any, sonoma: "089d4307655cbe4654cced9487e11f5cd023c462fafbf34af5ee28f1a8bd0933" - sha256 cellar: :any, ventura: "8a2ce457289df4ab8a952c5739fbb69eeac58bf23cfbe89ce8a7ed920c5be435" - sha256 cellar: :any, monterey: "46195003b9ddc8e715479cba427daa7e185a9b2cb88aec55a2323b3ee31c1277" - sha256 cellar: :any_skip_relocation, x86_64_linux: "943361f3a32563316096e1367017503c30a6b7c5ccdb666038bbf35b45f6af95" + sha256 cellar: :any, arm64_sequoia: "d9868ff52ddf26a449db237b4ecc72dafd9137c672c86744c3f480f0b69e607a" + sha256 cellar: :any, arm64_sonoma: "1c74fbca870f39ad8c8920fcbf153200a04484e333230b9ad0dba80894757936" + sha256 cellar: :any, arm64_ventura: "6903c7d307a32e0405e691e71e0915910c7acc537ab8f662b5d178530809e7f0" + sha256 cellar: :any, sonoma: "35789caa2462fabfe9fe63d63613e6afd4035173bd2c0f30a048c51ef0ee3e95" + sha256 cellar: :any, ventura: "520a8db5a7bb6e0ab226a70c24b68d7dd4c11e3af22d8c1c6fa5779f8b09e011" + sha256 cellar: :any_skip_relocation, x86_64_linux: "46f1ba002a700369c7118df22f22a61e25ee5d1d093f7173211de77e356e89ce" end depends_on "cmake" => [:build, :test] depends_on "rust" => :build - depends_on "llvm" + depends_on "llvm@18" fails_with gcc: "5" diff --git a/Formula/c/c3c.rb b/Formula/c/c3c.rb index ea8e2c59353b..788efb76bdfe 100644 --- a/Formula/c/c3c.rb +++ b/Formula/c/c3c.rb @@ -4,6 +4,7 @@ class C3c < Formula url "https://github.com/c3lang/c3c/archive/refs/tags/v0.6.2.tar.gz" sha256 "e39f98d5a78f9d3aa8da4ce07062b4ca93d25b88107961cbd3af2b3f6bcf8e78" license "LGPL-3.0-only" + revision 1 head "https://github.com/c3lang/c3c.git", branch: "master" # Upstream creates releases that use a stable tag (e.g., `v1.2.3`) but are @@ -15,14 +16,12 @@ class C3c < Formula end bottle do - sha256 cellar: :any, arm64_sequoia: "b38dac4258f1e9081225a61fdb0e5a27bae4d5edd00807f46c2ba5e2ac39ad0f" - sha256 cellar: :any, arm64_sonoma: "cb180a4f2deaeb13edf804482822f8c5288ef438b23f66c4827de1915dde40df" - sha256 cellar: :any, arm64_ventura: "93acc32a9a02ebbe234321dd4637646a706070bdee7890d42e6c27b662b5f36f" - sha256 cellar: :any, arm64_monterey: "72557fa0d509682eae2d080bca8805965d13346f4315bd0caa1fdb52ac12fc75" - sha256 cellar: :any, sonoma: "dfe32cca70fa147b8dc5939f237302293b9193db44508ee4271ca2fe0af9a052" - sha256 cellar: :any, ventura: "92f0cd5376894a8952ef89d28b2be048f1e558faa258226e6663b07d72b44626" - sha256 cellar: :any, monterey: "31b0c19166a07d5898b0178c129d2c8a484b127936f62d82ce28fa0a9135c6fc" - sha256 cellar: :any_skip_relocation, x86_64_linux: "f5f5d45917d84b6db9d75d00b32473bde36bb4b9d99e6cef363031a77e444394" + sha256 cellar: :any, arm64_sequoia: "6fceff3b368580212fb57c1c31daebf31d53f7555b16d16b8a5822ed9847311b" + sha256 cellar: :any, arm64_sonoma: "57a190baa5a539f891b28fa56d7dccb0bd6169b6d9e819c0bb1467913511348d" + sha256 cellar: :any, arm64_ventura: "f30e7fb7d4e2b89579730d76d23bc815242115d8e805127565602a75597d46aa" + sha256 cellar: :any, sonoma: "6b509cd22bdbee60382b5e430e7e2961c7ac18dd4eb228667cd753122fd146f9" + sha256 cellar: :any, ventura: "efc433ad4eefc49ad65ccbf8b544cd51efc156ebad455c2f30feaf3493ded940" + sha256 cellar: :any_skip_relocation, x86_64_linux: "35aa7fa878153939fbfb9bbdcb517efced0c22b7488a52d6b0cf00b8072de953" end depends_on "cmake" => :build diff --git a/Formula/c/castxml.rb b/Formula/c/castxml.rb index badda026ef26..969495d47cc6 100644 --- a/Formula/c/castxml.rb +++ b/Formula/c/castxml.rb @@ -4,6 +4,7 @@ class Castxml < Formula url "https://github.com/CastXML/CastXML/archive/refs/tags/v0.6.8.tar.gz" sha256 "b517a9d18ddb7f71b3b053af61fc393dd81f17911e6c6d53a85f3f523ba8ad64" license "Apache-2.0" + revision 1 head "https://github.com/CastXML/castxml.git", branch: "master" livecheck do @@ -12,14 +13,12 @@ class Castxml < Formula end bottle do - sha256 cellar: :any, arm64_sequoia: "5af2713fd3035cf02fe7c8c97aa6532cf32c5c1933117dbf9e50544b762e498a" - sha256 cellar: :any, arm64_sonoma: "6a6ac1c558ad4289f70616bf82263fcc376a7b65457ef300a85b4b450baeb67a" - sha256 cellar: :any, arm64_ventura: "9dd34d3a642d6f223b3fc06295ddbd050c91333384109ccf5f0941dcc81350c5" - sha256 cellar: :any, arm64_monterey: "9d9d0011b3375819cd8c78a0e6ddf51852482bb924c8ee9aa72af9ddbda4092b" - sha256 cellar: :any, sonoma: "369ed34afa1b9f615dd5ea4b516db04e515040ea25fde0cebf54e3d5f08ff891" - sha256 cellar: :any, ventura: "5e37026bc8dc4853a0fb8fb7a2459895502b94a3fe473e2029ccbf29c18e494a" - sha256 cellar: :any, monterey: "1df679a58e0764b752652f1892ec23e3d254923b0bfd650adcfba85d5d5b938d" - sha256 cellar: :any_skip_relocation, x86_64_linux: "638b5864eeeea4cf53136547610a49ba9ae8189b9429a88410e4b86f7353e959" + sha256 cellar: :any, arm64_sequoia: "c3e6096ebeb212633387dfb4079e70693de0ed8fe2e8716472aafff37893fdf9" + sha256 cellar: :any, arm64_sonoma: "64879e3d57f14f5d78eff1825bc615c3cf528d0252e358c5b9c9c63bc0425989" + sha256 cellar: :any, arm64_ventura: "3da47ccd6c2df92725b72f393a4497b0856bc6a2245ddaaecb22393c46aba3b9" + sha256 cellar: :any, sonoma: "68bcb12975621cd10264a035306e402260f707a0ad409f25600f19c4bfab1234" + sha256 cellar: :any, ventura: "caf54e3bde83c17344c9ebd6780959c241c3096152ecd0cbc62b553cd2f0bde3" + sha256 cellar: :any_skip_relocation, x86_64_linux: "497247f119be0b5baa9940d48e25ecc0b20af5f8e04a7d3cfe64e27e5cdaf3a0" end depends_on "cmake" => :build diff --git a/Formula/c/ccls.rb b/Formula/c/ccls.rb index 85e9c338e985..7cc683f4b62a 100644 --- a/Formula/c/ccls.rb +++ b/Formula/c/ccls.rb @@ -10,23 +10,21 @@ class Ccls < Formula url "https://github.com/MaskRay/ccls/archive/refs/tags/0.20240202.tar.gz" sha256 "355ff7f5eb5f24d278dda05cccd9157e89583272d0559d6b382630171f142d86" license "Apache-2.0" - revision 1 + revision 2 head "https://github.com/MaskRay/ccls.git", branch: "master" bottle do - sha256 arm64_sequoia: "2e70185800e918fa60402951f93c0c87328ef4b9e190ed0f7f38ef67bb4e89bf" - sha256 arm64_sonoma: "7492cb5f43e3bf65ec1a6a8aa9d24151154b02df4c63c2a791bf495b08d65a61" - sha256 arm64_ventura: "5b3c4f1003dcad16b0221032aebd2793dea4efb500678668dedcaa118870df69" - sha256 arm64_monterey: "998e41d641b206a6bfeae293dae477f08a802c5b0bf368e487e7b8b504d9f1d0" - sha256 sonoma: "417b048477613be53f4aeb16b11cd60da20163342f6643d108256325f52825b0" - sha256 ventura: "a9099ef1c527080d63783fc4620850e7bc2d93061e84c54aa706da49d024932d" - sha256 monterey: "89adaa6d420d1f21b4a176fb77ddc1236e0a102009956b5ac0efd6eb6844cd5c" - sha256 cellar: :any_skip_relocation, x86_64_linux: "26999d25d86872987728832416459e7291fd221f916fe7678a6af06b11623150" + sha256 arm64_sequoia: "456e64f301999bde6fd6fbb722c567394889be93b89488052936f14e35f96a92" + sha256 arm64_sonoma: "62c9aa4d98c0d97dadcbde5f70d5b47725d1dc360fd2f017472baae37336fad1" + sha256 arm64_ventura: "9e105743aa472cc07f74892abe7b3a1bce9c9c0b6ab53405dfdee0548b04ef01" + sha256 sonoma: "e1e19b603b8825c9d9552a75e23a8436066b0cc7fbc22ec155c467a3e8c619cb" + sha256 ventura: "2582130416de11b29dd35833f983f2f865fea39e52f3e046b86c822f5bd47444" + sha256 cellar: :any_skip_relocation, x86_64_linux: "057d51586172d98b836683ed9e2ba3fc12abdde0b3de8451c60b73f543792cdb" end depends_on "cmake" => :build depends_on "rapidjson" => :build - depends_on "llvm" + depends_on "llvm@18" depends_on macos: :high_sierra # C++ 17 is required fails_with gcc: "5" @@ -38,6 +36,7 @@ def llvm end def install + ENV.append "LDFLAGS", "-Wl,-rpath,#{rpath(target: llvm.opt_lib)}" if OS.linux? resource_dir = Utils.safe_popen_read(llvm.opt_bin/"clang", "-print-resource-dir").chomp resource_dir.gsub! llvm.prefix.realpath, llvm.opt_prefix system "cmake", "-S", ".", "-B", "build", "-DCLANG_RESOURCE_DIR=#{resource_dir}", *std_cmake_args diff --git a/Formula/c/chapel.rb b/Formula/c/chapel.rb index 9b3c075524cd..21703c731220 100644 --- a/Formula/c/chapel.rb +++ b/Formula/c/chapel.rb @@ -4,25 +4,23 @@ class Chapel < Formula url "https://github.com/chapel-lang/chapel/releases/download/2.1.0/chapel-2.1.0.tar.gz" sha256 "72593c037505dd76e8b5989358b7580a3fdb213051a406adb26a487d26c68c60" license "Apache-2.0" - revision 2 + revision 3 head "https://github.com/chapel-lang/chapel.git", branch: "main" bottle do - sha256 arm64_sequoia: "2d9ed5b132c2dd7ee095a4a5e4edf2cdbe573232d94403e7fa2b4d1b55c801e7" - sha256 arm64_sonoma: "8fef36b23b39444d16b245ebdbe8db4e9eacf700237c9a45b855481147bf38ec" - sha256 arm64_ventura: "9e8107f9f7a48cfd519ae6a240ad2b21a5a380d40177b7bcef8126b03447c053" - sha256 arm64_monterey: "1cba37d433a5b4a893f9b220cf5ca0434bca0bfa383e7724ee71096a6598fc8f" - sha256 sonoma: "d4d8a4f514115690e1c7968f239e0449e3e0a55094e90dc5a857892eeb588c55" - sha256 ventura: "38afff1791b315572dbb30cc11b708ad6d222f61f7501ca86caed38d7837dfe6" - sha256 monterey: "b7860d273572a53d93fe98344995af049c97eb4e94c02d4cffcc45854bc6b106" - sha256 x86_64_linux: "a038f17093596dfb5c2edeb04719dcb2e32f5255a6c770a6ad351b69aa6ebdff" + sha256 arm64_sequoia: "2d501f1424bc9f21bfad56bcfc556cf8712e524db4fcbf57ee2cb18b59673be4" + sha256 arm64_sonoma: "c16920ce4c25f8d530ad0fb9612c8d7caaafa53246b2a747dbf5e3115c46dfe8" + sha256 arm64_ventura: "cc1f389cfd794bac980e53a42ca8e9c0255c9f73c6986adbd94722a27fe55733" + sha256 sonoma: "8cbef3e52afed90588890167c3be772a33511faaf83ff2bdde68335b657167bf" + sha256 ventura: "5e50cc8ad9a26b24125f4b725038a5a312068f7cd05273cbe01dcc56b5d50c4a" + sha256 x86_64_linux: "67c2451db78969ab1a7031ed8b6758b02da7ca728ae11ca41b8d7ff3321d2ed6" end depends_on "cmake" depends_on "gmp" depends_on "hwloc" depends_on "jemalloc" - depends_on "llvm" + depends_on "llvm@18" depends_on "pkg-config" depends_on "python@3.12" diff --git a/Formula/c/clang-uml.rb b/Formula/c/clang-uml.rb index dcbbb45001d2..b4b7773fc751 100644 --- a/Formula/c/clang-uml.rb +++ b/Formula/c/clang-uml.rb @@ -4,22 +4,21 @@ class ClangUml < Formula url "https://github.com/bkryza/clang-uml/archive/refs/tags/0.5.4.tar.gz" sha256 "445ae69e9ef7dcc50d0352dcd79d8c55994a7bebd84684f95405fd81168338c4" license "Apache-2.0" + revision 1 head "https://github.com/bkryza/clang-uml.git", branch: "master" bottle do - sha256 cellar: :any, arm64_sequoia: "96289df11ad52077394f8173f1de3159117349c817ba11c80e2135a752304013" - sha256 cellar: :any, arm64_sonoma: "ca2ac85a447a17f124d9af35041e8135c9accf744ea4fd20f695706f8679104a" - sha256 cellar: :any, arm64_ventura: "2a883f3fde53ff4c1467348172a79dae3ee2f924006d93164af879ccb544c445" - sha256 cellar: :any, arm64_monterey: "783a0b9f50a1c5b064e1913b4d1a4910e4c4ec4a54ed1efe28ac437a00824fd0" - sha256 cellar: :any, sonoma: "200736ce230a15a5af25d76b07efff3fe91d14077756b76be8ce401a698998ad" - sha256 cellar: :any, ventura: "04014ddaf6aec03abf7611453987ba21c734b5c134d51b08a75b612a03fa44ec" - sha256 cellar: :any, monterey: "33a5a27ed337b5d8f7c8ed1f31c4b95048aa666ab4ee0453bf93bbb8a15d7571" - sha256 cellar: :any_skip_relocation, x86_64_linux: "3f3a9baf770cdd7cec9ae43c83c558b4cf9cd49621047bbcd9e8fec5ecc42126" + sha256 cellar: :any, arm64_sequoia: "9927bed78f589e47e24c8eacf0fcb3e136982dfe4f3120b2cc18435dce43ac8a" + sha256 cellar: :any, arm64_sonoma: "93dca4721249fe73a856e83c43042b92341552a8904995b508a0c68c28cf554c" + sha256 cellar: :any, arm64_ventura: "98c57248f12fda4f74a6a0ed0bba7312a89f4e96c5946050a9d1bf221611c73a" + sha256 cellar: :any, sonoma: "a544e1ed6d5dc78353b4997ee5ec34704ebeae01d8d5fcdca372a9439a61f2ec" + sha256 cellar: :any, ventura: "0b8240b547f5a67695d217c0ebba55ba9b19fa2806aa9e817e19ec396c95522c" + sha256 cellar: :any_skip_relocation, x86_64_linux: "ca0cb3bc5af05f8471c9ef49a18a9e16a0c05de75343ae90f4ea46ac6207a33e" end depends_on "cmake" => [:build, :test] depends_on "pkg-config" => :build - depends_on "llvm" + depends_on "llvm@18" depends_on "yaml-cpp" fails_with gcc: "5" @@ -30,6 +29,7 @@ def llvm end def install + ENV.append "LDFLAGS", "-Wl,-rpath,#{rpath(target: llvm.opt_lib)}" if OS.linux? args = %w[ -DBUILD_TESTS=OFF ] diff --git a/Formula/c/clazy.rb b/Formula/c/clazy.rb index a8ae43da0c68..1971a5f892c7 100644 --- a/Formula/c/clazy.rb +++ b/Formula/c/clazy.rb @@ -4,6 +4,7 @@ class Clazy < Formula url "https://download.kde.org/stable/clazy/1.12/src/clazy-1.12.tar.xz" sha256 "611749141d07ce1e006f8a1253f9b2dbd5b7b44d2d5322d471d62430ec2849ac" license "LGPL-2.0-or-later" + revision 1 head "https://invent.kde.org/sdk/clazy.git", branch: "master" livecheck do @@ -12,20 +13,18 @@ class Clazy < Formula end bottle do - rebuild 1 - sha256 cellar: :any, arm64_sonoma: "d77728a15bb8ce9880ca58de6be9c2d797070005fdc0eced91fc8842919114b9" - sha256 cellar: :any, arm64_ventura: "f320bb50dd45f262013bb6d6874b13096e5c1f5f7a1527d164e6a76ea0e6590a" - sha256 cellar: :any, arm64_monterey: "6d3d5b87bd999a455c4b3a37af0c1ffd557c730c0c9d8dfe1f0a6dab7e32bb96" - sha256 cellar: :any, sonoma: "f651d79d2e47ec4e3dd66a33238b4350133a6bdd9d00b20ab5c02ab1055ff831" - sha256 cellar: :any, ventura: "c088cb0b2ea3c7469aaf6faa065834e1569dc9ab2ee6a051f97f231d82c9499a" - sha256 cellar: :any, monterey: "34e24dcff3ec435541d3d87928dd74cc7d8dc7ca9f81020e67c9a3dd740fc090" - sha256 cellar: :any_skip_relocation, x86_64_linux: "fa742df2bd9d966a119da1e9f82788e4d1e942a43e8c4f8b9da96fa452408388" + sha256 cellar: :any, arm64_sequoia: "4c414da467a6431fa3fcb801a9782193e4bc33c79e5c46ce89225d59ad89f0cd" + sha256 cellar: :any, arm64_sonoma: "de510c93eac7168ae31e41ddf5c016a143ca82cfd303155dc00869ea58a777d6" + sha256 cellar: :any, arm64_ventura: "48c9b07863a47b5d5e53a97ccaf6e1ae5dfa19c9ee484a800cf342fd43b9967f" + sha256 cellar: :any, sonoma: "c1ea2d9d4092095114db97f32bb67c008c865e0724366724305d13272d495e5b" + sha256 cellar: :any, ventura: "2795771a1d25fd000c81613aedf48ffaf9a394fa30e2e4ff140d83b85e69076f" + sha256 cellar: :any_skip_relocation, x86_64_linux: "60afe9ee7a03dbee90248110fd343c0c3a4be1192e86050562d76ff0add050d4" end depends_on "cmake" => [:build, :test] depends_on "qt" => :test depends_on "coreutils" - depends_on "llvm" + depends_on "llvm@18" uses_from_macos "libxml2" uses_from_macos "ncurses" diff --git a/Formula/c/cppinsights.rb b/Formula/c/cppinsights.rb index 2b07eb82dd26..f6f7112f3f24 100644 --- a/Formula/c/cppinsights.rb +++ b/Formula/c/cppinsights.rb @@ -4,25 +4,26 @@ class Cppinsights < Formula url "https://github.com/andreasfertig/cppinsights/archive/refs/tags/v_17.0.tar.gz" sha256 "2dd6bcfcdba65c0ed2e1f04ef79d57285186871ad8bd481d63269f3115276216" license "MIT" - revision 1 + revision 2 bottle do - sha256 cellar: :any, arm64_sequoia: "a98eb7b557dfbbec2513985ca276c36ac0d3850d278ecdb5d7d17ed6337aa279" - sha256 cellar: :any, arm64_sonoma: "a73346fbd9edb64521a44f884289097c82361f2a0a459705dad0e8981b2f74fa" - sha256 cellar: :any, arm64_ventura: "3a1594c14be75f743a274b8f3e4093b122260d4ec82c9d67596f1141ce83d455" - sha256 cellar: :any, arm64_monterey: "a1ce431bab70c47c4ec36092a09239b4786c45d1971ea1a4b670c15f8761fb60" - sha256 cellar: :any, sonoma: "05ebd00bb3dd6a28675df46610cb8e3713aa4a77395d7bb9dcc6ee1a70dd96e8" - sha256 cellar: :any, ventura: "847ad399da7cd8e1041a27a49ae0045257683e898116afff9f802cde794d8cd9" - sha256 cellar: :any, monterey: "a8abb0ff037bb8cefd1b94d7aff08f0afbc4923eb740c7bdb9cc69acc17c99c7" - sha256 cellar: :any_skip_relocation, x86_64_linux: "04c0af7c3a2ca0b57f47099782d2bd08ab2148ef13e84f978c4a571cc8e695e1" + sha256 cellar: :any, arm64_sequoia: "75a73b5aa7725274922c8a7d140313cce6fd95e39374e2e677759568e407840a" + sha256 cellar: :any, arm64_sonoma: "1cab5ed788571093faf15dcda82c042b470bac850e2de62f69e99bf2c7e7330e" + sha256 cellar: :any, arm64_ventura: "23f3600ff5108c1b9be5525c295f6696c1caebbf7705cf91edf30399402ff1d4" + sha256 cellar: :any, sonoma: "67c44fa535a4314786580932ee508bd33d62661355f623cac5ff8dd83a158bdd" + sha256 cellar: :any, ventura: "07d8c5dcd3af7a9da011a033e0b2d4fbdb19e537f41ab7e2a7a324a8a4f07788" + sha256 cellar: :any_skip_relocation, x86_64_linux: "4e1fb6833d6e99d81766f6ff9540194c0c04267bd53ca6e077ed525be84e4487" end depends_on "cmake" => :build - depends_on "llvm" + depends_on "llvm@18" + on_macos do + depends_on "llvm" => :build if DevelopmentTools.clang_build_version <= 1500 + end fails_with :clang do - build 1300 - cause "Requires C++20" + build 1500 + cause "Requires Clang > 15.0" end # Patch from https://github.com/andreasfertig/cppinsights/pull/622 @@ -30,9 +31,18 @@ class Cppinsights < Formula patch :DATA def install - ENV.llvm_clang if ENV.compiler == :clang && DevelopmentTools.clang_build_version <= 1500 + if OS.mac? && DevelopmentTools.clang_build_version <= 1500 + ENV.llvm_clang + ENV.remove "HOMEBREW_LIBRARY_PATHS", Formula["llvm"].opt_lib + end + + llvm18 = Formula["llvm@18"] + ENV.append "LDFLAGS", "-L#{llvm18.lib}" - system "cmake", "-S", ".", "-B", "build", *std_cmake_args + system "cmake", "-S", ".", "-B", "build", + "-DINSIGHTS_LLVM_CONFIG=#{llvm18.opt_bin}/llvm-config", + "-DINSIGHTS_USE_SYSTEM_INCLUDES=Off", + *std_cmake_args system "cmake", "--build", "build" system "cmake", "--install", "build" end @@ -46,6 +56,7 @@ def install assert_match "{2, 3, 4, 0, 0}", shell_output("#{bin}/insights ./test.cpp") end end + __END__ diff --git a/CMakeLists.txt b/CMakeLists.txt index 31341709..8b7430db 100644 diff --git a/Formula/c/creduce.rb b/Formula/c/creduce.rb index 58287524fae7..7fe9b2543bd8 100644 --- a/Formula/c/creduce.rb +++ b/Formula/c/creduce.rb @@ -2,7 +2,7 @@ class Creduce < Formula desc "Reduce a C/C++ program while keeping a property of interest" homepage "https://github.com/csmith-project/creduce" license "BSD-3-Clause" - revision 4 + revision 5 head "https://github.com/csmith-project/creduce.git", branch: "master" # Remove when patches are no longer needed. @@ -57,19 +57,16 @@ class Creduce < Formula end bottle do - rebuild 2 - sha256 cellar: :any, arm64_sequoia: "c734ec8d35505aa8bb847e3e8a0e762c083dee878ee8a9476c58e17212288ebe" - sha256 cellar: :any, arm64_sonoma: "a84e7830c2d4c2f038abf3bade992a13223b0f64ce7880f889938d791b207ce4" - sha256 cellar: :any, arm64_ventura: "4ff607af8b4a7f7b713e58c660272d700ba6ea8ad004865342205aecf1aaec4b" - sha256 cellar: :any, arm64_monterey: "f2cd0d3b84053296246e0e226e80c4177da63c0a5d260fa44963c8e34ed26a59" - sha256 cellar: :any, sonoma: "533902d5ef71e899ab1851933b694390929df4f4152762528334e374943c0b9d" - sha256 cellar: :any, ventura: "b06ebf7952eb3abe4d34f800e85cc740df03a7739ee36a7b25f08f8c64dd51c5" - sha256 cellar: :any, monterey: "4deb4eee650c1477905563c8424885dc51e430eb5ba53a25a7a706d0cfcfac6e" - sha256 cellar: :any_skip_relocation, x86_64_linux: "ac89ad126d791e4e7b3e30406b31656e9c383b82b93ac88742c2410320bb3899" + sha256 cellar: :any, arm64_sequoia: "752bcd060b5ab5d04efc96dfd67d9128e6fd66a2d9b14b5e59735ba758d2d61b" + sha256 cellar: :any, arm64_sonoma: "c489f889cd95d689d226e4965582120a96b1119eb4fb2902c481c6b9338122aa" + sha256 cellar: :any, arm64_ventura: "56cd23ed4e8cdf7a2928f740332b07eed6f3d5b8a22416cf30ab746fbecbe0a7" + sha256 cellar: :any, sonoma: "487aebd04b8609040875fb262122692867f20507b7c71e25a8914a920521242d" + sha256 cellar: :any, ventura: "937ef76ad140358b5458b394b8376746972ce80915e3fa91fc7b6065a94bc5ef" + sha256 cellar: :any_skip_relocation, x86_64_linux: "299566ba27c179eb7e3aa48dfc766b6b3bfe6a4892a929b5777aede0b4e54a05" end depends_on "astyle" - depends_on "llvm" + depends_on "llvm@18" uses_from_macos "flex" => :build uses_from_macos "perl" diff --git a/Formula/c/crystal.rb b/Formula/c/crystal.rb index a8264c32f26b..17c4c0934cdc 100644 --- a/Formula/c/crystal.rb +++ b/Formula/c/crystal.rb @@ -2,6 +2,7 @@ class Crystal < Formula desc "Fast and statically typed, compiled language with Ruby-like syntax" homepage "https://crystal-lang.org/" license "Apache-2.0" + revision 1 stable do url "https://github.com/crystal-lang/crystal/archive/refs/tags/1.13.3.tar.gz" @@ -19,12 +20,12 @@ class Crystal < Formula end bottle do - sha256 cellar: :any, arm64_sequoia: "b3222832b5ead2ec11f5cc08aab91fa6300f90f296bf5810a19bc4bbf531945d" - sha256 cellar: :any, arm64_sonoma: "7cbdf422aedae8886f37a35de838071d1ede0cffc0a2fd5fd3050f327078678b" - sha256 cellar: :any, arm64_ventura: "dd66a14acb653fbff65f4dfce594c52e5adb861f8fa72a91c52fb65e1d7fd949" - sha256 cellar: :any, sonoma: "929cc4e4706e07a2695bd3b70f56b71b130cfdd9b083384fbbc99035e72d5a5b" - sha256 cellar: :any, ventura: "510d31b836f3a9e978f2247e1656e50442eecefa97fd2f60251825b842c24e51" - sha256 cellar: :any_skip_relocation, x86_64_linux: "05555312f31dc74b29bb8eccd14e51f7ec0ad93c2632c3f608a91fa0f3f02588" + sha256 cellar: :any, arm64_sequoia: "5aa2e173319ce6046863435a71b5d667c75f8a2626d61c245c4f363d610300fa" + sha256 cellar: :any, arm64_sonoma: "4c0f592d5f97816bce89b6ef168aced798db5fad2f1f888a36d0eaad5e9f8042" + sha256 cellar: :any, arm64_ventura: "f647848a070379a03cb87c794192103366222400a09f5b5ec2ee208d8e96464c" + sha256 cellar: :any, sonoma: "4d2ceeb8a472bc42ae5b5ea327431b6a5e092092d9b757bdf920be73469ec652" + sha256 cellar: :any, ventura: "ebddab757a7e74dffc1c9c502117535b857e32edac785a1179230609a1b90274" + sha256 cellar: :any_skip_relocation, x86_64_linux: "635e081e16f035c14bc8fd42d7988a9dc23556fb8a5ed807d732bdbdfb4f698b" end head do @@ -39,7 +40,7 @@ class Crystal < Formula depends_on "gmp" # std uses it but it's not linked depends_on "libevent" depends_on "libyaml" - depends_on "llvm" + depends_on "llvm@18" depends_on "openssl@3" # std uses it but it's not linked depends_on "pcre2" depends_on "pkg-config" # @[Link] will use pkg-config if available @@ -99,7 +100,7 @@ def install ENV.prepend_path "CRYSTAL_LIBRARY_PATH", dep.opt_lib end - crystal_install_dir = bin + crystal_install_dir = OS.linux? ? libexec : bin stdlib_install_dir = pkgshare # Avoid embedding HOMEBREW_PREFIX references in `crystal` binary. @@ -109,7 +110,6 @@ def install release_flags = ["release=true", "FLAGS=--no-debug"] crystal_build_opts = release_flags + [ "CRYSTAL_CONFIG_LIBRARY_PATH=#{config_library_path}", - "CRYSTAL_CONFIG_LIBRARY_RPATH=#{config_library_path}", "CRYSTAL_CONFIG_PATH=#{config_path}", "interpreter=true", ] @@ -153,6 +153,14 @@ def install fish_completion.install "etc/completion.fish" => "crystal.fish" man1.install "man/crystal.1" + + return unless OS.linux? + + # Wrapper script so that Crystal can find libraries in HOMEBREW_PREFIX + (bin/"crystal").write_env_script( + crystal_install_dir/"crystal", + LD_RUN_PATH: "${LD_RUN_PATH:+${LD_RUN_PATH}:}#{HOMEBREW_PREFIX}/lib", + ) end test do diff --git a/Formula/c/crystalline.rb b/Formula/c/crystalline.rb index 8a6640fecd8f..8a9ffdd946f4 100644 --- a/Formula/c/crystalline.rb +++ b/Formula/c/crystalline.rb @@ -4,21 +4,22 @@ class Crystalline < Formula url "https://github.com/elbywan/crystalline/archive/refs/tags/v0.14.1.tar.gz" sha256 "caa8cc661abc2ba63194983aae46e87c896d89c228a158521e40c34375d738f7" license "MIT" + revision 1 bottle do - sha256 arm64_sequoia: "6a791148ac79644e6d3d0ba6bd0306e53f62a4f47871af5620bd6603c57f6889" - sha256 arm64_sonoma: "03a5cb50cd6ec32995ddb7276fc9c6a6513b5463a763a040faa1af7fd37adf42" - sha256 arm64_ventura: "7fd5b91daba051719d1f5b1d3e61ac8013e41bd6f00c2b5e10a9551c0daa9fa1" - sha256 sonoma: "820c696641b7444f80fd17110cf333a81e6105088baf4d45c9fb68e542f8ee70" - sha256 ventura: "0322c8711ae76b2d53232f3b131f6bdbd6b637f734ea394ea9576c03add97c43" - sha256 x86_64_linux: "162c25a092ae85798b44eedfad082d82f44efdc537b0f4d29387dc8a69e3fd21" + sha256 arm64_sequoia: "325a6b36db0895dd4d690b735bc2d51b610e2484418551ea4f6d79068036f28f" + sha256 arm64_sonoma: "7dc766c53c793bd6a983e774d12e039e237a10ed8494d19879a8e1f05fb9864e" + sha256 arm64_ventura: "3cd0459c1bb8ffcda56a1cbf1febf08d9be15ffa5d966a0f118e077e6b4a3bb6" + sha256 sonoma: "f64cd7d8667ee0f0a002360f27c435580a227ad655608352bf413ade68f2edb9" + sha256 ventura: "53e251e0463de322579586df86942fc5e9e5df8ac67a9497c91cf8b7e2b74a19" + sha256 x86_64_linux: "e3326305c34cd0c58d44a0f13188f870c3f28d13dfbeac8e966e7b4b89dc55f9" end depends_on "bdw-gc" depends_on "crystal" depends_on "libevent" depends_on "libyaml" - depends_on "llvm" + depends_on "llvm@18" depends_on "pcre2" def install diff --git a/Formula/e/enzyme.rb b/Formula/e/enzyme.rb index a17447179636..f2634606e025 100644 --- a/Formula/e/enzyme.rb +++ b/Formula/e/enzyme.rb @@ -4,15 +4,16 @@ class Enzyme < Formula url "https://github.com/EnzymeAD/Enzyme/archive/refs/tags/v0.0.150.tar.gz" sha256 "9a6cdfef009f86996479d8ceb63bae3341df9f4394c62509d3e8ae2e0cadac22" license "Apache-2.0" => { with: "LLVM-exception" } + revision 1 head "https://github.com/EnzymeAD/Enzyme.git", branch: "main" bottle do - sha256 cellar: :any, arm64_sequoia: "74b42077af5b3297de1a73d40564f0134cd3e4200b4b25ba1fa5349ee10174bf" - sha256 cellar: :any, arm64_sonoma: "e59fc2868ee5f6d7c7c47ec08ad0341bd436e45f32b9d48e8080972b13819cf7" - sha256 cellar: :any, arm64_ventura: "3ff6fb6653d78498ee29f3ed379d7445df228cb2261e725f76c7ad0e3db95e18" - sha256 cellar: :any, sonoma: "7a299609f039b5d7fc3c5d74aa35ba727d3d177d993a4924950dd297e9e203d4" - sha256 cellar: :any, ventura: "7be870f50da0b786033dae4ce3486da9404649020f1bb3ff743940f7e391fe46" - sha256 cellar: :any_skip_relocation, x86_64_linux: "45e44a19203691684fee565424bc3c35dc80525b2883922f1ee891930b493a4f" + sha256 cellar: :any, arm64_sequoia: "0aa59cb38517ba45179d4499c36eef7dba05838762f11401563e916ca0898b05" + sha256 cellar: :any, arm64_sonoma: "1a229bc43778b80cf011626b7423b33e56553a8c51c419467533e1da3013aef5" + sha256 cellar: :any, arm64_ventura: "36cb7c3acedded961f6ad650f568582b996d8acfe7ec7dedcdd30542c3dad7d0" + sha256 cellar: :any, sonoma: "322ca2de57cdabf40610c4ed94efa473a42d8ea827f595dd5fa7c9c59538486d" + sha256 cellar: :any, ventura: "9557b8185c83f3c18eae1146a3400896c029b17a118f8c0f55ac49c6b17d104a" + sha256 cellar: :any_skip_relocation, x86_64_linux: "a235a0d2067b4d833b702e45bef7a9344cf4bebca05109eca8e5e11af5672aaa" end depends_on "cmake" => :build diff --git a/Formula/f/faust.rb b/Formula/f/faust.rb index 784ea2f6feed..38d1157ee190 100644 --- a/Formula/f/faust.rb +++ b/Formula/f/faust.rb @@ -4,7 +4,7 @@ class Faust < Formula url "https://github.com/grame-cncm/faust/releases/download/2.72.14/faust-2.72.14.tar.gz" sha256 "dcd5aaf263c59d34c385e65c4f4c5b85b0e9435e57cbfd79bb67a01e5780acf0" license "GPL-2.0-or-later" - revision 1 + revision 2 # Upstream creates releases that use a stable tag (e.g., `v1.2.3`) but are # labeled as "pre-release" on GitHub before the version is released, so it's @@ -15,21 +15,18 @@ class Faust < Formula end bottle do - sha256 cellar: :any, arm64_sequoia: "a12a10a2709187a7e8eb29af7938833924eba5a0530948a1106488e8c3b69c62" - sha256 cellar: :any, arm64_sonoma: "cbf99a14a52325f082f45f20b76bac55f04dbb5f151ca7e8182312af4bc75174" - sha256 cellar: :any, arm64_ventura: "ba73a779340c6013df8ddb47a52bd46c2d9ff1b2c682b9a33a22f1c2efcbb1ed" - sha256 cellar: :any, arm64_monterey: "dc57cb1d1bd2bcb8d642b4977f4de43f4c55392e0ab3b2fc980bfbc66c1bd4cb" - sha256 cellar: :any, sonoma: "d1a43ccf29d84a1ab5ad6790d5896de3006af509c184ca0d17c615451053e3cc" - sha256 cellar: :any, ventura: "23fb89b9c938fe74ce66ed2d24b33ce5d6aebb38e30d8e579852489b9a331e23" - sha256 cellar: :any, monterey: "5eef8064dd9e09b88df7962119f2ce8d70841ed837e20cdd50591056e4a2b05f" - sha256 cellar: :any_skip_relocation, x86_64_linux: "de5e4644e62bd918cf8f66c90b4a006a3f398f6f7368f0fe4fc24920e2449b06" + sha256 cellar: :any, arm64_sequoia: "7722859fde12c41f92196bcc9b4925cb69f4b5455b5c65714cbfa8ad329d4f2a" + sha256 cellar: :any, arm64_sonoma: "7e80c8851f8d42da0e709a35c3da65ec70c230c875a8e09cc4436ca4d840d6d4" + sha256 cellar: :any, arm64_ventura: "fe765dd3e97eba9c63b943c65db2ae9a11a79ebe2cd1dd01c02daaf54be5d2d6" + sha256 cellar: :any, sonoma: "5138e86243892021eb49290bb60fd4d095c6c8852551aee39859224b91ff575a" + sha256 cellar: :any, ventura: "16e35bfd4838ac328996ddf5d44bb674961af25b5328c1869faf60f87cdf91d2" end depends_on "cmake" => :build depends_on "pkg-config" => :build depends_on "libmicrohttpd" depends_on "libsndfile" - depends_on "llvm" + depends_on "llvm@18" fails_with gcc: "5" diff --git a/Formula/h/halide.rb b/Formula/h/halide.rb index 86ecd5cb8bda..1428a74bca1e 100644 --- a/Formula/h/halide.rb +++ b/Formula/h/halide.rb @@ -4,6 +4,7 @@ class Halide < Formula url "https://github.com/halide/Halide/archive/refs/tags/v18.0.0.tar.gz" sha256 "1176b42a3e2374ab38555d9316c78e39b157044b5a8e765c748bf3afd2edb351" license "MIT" + revision 1 head "https://github.com/halide/Halide.git", branch: "main" livecheck do @@ -12,14 +13,12 @@ class Halide < Formula end bottle do - sha256 cellar: :any, arm64_sequoia: "fbf7682184dfb37cd35090b6db0de25e1cac05643ef72af3468736ffbf9fba5d" - sha256 cellar: :any, arm64_sonoma: "6b2031a500ff63249751eb8725c9fa6c210ecf153bdc804457fa283bb46202de" - sha256 cellar: :any, arm64_ventura: "037f742560f3417064e29caf7ebf6357fb26a3f4fed5b29e03ffb3eea9ff3fce" - sha256 cellar: :any, arm64_monterey: "7e710e9a3c2220c90378e70989135cba62f9825c636418d61091b4abd02b9c68" - sha256 cellar: :any, sonoma: "48adc9932630c4ee63b8b6e5feecadd68facf79946a899401988fe6bfe2a0033" - sha256 cellar: :any, ventura: "87b1adb8078cd4a56bc1be2db7bad8d750a69bc2a5a884ea7bfdc11314b93827" - sha256 cellar: :any, monterey: "f748e6696e228dac1329f3404d7c74d727ce773fd3d1266b856c658630bd9f00" - sha256 cellar: :any_skip_relocation, x86_64_linux: "d64368c6dbfc946f2d471139666b3fe0eadfcc49d8b2eaaadd5f52465ef91f8b" + sha256 cellar: :any, arm64_sequoia: "337d62bf6f959d1d169fb53a7c188f91dfff9d711885b6aff7e7a699e95c693b" + sha256 cellar: :any, arm64_sonoma: "e4b08ec36e64c194e2d0b25973528438e5a3630b9160b6cbeec05964446951ef" + sha256 cellar: :any, arm64_ventura: "51f91908f26d48c0d9cadefedb86cf362f61a706a7f94ce76284ade185cca665" + sha256 cellar: :any, sonoma: "e4585a4da8f90cad8e65e647e381fac0242cae2da58200b43e6502ffc4eb3a38" + sha256 cellar: :any, ventura: "cb74ce65fd1d11bc3829432dc7e4a0eec1521b1372968d22ac29382f6d5a1db3" + sha256 cellar: :any_skip_relocation, x86_64_linux: "28101a52f9af445d2601475e476ad1a6da766d5bcb275d714107ad6b0305c823" end depends_on "cmake" => :build diff --git a/Formula/i/include-what-you-use.rb b/Formula/i/include-what-you-use.rb index 237d3551c5ac..26ac5af23014 100644 --- a/Formula/i/include-what-you-use.rb +++ b/Formula/i/include-what-you-use.rb @@ -4,6 +4,7 @@ class IncludeWhatYouUse < Formula url "https://include-what-you-use.org/downloads/include-what-you-use-0.22.src.tar.gz" sha256 "859074b461ea4b8325a73418c207ca33b5e6566b08e6b587eb9164416569a6dd" license "NCSA" + revision 1 head "https://github.com/include-what-you-use/include-what-you-use.git", branch: "master" # This omits the 3.3, 3.4, and 3.5 versions, which come from the older @@ -16,18 +17,16 @@ class IncludeWhatYouUse < Formula end bottle do - sha256 cellar: :any, arm64_sequoia: "90acdb0718f3ba9ebaf9b347999791d2b882b4747d12f2413e12a3fd0eceae64" - sha256 cellar: :any, arm64_sonoma: "93ba651f774544e0224b878b6de5afe956ce54f5dc54aa2c3d6e31e03f6b840b" - sha256 cellar: :any, arm64_ventura: "6331a210a2b7e4a7e44835ffe2d53f34efc6b32ac08eb4795a1b465a951ecfb2" - sha256 cellar: :any, arm64_monterey: "2cc192ed26e63db781901d83cc33bb7aa4ef36ebe209b54761f1aae7c5f87ff2" - sha256 cellar: :any, sonoma: "272438e21d63b31b571feaf3751d63ae1d3db2caac84bb5c48d111fade0ff433" - sha256 cellar: :any, ventura: "bcb25f4816f40bce3c3f3a9c214ca7a36248f4d2ac7886aac0ceddfa351dfecd" - sha256 cellar: :any, monterey: "acfac454bf31ba77ef0b45579b0fa82f9b0a246c029a6c6a37c9e02c726c44b3" - sha256 cellar: :any_skip_relocation, x86_64_linux: "51f9b21421453b7189f229e0ce41782da2d239b7a15d5f8f0f44a94d73bafd71" + sha256 cellar: :any, arm64_sequoia: "4ed20fb4c62baae23a67013b1bb285f4cf0c778a852725e5ea4cce31139003c5" + sha256 cellar: :any, arm64_sonoma: "efb3d600d636270fc665c6f3d64aa81caff7c5cc2ef94b2d84267a9dc4e94648" + sha256 cellar: :any, arm64_ventura: "933355061e43480f8722c0d8ab8d69f0fb9b6fe0c86a1b0722f6fe3e8bcfab5e" + sha256 cellar: :any, sonoma: "15ea39d4a8af3fc9ffc9e77fb2850494464ce24188f6b0519badd941e65048cf" + sha256 cellar: :any, ventura: "eb459172046d8b587994857fc8adc042d309f228e5bda5019eec35fbf77e526d" + sha256 cellar: :any_skip_relocation, x86_64_linux: "c3a1e76cb95512dba345a66ddcd90d17ffc6aa855faa95350c335b5c867cd919" end depends_on "cmake" => :build - depends_on "llvm" + depends_on "llvm@18" uses_from_macos "ncurses" uses_from_macos "zlib" diff --git a/Formula/i/ispc.rb b/Formula/i/ispc.rb index 09d454c571fb..b849f9cc825e 100644 --- a/Formula/i/ispc.rb +++ b/Formula/i/ispc.rb @@ -4,6 +4,7 @@ class Ispc < Formula url "https://github.com/ispc/ispc/archive/refs/tags/v1.24.0.tar.gz" sha256 "a45ec5402d8a3b23d752125a083fa031becf093b8304ccec55b1c2f37b5479c3" license "BSD-3-Clause" + revision 1 # Upstream sometimes creates releases that use a stable tag (e.g., `v1.2.3`) # but are labeled as "pre-release" on GitHub, so it's necessary to use the @@ -14,22 +15,19 @@ class Ispc < Formula end bottle do - rebuild 1 - sha256 cellar: :any, arm64_sequoia: "56173dbfa70630802d9a1b9b30167ca418aef5bfd1c44e90f94df6826e40ac60" - sha256 cellar: :any, arm64_sonoma: "41c1b1fe5223a511e995381df555f153e6208bd22e7b7644b4a2dd10823a61e7" - sha256 cellar: :any, arm64_ventura: "a567c3b6ba0323e7a1166c447ae486e33f5b4f40eef5b743444a0b9d2be9b613" - sha256 cellar: :any, arm64_monterey: "be76a08cd5cba9cf2da2ae9bd6c15582bbb5817d75f3d761c36370fe04bf3ee2" - sha256 cellar: :any, sonoma: "af4618b443203546e904e02a80fccc89e7455fc2c9880671cc7f038057a4bc49" - sha256 cellar: :any, ventura: "93b09215f93b71e040e9284632507814ab562734c1e0a7ad4ec795bf5dcfd911" - sha256 cellar: :any, monterey: "b51680a68ccfb3c7ac05000229a07e4def868b45176c24f235d4bae7e93c9c3b" - sha256 cellar: :any_skip_relocation, x86_64_linux: "7dd4f8dac1934d94e155fcb2444752157f60be5d7ee1adeab33dd2efd69084d8" + sha256 cellar: :any, arm64_sequoia: "d650f99ada33e330e23eaac7f517fabef65976ed7ee5b92cfca56e5208f7a2fb" + sha256 cellar: :any, arm64_sonoma: "c7a0754f38ea0957194c08777b6f3e4735e99ab10de1485f4f668ef32ae6e2fc" + sha256 cellar: :any, arm64_ventura: "d490a9505d3fdcff68e78b98208818716f6a5d38982f7a65fd634094c4bd2bda" + sha256 cellar: :any, sonoma: "80a689f14d9c006eb0301b64cccd6a5e7d23c84bce4637ae0c6d29fc66abec2d" + sha256 cellar: :any, ventura: "a23c36580e65097630847b2c9ee3ca2815a5eddda847f3def225fbf4738f832b" + sha256 cellar: :any_skip_relocation, x86_64_linux: "dcd08c7b19eef4617e2c0c7cffa482deb8ad588bb46e2b1bc1852c146b041256" end depends_on "bison" => :build depends_on "cmake" => :build depends_on "flex" => :build depends_on "python@3.12" => :build - depends_on "llvm" + depends_on "llvm@18" on_linux do depends_on "tbb" diff --git a/Formula/l/ldc.rb b/Formula/l/ldc.rb index 0b7c8c612d0d..504aac8bbc16 100644 --- a/Formula/l/ldc.rb +++ b/Formula/l/ldc.rb @@ -4,6 +4,7 @@ class Ldc < Formula url "https://github.com/ldc-developers/ldc/releases/download/v1.39.0/ldc-1.39.0-src.tar.gz" sha256 "839bac36f6073318e36f0b163767e03bdbd3f57d99256b97494ac439b59a4562" license "BSD-3-Clause" + revision 1 head "https://github.com/ldc-developers/ldc.git", branch: "master" livecheck do @@ -12,20 +13,18 @@ class Ldc < Formula end bottle do - sha256 arm64_sequoia: "0b6cc16a41f838dd08476e47cb12e9c5ac335b309b809e049447cb957a92cf99" - sha256 arm64_sonoma: "b8c30a4ac033e903d377e07d94b3ed095f2691b56bd99d27a76d48ff665a93d4" - sha256 arm64_ventura: "99251ae8e6f5bdcd6f6eb66b3999d7c4ea6960a009dfe633da27d9f75c659bc0" - sha256 arm64_monterey: "44ac5441951ba752a05850a2cf1bdd2ce43081a8e0734ee61ea15cbd93f4b910" - sha256 sonoma: "9651940f505ace172f4655a03d11ce880055cc40bd4b2fee52b0603ad144ec98" - sha256 ventura: "24dc413bca528d23a5664683c1c37d975be5e5222805cc0f8bb51a4380015342" - sha256 monterey: "de03f99ea9eab85b3e3f7676848043ccff79d5a193f0dd03e633f7f642798da6" - sha256 cellar: :any_skip_relocation, x86_64_linux: "4e6ce62025173793a521b2186cbf741e135ba60d61819cef73f112810057c1de" + sha256 arm64_sequoia: "16de7a20bf322c043232d9e452e948a76e39222c4302dd473f56ac54e9f124b3" + sha256 arm64_sonoma: "a5b5090830d2809662e9eb7fd4ed3264e82720f6845f35cb594cc934603ed84d" + sha256 arm64_ventura: "c41c88fb61a60ec842c81e2c4ca64c065b2c368c83f09365207f7da959dc8cda" + sha256 sonoma: "83747bfe0e1c14fd8f29c4c3b15f12919057694a1be31b5a66325e9bf74c6aea" + sha256 ventura: "c48b3f215c92ca8907fd2938adbd987a6c9738607f7adf8c5bcf74401795e07b" + sha256 cellar: :any_skip_relocation, x86_64_linux: "0351b9c88bf73003a30db5dec85e71c9e67358a3190563e5fa7b532d28ee8aba" end depends_on "cmake" => :build depends_on "libconfig" => :build depends_on "pkg-config" => :build - depends_on "llvm" + depends_on "llvm@18" depends_on "zstd" uses_from_macos "libxml2" => :build @@ -94,7 +93,7 @@ def install EOS system bin/"ldc2", "test.d" assert_match "Hello, world!", shell_output("./test") - with_env(PATH: "#{Formula["llvm"].opt_bin}:#{ENV["PATH"]}") do + with_env(PATH: "#{llvm.opt_bin}:#{ENV["PATH"]}") do system bin/"ldc2", "-flto=thin", "--linker=lld", "test.d" assert_match "Hello, world!", shell_output("./test") system bin/"ldc2", "-flto=full", "--linker=lld", "test.d" diff --git a/Formula/l/llgo.rb b/Formula/l/llgo.rb index e141b92e4cc0..5e337463f339 100644 --- a/Formula/l/llgo.rb +++ b/Formula/l/llgo.rb @@ -4,40 +4,43 @@ class Llgo < Formula url "https://github.com/goplus/llgo/archive/refs/tags/v0.9.7.tar.gz" sha256 "f9721be0b41d1e622923b4aa1d4e8071af93753f36f4c9285697e6af009fa0dc" license "Apache-2.0" + revision 1 bottle do - sha256 cellar: :any, arm64_sequoia: "9662d4ef9ac28e8fa0fb323e72639f9ff1b8929d2b92a3310968eb21972e5df3" - sha256 cellar: :any, arm64_sonoma: "096384f0999a2144455e1274e974513e00fee6931a7848d00e51ee60b0314bdc" - sha256 cellar: :any, arm64_ventura: "f55927a3fed5185bb7046e5eea964e5384305d786f9e058c2c6e3182f1d164c2" - sha256 cellar: :any, arm64_monterey: "8ebe3c5d24fdf1eb1e210573a430543a0fad5a7db053567dce7bede2eaa6b8c5" - sha256 cellar: :any, sonoma: "c6724135cda194af9684186b4c245efd186a3127ea578dd7dcba0d64de5fea5c" - sha256 cellar: :any, ventura: "2a646f5b2f82ccdbeae2f3024000015f1f8c597801eae85454961c774694a0cd" - sha256 cellar: :any, monterey: "3ea493908db3bdfa0c2b851920fe7d6a956244f504a9cc0547bbfa6e310bda0a" - sha256 x86_64_linux: "9eb63752090ea065305ff4ffa581f9e6bdc0fbfe34da5a8b977f6059b5038888" + sha256 cellar: :any, arm64_sequoia: "c2843ed4c34662cd4efb4332efc801ebd481623ccc1cff1448be0804ad197038" + sha256 cellar: :any, arm64_sonoma: "02e5fbd91b3ec0560cd653cd113eaff7d7899521fe56efb95bf76da703e88c9f" + sha256 cellar: :any, arm64_ventura: "ee9649478a6a5327d9c7c28880b1cf203cdc4e88c09cc59ce9d8f06e275749db" + sha256 cellar: :any, sonoma: "1a21fcc15688f58e760474cb36700411865591f1dc88608a7434866017af43ae" + sha256 cellar: :any, ventura: "50fd0b364c4ff977f5bc1c64d54a048dce67fcc06e12a0fb228cb2f2d6eabce0" + sha256 x86_64_linux: "ec6fb4fdba58e39f7008ffa6311278e155a7e37856c78b88e953afa4f0a61cec" end depends_on "bdw-gc" depends_on "go" - depends_on "llvm" + depends_on "llvm@18" depends_on "openssl@3" depends_on "pkg-config" + def llvm + deps.map(&:to_formula).find { |f| f.name.match?(/^llvm(@\d+)?$/) } + end + def install if OS.linux? ENV.prepend "CGO_CPPFLAGS", - "-I#{Formula["llvm"].opt_include} " \ + "-I#{llvm.opt_include} " \ "-D_GNU_SOURCE " \ "-D__STDC_CONSTANT_MACROS " \ "-D__STDC_FORMAT_MACROS " \ "-D__STDC_LIMIT_MACROS" - ENV.prepend "CGO_LDFLAGS", "-L#{Formula["llvm"].opt_lib} -lLLVM" + ENV.prepend "CGO_LDFLAGS", "-L#{llvm.opt_lib} -lLLVM" end ldflags = %W[ -s -w -X github.com/goplus/llgo/x/env.buildVersion=v#{version} -X github.com/goplus/llgo/x/env.buildTime=#{time.iso8601} - -X github.com/goplus/llgo/xtool/env/llvm.ldLLVMConfigBin=#{Formula["llvm"].opt_bin/"llvm-config"} + -X github.com/goplus/llgo/xtool/env/llvm.ldLLVMConfigBin=#{llvm.opt_bin/"llvm-config"} ] build_args = *std_go_args(ldflags:) build_args += ["-tags", "byollvm"] if OS.linux? @@ -45,7 +48,7 @@ def install libexec.install "LICENSE", "README.md" - path = %w[go llvm pkg-config].map { |f| Formula[f].opt_bin }.join(":") + path = llvm.opt_bin + ":" + %w[go pkg-config].map { |f| Formula[f].opt_bin }.join(":") opt_lib = %w[bdw-gc openssl@3].map { |f| Formula[f].opt_lib }.join(":") (libexec/"bin").children.each do |f| diff --git a/Formula/l/llvm.rb b/Formula/l/llvm.rb index 9a8ea0eb57e5..0590751f878a 100644 --- a/Formula/l/llvm.rb +++ b/Formula/l/llvm.rb @@ -1,8 +1,8 @@ class Llvm < Formula desc "Next-gen compiler infrastructure" homepage "https://llvm.org/" - url "https://github.com/llvm/llvm-project/releases/download/llvmorg-18.1.8/llvm-project-18.1.8.src.tar.xz" - sha256 "0b58557a6d32ceee97c8d533a59b9212d87e0fc4d2833924eb6c611247db2f2a" + url "https://github.com/llvm/llvm-project/releases/download/llvmorg-19.1.0/llvm-project-19.1.0.src.tar.xz" + sha256 "5042522b49945bc560ff9206f25fb87980a9b89b914193ca00d961511ff0673c" # The LLVM Project is under the Apache License v2.0 with LLVM Exceptions license "Apache-2.0" => { with: "LLVM-exception" } head "https://github.com/llvm/llvm-project.git", branch: "main" @@ -13,15 +13,12 @@ class Llvm < Formula end bottle do - sha256 cellar: :any, arm64_sequoia: "433c029d4c09ba4d1897b25cc92e6e6df585e3d248146684de6d3087efdef633" - sha256 cellar: :any, arm64_sonoma: "3a724923cede4bd596f0a4114c5fdf7e675bfec5a125ebc76f51968b6c504848" - sha256 cellar: :any, arm64_ventura: "3f04b1fa80df148acf12f32fb13e1d37005bfc8e7efaf9b7f59141af084d099d" - sha256 cellar: :any, arm64_monterey: "bca2c4fef76ffedd9ed1f04ecc07361004e4669d2a2637a6a9b67846f3a03db6" - sha256 cellar: :any, sequoia: "d73b31cae91959212a292b34c7f65328dfad1488c8a75cbc4cafeda755de4473" - sha256 cellar: :any, sonoma: "80253a944737a43bc05bce4c8e9730a0df3115c93a80139ba9a61889bf816ee8" - sha256 cellar: :any, ventura: "d2457ec110cec85b21ea93d4cfd68538dd0bc079a2163f6cab78b71bdd9b763d" - sha256 cellar: :any, monterey: "25f0593969cfeac2eb69925cfda4556fba81228d64bd9dd5f93b6a9bea9cd299" - sha256 cellar: :any_skip_relocation, x86_64_linux: "ae14bc6846afd9200f04941136d74b725e6886eb625e09df8cfa67bde91dd801" + sha256 cellar: :any, arm64_sequoia: "7fafb395fbcf1f3364dd2f0a5af4a5956027993c4ea9cc8e36b8367d8e9a5726" + sha256 cellar: :any, arm64_sonoma: "7397168396c6554dfa28db397cc5f08d0274c1c3b766f585754a8edf9f5e3bbb" + sha256 cellar: :any, arm64_ventura: "480adde82e79b0116a201b69e2410de1365fbfe6964a84e7688e88dff2cc956b" + sha256 cellar: :any, sonoma: "f90310d94adf1a4b1b5ac8cef9e7461f837d81ad17d4752c3dd664265dfe7479" + sha256 cellar: :any, ventura: "7adfafe60764b040a45232002142cc10551cf155ed1ce7d889ba917b2b6716ff" + sha256 cellar: :any_skip_relocation, x86_64_linux: "ea0cb7a811893181ef275571fd368e94ca7f3b475b21086de6c253d595583bce" end # Clang cannot find system headers if Xcode CLT is not installed @@ -74,6 +71,7 @@ def install libcxx libcxxabi libunwind + pstl ] unless versioned_formula? @@ -149,7 +147,7 @@ def install args << "-DLLVM_BUILD_LLVM_C_DYLIB=ON" args << "-DLLVM_ENABLE_LIBCXX=ON" - args << "-DLIBCXX_PSTL_CPU_BACKEND=libdispatch" + args << "-DLIBCXX_PSTL_BACKEND=libdispatch" args << "-DLIBCXX_INSTALL_LIBRARY_DIR=#{libcxx_install_libdir}" args << "-DLIBCXXABI_INSTALL_LIBRARY_DIR=#{libcxx_install_libdir}" args << "-DDEFAULT_SYSROOT=#{macos_sdk}" if macos_sdk @@ -390,7 +388,9 @@ def install llvm_version = Utils.safe_popen_read(bin/"llvm-config", "--version").strip soversion = Version.new(llvm_version).major.to_s soversion << "git" if llvm_version.end_with?("git") - soversion << "rc" if llvm_version.end_with?("rc") + if (match = llvm_version.match(/-rc\d*$/)) + soversion << match[0] + end # Install versioned symlink, or else `llvm-config` doesn't work properly lib.install_symlink "libLLVM.dylib" => "libLLVM-#{soversion}.dylib" @@ -455,8 +455,8 @@ def caveats if llvm_version.end_with?("git") soversion << "git" - elsif llvm_version.end_with?("rc") - soversion << "rc" + elsif (match = llvm_version.match(/-rc\d*$/)) + soversion << match[0] else assert_equal version, llvm_version end @@ -667,9 +667,10 @@ def caveats } EOS + rpath_flag = "-Wl,-rpath,#{lib}/#{Hardware::CPU.arch}-unknown-linux-gnu" if OS.linux? system bin/"clang", "-L#{lib}", "-fopenmp", "-nobuiltininc", - "-I#{lib}/clang/#{llvm_version_major}/include", - "omptest.c", "-o", "omptest" + "-I#{lib}/clang/#{llvm_version_major}/include", + rpath_flag.to_s, "omptest.c", "-o", "omptest" testresult = shell_output("./omptest") sorted_testresult = testresult.split("\n").sort.join("\n") diff --git a/Formula/l/llvm@18.rb b/Formula/l/llvm@18.rb new file mode 100644 index 000000000000..ddd8ae95a1f2 --- /dev/null +++ b/Formula/l/llvm@18.rb @@ -0,0 +1,464 @@ +class LlvmAT18 < Formula + desc "Next-gen compiler infrastructure" + homepage "https://llvm.org/" + url "https://github.com/llvm/llvm-project/releases/download/llvmorg-18.1.8/llvm-project-18.1.8.src.tar.xz" + sha256 "0b58557a6d32ceee97c8d533a59b9212d87e0fc4d2833924eb6c611247db2f2a" + # The LLVM Project is under the Apache License v2.0 with LLVM Exceptions + license "Apache-2.0" => { with: "LLVM-exception" } + + livecheck do + url :stable + regex(/^llvmorg[._-]v?(\d+(?:\.\d+)+)$/i) + end + + bottle do + sha256 cellar: :any, arm64_sequoia: "c7bb3e7186411468c2b7af59fb5abd5108805078280f8144f8cf53b9c0b93cbf" + sha256 cellar: :any, arm64_sonoma: "c9daaee40a1b1c85a35af2a64c3577257740554df1d8bbf629103a9994b288b4" + sha256 cellar: :any, arm64_ventura: "b4cb7eba8d8acc3602e08c10a79ac8b584bfa7cde3f7dad3e8ecd618245de840" + sha256 cellar: :any, sonoma: "9066365b4f1e822123b399eaa4f53fea875e64f78243fa737d6a3cc28e67479b" + sha256 cellar: :any, ventura: "84b0c6e7c40e9ee5ca0935e464fcf83fdc508fa1a45834a425c6a7ffbf3d0d23" + sha256 cellar: :any_skip_relocation, x86_64_linux: "79b1083ab5c1f62b6b192b680618a50d06e72594a93d859835f7a30b8fb71271" + end + + # Clang cannot find system headers if Xcode CLT is not installed + pour_bottle? only_if: :clt_installed + + keg_only :versioned_formula + + # https://llvm.org/docs/GettingStarted.html#requirement + depends_on "cmake" => :build + depends_on "ninja" => :build + depends_on "python@3.12" => [:build, :test] + depends_on "zstd" + + uses_from_macos "libedit" + uses_from_macos "libffi", since: :catalina + uses_from_macos "ncurses" + uses_from_macos "zlib" + + on_linux do + depends_on "pkg-config" => :build + depends_on "binutils" # needed for gold + depends_on "elfutils" # openmp requires + end + + # Fails at building LLDB + fails_with gcc: "5" + + def python3 + "python3.12" + end + + def install + # The clang bindings need a little help finding our libclang. + inreplace "clang/bindings/python/clang/cindex.py", + /^(\s*library_path\s*=\s*)None$/, + "\\1'#{lib}'" + + projects = %w[ + clang + clang-tools-extra + lld + mlir + polly + ] + runtimes = %w[ + compiler-rt + libcxx + libcxxabi + libunwind + ] + + python_versions = Formula.names + .select { |name| name.start_with? "python@" } + .map { |py| py.delete_prefix("python@") } + + # Apple's libstdc++ is too old to build LLVM + ENV.libcxx if ENV.compiler == :clang + + # compiler-rt has some iOS simulator features that require i386 symbols + # I'm assuming the rest of clang needs support too for 32-bit compilation + # to work correctly, but if not, perhaps universal binaries could be + # limited to compiler-rt. llvm makes this somewhat easier because compiler-rt + # can almost be treated as an entirely different build from llvm. + ENV.permit_arch_flags + + # we install the lldb Python module into libexec to prevent users from + # accidentally importing it with a non-Homebrew Python or a Homebrew Python + # in a non-default prefix. See https://lldb.llvm.org/resources/caveats.html + args = %W[ + -DLLVM_ENABLE_PROJECTS=#{projects.join(";")} + -DLLVM_ENABLE_RUNTIMES=#{runtimes.join(";")} + -DLLVM_POLLY_LINK_INTO_TOOLS=ON + -DLLVM_BUILD_EXTERNAL_COMPILER_RT=ON + -DLLVM_LINK_LLVM_DYLIB=ON + -DLLVM_ENABLE_EH=ON + -DLLVM_ENABLE_FFI=ON + -DLLVM_ENABLE_RTTI=ON + -DLLVM_INCLUDE_DOCS=OFF + -DLLVM_INCLUDE_TESTS=OFF + -DLLVM_INSTALL_UTILS=ON + -DLLVM_ENABLE_Z3_SOLVER=OFF + -DLLVM_OPTIMIZED_TABLEGEN=ON + -DLLVM_TARGETS_TO_BUILD=all + -DLIBOMP_INSTALL_ALIASES=OFF + -DLIBCXX_INSTALL_MODULES=ON + -DCLANG_PYTHON_BINDINGS_VERSIONS=#{python_versions.join(";")} + -DLLVM_CREATE_XCODE_TOOLCHAIN=OFF + -DCLANG_FORCE_MATCHING_LIBCLANG_SOVERSION=OFF + -DPACKAGE_VENDOR=#{tap.user} + -DBUG_REPORT_URL=#{tap.issues_url} + -DCLANG_VENDOR_UTI=org.#{tap.user.downcase}.clang + ] + + runtimes_cmake_args = [] + builtins_cmake_args = [] + + if OS.mac? + macos_sdk = MacOS.sdk_path_if_needed + if MacOS.version >= :catalina + args << "-DFFI_INCLUDE_DIR=#{macos_sdk}/usr/include/ffi" + args << "-DFFI_LIBRARY_DIR=#{macos_sdk}/usr/lib" + end + + libcxx_install_libdir = lib/"c++" + libcxx_rpaths = [loader_path, rpath(source: libcxx_install_libdir)] + + args << "-DLLVM_BUILD_LLVM_C_DYLIB=ON" + args << "-DLLVM_ENABLE_LIBCXX=ON" + args << "-DLIBCXX_PSTL_CPU_BACKEND=libdispatch" + args << "-DLIBCXX_INSTALL_LIBRARY_DIR=#{libcxx_install_libdir}" + args << "-DLIBCXXABI_INSTALL_LIBRARY_DIR=#{libcxx_install_libdir}" + args << "-DDEFAULT_SYSROOT=#{macos_sdk}" if macos_sdk + runtimes_cmake_args << "-DCMAKE_INSTALL_RPATH=#{libcxx_rpaths.join("|")}" + + # Disable builds for OSes not supported by the CLT SDK. + clt_sdk_support_flags = %w[I WATCH TV].map { |os| "-DCOMPILER_RT_ENABLE_#{os}OS=OFF" } + builtins_cmake_args += clt_sdk_support_flags + else + args << "-DFFI_INCLUDE_DIR=#{Formula["libffi"].opt_include}" + args << "-DFFI_LIBRARY_DIR=#{Formula["libffi"].opt_lib}" + + # Disable `libxml2` which isn't very useful. + args << "-DLLVM_ENABLE_LIBXML2=OFF" + args << "-DLLVM_ENABLE_LIBCXX=OFF" + args << "-DCLANG_DEFAULT_CXX_STDLIB=libstdc++" + # Enable llvm gold plugin for LTO + args << "-DLLVM_BINUTILS_INCDIR=#{Formula["binutils"].opt_include}" + # Parts of Polly fail to correctly build with PIC when being used for DSOs. + args << "-DCMAKE_POSITION_INDEPENDENT_CODE=ON" + runtimes_cmake_args += %w[ + -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF + -DCMAKE_POSITION_INDEPENDENT_CODE=ON + + -DLIBCXX_ENABLE_STATIC_ABI_LIBRARY=ON + -DLIBCXX_STATICALLY_LINK_ABI_IN_SHARED_LIBRARY=OFF + -DLIBCXX_STATICALLY_LINK_ABI_IN_STATIC_LIBRARY=ON + -DLIBCXX_USE_COMPILER_RT=ON + -DLIBCXX_HAS_ATOMIC_LIB=OFF + + -DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON + -DLIBCXXABI_STATICALLY_LINK_UNWINDER_IN_SHARED_LIBRARY=OFF + -DLIBCXXABI_STATICALLY_LINK_UNWINDER_IN_STATIC_LIBRARY=ON + -DLIBCXXABI_USE_COMPILER_RT=ON + -DLIBCXXABI_USE_LLVM_UNWINDER=ON + + -DLIBUNWIND_USE_COMPILER_RT=ON + -DCOMPILER_RT_USE_BUILTINS_LIBRARY=ON + -DCOMPILER_RT_USE_LLVM_UNWINDER=ON + + -DSANITIZER_CXX_ABI=libc++ + -DSANITIZER_TEST_CXX=libc++ + ] + + # Prevent compiler-rt from building i386 targets, as this is not portable. + builtins_cmake_args << "-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON" + end + + if ENV.cflags.present? + args << "-DCMAKE_C_FLAGS=#{ENV.cflags}" + runtimes_cmake_args << "-DCMAKE_C_FLAGS=#{ENV.cflags}" + builtins_cmake_args << "-DCMAKE_C_FLAGS=#{ENV.cflags}" + end + + if ENV.cxxflags.present? + args << "-DCMAKE_CXX_FLAGS=#{ENV.cxxflags}" + runtimes_cmake_args << "-DCMAKE_CXX_FLAGS=#{ENV.cxxflags}" + builtins_cmake_args << "-DCMAKE_CXX_FLAGS=#{ENV.cxxflags}" + end + + args << "-DRUNTIMES_CMAKE_ARGS=#{runtimes_cmake_args.join(";")}" if runtimes_cmake_args.present? + args << "-DBUILTINS_CMAKE_ARGS=#{builtins_cmake_args.join(";")}" if builtins_cmake_args.present? + + llvmpath = buildpath/"llvm" + + # Now, we can build. + mkdir llvmpath/"build" do + system "cmake", "-G", "Ninja", "..", *(std_cmake_args + args) + system "cmake", "--build", "." + system "cmake", "--build", ".", "--target", "install" + end + + if OS.mac? + # Get the version from `llvm-config` to get the correct HEAD or RC version too. + llvm_version = Utils.safe_popen_read(bin/"llvm-config", "--version").strip + soversion = Version.new(llvm_version).major.to_s + soversion << "git" if llvm_version.end_with?("git") + soversion << "rc" if llvm_version.end_with?("rc") + + # Install versioned symlink, or else `llvm-config` doesn't work properly + lib.install_symlink "libLLVM.dylib" => "libLLVM-#{soversion}.dylib" + + # Install Xcode toolchain. See: + # https://github.com/llvm/llvm-project/blob/main/llvm/tools/xcode-toolchain/CMakeLists.txt + # We do this manually in order to avoid: + # 1. installing duplicates of files in the prefix + # 2. requiring an existing Xcode installation + xctoolchain = prefix/"Toolchains/LLVM#{llvm_version}.xctoolchain" + + system "/usr/libexec/PlistBuddy", "-c", "Add:CFBundleIdentifier string org.llvm.#{llvm_version}", "Info.plist" + system "/usr/libexec/PlistBuddy", "-c", "Add:CompatibilityVersion integer 2", "Info.plist" + xctoolchain.install "Info.plist" + (xctoolchain/"usr").install_symlink [bin, include, lib, libexec, share] + end + + # Install Vim plugins + %w[ftdetect ftplugin indent syntax].each do |dir| + (share/"vim/vimfiles"/dir).install Pathname.glob("*/utils/vim/#{dir}/*.vim") + end + + # Install Emacs modes + elisp.install llvmpath.glob("utils/emacs/*.el") + share.glob("clang/*.el") + end + + def caveats + on_macos do + <<~EOS + To use the bundled libc++ please add the following LDFLAGS: + LDFLAGS="-L#{opt_lib}/c++ -L#{opt_lib} -lunwind" + EOS + end + end + + test do + llvm_version = Utils.safe_popen_read(bin/"llvm-config", "--version").strip + llvm_version_major = Version.new(llvm_version).major.to_s + soversion = llvm_version_major.dup + + if llvm_version.end_with?("git") + soversion << "git" + elsif llvm_version.end_with?("rc") + soversion << "rc" + else + assert_equal version, llvm_version + end + + assert_equal prefix.to_s, shell_output("#{bin}/llvm-config --prefix").chomp + assert_equal "-lLLVM-#{soversion}", shell_output("#{bin}/llvm-config --libs").chomp + assert_equal (lib/shared_library("libLLVM-#{soversion}")).to_s, + shell_output("#{bin}/llvm-config --libfiles").chomp + + (testpath/"test.c").write <<~EOS + #include + int main() + { + printf("Hello World!\\n"); + return 0; + } + EOS + + (testpath/"test.cpp").write <<~EOS + #include + int main() + { + std::cout << "Hello World!" << std::endl; + return 0; + } + EOS + + # Testing default toolchain and SDK location. + system bin/"clang++", "-v", + "-std=c++11", "test.cpp", "-o", "test++" + assert_includes MachO::Tools.dylibs("test++"), "/usr/lib/libc++.1.dylib" if OS.mac? + assert_equal "Hello World!", shell_output("./test++").chomp + system bin/"clang", "-v", "test.c", "-o", "test" + assert_equal "Hello World!", shell_output("./test").chomp + + # To test `lld`, we mock a broken `ld` to make sure it's not what's being used. + (testpath/"fake_ld.c").write <<~EOS + int main() { return 1; } + EOS + (testpath/"bin").mkpath + system ENV.cc, "-v", "fake_ld.c", "-o", "bin/ld" + with_env(PATH: "#{testpath}/bin:#{ENV["PATH"]}") do + # Our fake `ld` will produce a compilation error if it is used instead of `lld`. + system bin/"clang", "-v", "test.c", "-o", "test_lld", "-fuse-ld=lld" + end + assert_equal "Hello World!", shell_output("./test_lld").chomp + + # These tests should ignore the usual SDK includes + with_env(CPATH: nil) do + # Testing Command Line Tools + if OS.mac? && MacOS::CLT.installed? + toolchain_path = "/Library/Developer/CommandLineTools" + cpp_base = (MacOS.version >= :big_sur) ? MacOS::CLT.sdk_path : toolchain_path + system bin/"clang++", "-v", + "-isysroot", MacOS::CLT.sdk_path, + "-isystem", "#{cpp_base}/usr/include/c++/v1", + "-isystem", "#{MacOS::CLT.sdk_path}/usr/include", + "-isystem", "#{toolchain_path}/usr/include", + "-std=c++11", "test.cpp", "-o", "testCLT++" + assert_includes MachO::Tools.dylibs("testCLT++"), "/usr/lib/libc++.1.dylib" + assert_equal "Hello World!", shell_output("./testCLT++").chomp + system bin/"clang", "-v", "test.c", "-o", "testCLT" + assert_equal "Hello World!", shell_output("./testCLT").chomp + end + + # Testing Xcode + if OS.mac? && MacOS::Xcode.installed? + cpp_base = (MacOS::Xcode.version >= "12.5") ? MacOS::Xcode.sdk_path : MacOS::Xcode.toolchain_path + system bin/"clang++", "-v", + "-isysroot", MacOS::Xcode.sdk_path, + "-isystem", "#{cpp_base}/usr/include/c++/v1", + "-isystem", "#{MacOS::Xcode.sdk_path}/usr/include", + "-isystem", "#{MacOS::Xcode.toolchain_path}/usr/include", + "-std=c++11", "test.cpp", "-o", "testXC++" + assert_includes MachO::Tools.dylibs("testXC++"), "/usr/lib/libc++.1.dylib" + assert_equal "Hello World!", shell_output("./testXC++").chomp + system bin/"clang", "-v", + "-isysroot", MacOS.sdk_path, + "test.c", "-o", "testXC" + assert_equal "Hello World!", shell_output("./testXC").chomp + end + + # link against installed libc++ + # related to https://github.com/Homebrew/legacy-homebrew/issues/47149 + cxx_libdir = OS.mac? ? opt_lib/"c++" : opt_lib + system bin/"clang++", "-v", + "-isystem", "#{opt_include}/c++/v1", + "-std=c++11", "-stdlib=libc++", "test.cpp", "-o", "testlibc++", + "-rtlib=compiler-rt", "-L#{cxx_libdir}", "-Wl,-rpath,#{cxx_libdir}" + assert_includes (testpath/"testlibc++").dynamically_linked_libraries, + (cxx_libdir/shared_library("libc++", "1")).to_s + (testpath/"testlibc++").dynamically_linked_libraries.each do |lib| + refute_match(/libstdc\+\+/, lib) + refute_match(/libgcc/, lib) + refute_match(/libatomic/, lib) + end + assert_equal "Hello World!", shell_output("./testlibc++").chomp + end + + if OS.linux? + # Link installed libc++, libc++abi, and libunwind archives both into + # a position independent executable (PIE), as well as into a fully + # position independent (PIC) DSO for things like plugins that export + # a C-only API but internally use C++. + # + # FIXME: It'd be nice to be able to use flags like `-static-libstdc++` + # together with `-stdlib=libc++` (the latter one we need anyways for + # headers) to achieve this but those flags don't set up the correct + # search paths or handle all of the libraries needed by `libc++` when + # linking statically. + + system bin/"clang++", "-v", "-o", "test_pie_runtimes", + "-pie", "-fPIC", "test.cpp", "-L#{opt_lib}", + "-stdlib=libc++", "-rtlib=compiler-rt", + "-static-libstdc++", "-lpthread", "-ldl" + assert_equal "Hello World!", shell_output("./test_pie_runtimes").chomp + (testpath/"test_pie_runtimes").dynamically_linked_libraries.each do |lib| + refute_match(/lib(std)?c\+\+/, lib) + refute_match(/libgcc/, lib) + refute_match(/libatomic/, lib) + refute_match(/libunwind/, lib) + end + + (testpath/"test_plugin.cpp").write <<~EOS + #include + __attribute__((visibility("default"))) + extern "C" void run_plugin() { + std::cout << "Hello Plugin World!" << std::endl; + } + EOS + (testpath/"test_plugin_main.c").write <<~EOS + extern void run_plugin(); + int main() { + run_plugin(); + } + EOS + system bin/"clang++", "-v", "-o", "test_plugin.so", + "-shared", "-fPIC", "test_plugin.cpp", "-L#{opt_lib}", + "-stdlib=libc++", "-rtlib=compiler-rt", + "-static-libstdc++", "-lpthread", "-ldl" + system bin/"clang", "-v", + "test_plugin_main.c", "-o", "test_plugin_libc++", + "test_plugin.so", "-Wl,-rpath=#{testpath}", "-rtlib=compiler-rt" + assert_equal "Hello Plugin World!", shell_output("./test_plugin_libc++").chomp + (testpath/"test_plugin.so").dynamically_linked_libraries.each do |lib| + refute_match(/lib(std)?c\+\+/, lib) + refute_match(/libgcc/, lib) + refute_match(/libatomic/, lib) + refute_match(/libunwind/, lib) + end + end + + # Testing mlir + (testpath/"test.mlir").write <<~EOS + func.func @main() {return} + + // ----- + + // expected-note @+1 {{see existing symbol definition here}} + func.func @foo() { return } + + // ---- + + // expected-error @+1 {{redefinition of symbol named 'foo'}} + func.func @foo() { return } + EOS + system bin/"mlir-opt", "--split-input-file", "--verify-diagnostics", "test.mlir" + + (testpath/"scanbuildtest.cpp").write <<~EOS + #include + int main() { + int *i = new int; + *i = 1; + delete i; + std::cout << *i << std::endl; + return 0; + } + EOS + assert_includes shell_output("#{bin}/scan-build make scanbuildtest 2>&1"), + "warning: Use of memory after it is freed" + + (testpath/"clangformattest.c").write <<~EOS + int main() { + printf("Hello world!"); } + EOS + assert_equal "int main() { printf(\"Hello world!\"); }\n", + shell_output("#{bin}/clang-format -style=google clangformattest.c") + + # This will fail if the clang bindings cannot find `libclang`. + with_env(PYTHONPATH: prefix/Language::Python.site_packages(python3)) do + system python3, "-c", <<~EOS + from clang import cindex + cindex.Config().get_cindex_library() + EOS + end + + # Ensure LLVM did not regress output of `llvm-config --system-libs` which for a time + # was known to output incorrect linker flags; e.g., `-llibxml2.tbd` instead of `-lxml2`. + # On the other hand, note that a fully qualified path to `dylib` or `tbd` is OK, e.g., + # `/usr/local/lib/libxml2.tbd` or `/usr/local/lib/libxml2.dylib`. + shell_output("#{bin}/llvm-config --system-libs").chomp.strip.split.each do |lib| + if lib.start_with?("-l") + assert !lib.end_with?(".tbd"), "expected abs path when lib reported as .tbd" + assert !lib.end_with?(".dylib"), "expected abs path when lib reported as .dylib" + else + p = Pathname.new(lib) + if p.extname == ".tbd" || p.extname == ".dylib" + assert p.absolute?, "expected abs path when lib reported as .tbd or .dylib" + end + end + end + end +end diff --git a/Formula/n/nvc.rb b/Formula/n/nvc.rb index 4062ae7c7a27..7acd51f4c6aa 100644 --- a/Formula/n/nvc.rb +++ b/Formula/n/nvc.rb @@ -4,16 +4,15 @@ class Nvc < Formula url "https://github.com/nickg/nvc/releases/download/r1.13.3/nvc-1.13.3.tar.gz" sha256 "c657d052d8a1eeba2dd97e92330c676de0a6d4d4c2eedea25adec64405dd87c7" license "GPL-3.0-or-later" + revision 1 bottle do - sha256 arm64_sequoia: "9b97c2e14379bd670c4300964389c92043f69ab98cccc6440dc690c305d13b5f" - sha256 arm64_sonoma: "fe46bbdeade65da8ec99e79c535c4d69dd3d46745cf4f3cda8185bea1312fad1" - sha256 arm64_ventura: "e0b90c0ae68c17fd83c7f27ae1c687a84ba5c45897a33f2ef14dbd6c6d30556e" - sha256 arm64_monterey: "7db131cbc9501cc3975c9a0ddccaf0fdd39edca29ef0086c8649df9fe89c54e7" - sha256 sonoma: "700914b4632de546cfe0130684ba6fa8859db1c67c1aa71a550ccbf770bec128" - sha256 ventura: "60932cf07d654fc4850bbe007848775a0ff43a32002917aa7000105574e326ae" - sha256 monterey: "8596232f85a898c1f00a87711a562604d702a198168fdd3b22fc1ce0d038e0f1" - sha256 x86_64_linux: "84d8d313cfe8892e33346657105fb7b2432471489a108779f8ddc7e53885ea06" + sha256 arm64_sequoia: "08fa9f03d8810538b606b3034af3a5d75c0b63fdf74012a988853855cd14e97c" + sha256 arm64_sonoma: "ee18f66a3b35904dac2c03b62a8c4bdca3a88a5b4ae8fa4915ebe45a2be7e3e2" + sha256 arm64_ventura: "5b016ebed4c3cb1a80a7eb90e8847a3a6c6ca064b181349995193f5fde3a017d" + sha256 sonoma: "1bca86f99266a1399192231a8281a886ec6f808eafc5eb7664711de3cd42549f" + sha256 ventura: "85cfbee02c6aaf4dcd1737f11733eddb7628593697ad2f4bc6026720c5ca2a59" + sha256 x86_64_linux: "84234d0ee6a2d94ace7d97c0ac65cdcf6bb927bd49eed8c9c014d85d327fc556" end head do diff --git a/Formula/o/odin.rb b/Formula/o/odin.rb index 37331758689a..10ff68582137 100644 --- a/Formula/o/odin.rb +++ b/Formula/o/odin.rb @@ -6,22 +6,20 @@ class Odin < Formula revision: "16c5c69a4079652e930d897823446b7e7a65bd2f" version "2024-09" license "BSD-3-Clause" + revision 1 head "https://github.com/odin-lang/Odin.git", branch: "master" bottle do - rebuild 1 - sha256 cellar: :any, arm64_sequoia: "bc23108507d97367ea953c6324baad9055543bb37d25a5dbefa01f9eed499a30" - sha256 cellar: :any, arm64_sonoma: "ab56c361293b37e438e208570b0b0672bd7880fb8f34ba16dcde72e59a538263" - sha256 cellar: :any, arm64_ventura: "0315ddfb713a361af3e9f718e0e2589af867b1fa6f5938a59bd38062f1b0001c" - sha256 cellar: :any, arm64_monterey: "3fbf54dc55468e995f7197377f4c25bd1dddbbc965976183a6685518c7e3ee38" - sha256 cellar: :any, sonoma: "19cfebb66a3aa6270c385a1eadef48b4103bf1cf3cff240fd6d399acb86850a1" - sha256 cellar: :any, ventura: "4850be318071e3603e3b22c014586a8b59f005d5e7c71ff5c773b2e3392041e0" - sha256 cellar: :any, monterey: "51e6fa7c53828a3cbc95723dd38a75280fd9a524c5e92962340b692bf2d88392" - sha256 cellar: :any_skip_relocation, x86_64_linux: "a007c1c815520797e87fffc4afb8ab140c228332c7b6fd2711396b9230db8850" + sha256 cellar: :any, arm64_sequoia: "ca1ffb74d254d439598d235e6e0b910e2910a787122a97e07fed7c25ff1def5e" + sha256 cellar: :any, arm64_sonoma: "cafb4b0cb46f16f62d2edb2dae78b52b46794f9159e8672ff73b274253317cfe" + sha256 cellar: :any, arm64_ventura: "02843c1967c216de6a16bf40dd10f56f407594a7d397581c2bd6b6554b5acf65" + sha256 cellar: :any, sonoma: "d7e7e910ad5b0145316da8a1c7a7fa3b58343e79ddb71c4d949f9d1aee486ee6" + sha256 cellar: :any, ventura: "481cc7dfe9909bc7ed0a925002885b2367d5f9a0fd83d8fe8fc36c6bfffb9b3a" + sha256 cellar: :any_skip_relocation, x86_64_linux: "d333a913381a0ecd3cc5c5222c707f20cc2337797f7197a5d069995798ab7bfa" end depends_on "glfw" - depends_on "llvm" + depends_on "llvm@18" depends_on "raylib" fails_with gcc: "5" # LLVM is built with GCC @@ -33,6 +31,7 @@ class Odin < Formula def install llvm = deps.map(&:to_formula).find { |f| f.name.match?(/^llvm(@\d+(\.\d+)*)?$/) } + ENV["LLVM_CONFIG"] = (llvm.opt_bin/"llvm-config").to_s # Delete pre-compiled binaries which brew does not allow. buildpath.glob("vendor/**/*.{lib,dll,a,dylib,so,so.*}").map(&:unlink) diff --git a/Formula/p/pocl.rb b/Formula/p/pocl.rb index ce34c59e1a9f..2457ec7c231c 100644 --- a/Formula/p/pocl.rb +++ b/Formula/p/pocl.rb @@ -4,6 +4,7 @@ class Pocl < Formula url "https://github.com/pocl/pocl/archive/refs/tags/v6.0.tar.gz" sha256 "de9710223fc1855f833dbbf42ea2681e06aa8ec0464f0201104dc80a74dfd1f2" license "MIT" + revision 1 head "https://github.com/pocl/pocl.git", branch: "main" livecheck do @@ -12,34 +13,37 @@ class Pocl < Formula end bottle do - sha256 arm64_sequoia: "e395acda5088561980a3fb92513e15744755e469fdd78be1ac3d2fa3bd48c448" - sha256 arm64_sonoma: "7b3835607078ca4df3dbc06854f76b5e549c50d4ed09bf3563492a2be94fd620" - sha256 arm64_ventura: "9448e2ec4c6f9759cf5acf4ff4d8b24c50b68851599c2e873097c5441f1f5d72" - sha256 arm64_monterey: "2d090450167c159d1083b9df2ade36d85a0d17e362c0a13f8bf08b632a80efba" - sha256 sonoma: "bae9b3cdceb4f661361ca8b8e4a707b39e38486ae561fbd4afc5ec4a9a092586" - sha256 ventura: "22cc146f8f6755af636e50044bebd2a447c5d32c34081ddde727746ba678e128" - sha256 monterey: "4e5c6cd2e3605ebdc7a3425586dbdecb525e1e1279eb701460a7a3ce19b409f7" - sha256 x86_64_linux: "f2f04dd95cf7e74bc2a34094500c4850047365b41bc1ec206672c4e4a95a392e" + sha256 arm64_sequoia: "37c8ffad1dc251ad96358273fa375ee12c54f760c422545aeb6ca8d2e7f64345" + sha256 arm64_sonoma: "bf1d743d75558e518e6bf58c9b1414259ba4c715429d99fb4d5aa18ebe1f01d5" + sha256 arm64_ventura: "d267fbd4dd48b16abaa5d8d7ae1d321848f48bf029bdc2850a7236f94fb576b5" + sha256 sonoma: "8e04092d421186a60170dadaa223f2bbe3b58702a3d1b7188a38b85635cf643b" + sha256 ventura: "f5b3f006dabc0dedeb515e70a641938917550889cdfc1bbdb1671b24bc9b4a05" + sha256 x86_64_linux: "5eb94f47dc4e2c6a34259afa0fb0ac297ee9b985c1934f8fc3e25d48ce009b14" end depends_on "cmake" => :build depends_on "opencl-headers" => :build depends_on "pkg-config" => :build depends_on "hwloc" - depends_on "llvm" + depends_on "llvm@18" depends_on "opencl-icd-loader" uses_from_macos "python" => :build fails_with gcc: "5" # LLVM is built with GCC + def llvm + deps.map(&:to_formula).find { |f| f.name.match?(/^llvm(@\d+)?$/) } + end + def install - llvm = Formula["llvm"] # Install the ICD into #{prefix}/etc rather than #{etc} as it contains the realpath # to the shared library and needs to be kept up-to-date to work with an ICD loader. # This relies on `brew link` automatically creating and updating #{etc} symlinks. + rpaths = [loader_path, rpath(source: lib/"pocl")] + rpaths << llvm.opt_lib.to_s if OS.linux? args = %W[ -DPOCL_INSTALL_ICD_VENDORDIR=#{prefix}/etc/OpenCL/vendors - -DCMAKE_INSTALL_RPATH=#{loader_path};#{rpath(source: lib/"pocl")} + -DCMAKE_INSTALL_RPATH=#{rpaths.join(";")} -DENABLE_EXAMPLES=OFF -DENABLE_TESTS=OFF -DWITH_LLVM_CONFIG=#{llvm.opt_bin}/llvm-config diff --git a/Formula/r/rust.rb b/Formula/r/rust.rb index 9061defca0db..bb3c1d3cf702 100644 --- a/Formula/r/rust.rb +++ b/Formula/r/rust.rb @@ -2,6 +2,7 @@ class Rust < Formula desc "Safe, concurrent, practical language" homepage "https://www.rust-lang.org/" license any_of: ["Apache-2.0", "MIT"] + revision 1 stable do url "https://static.rust-lang.org/dist/rustc-1.81.0-src.tar.gz" @@ -15,14 +16,12 @@ class Rust < Formula end bottle do - sha256 cellar: :any, arm64_sequoia: "976612b55f2634f28d7ecd00253fab4cd179b352ed5e998c862de2d193690a34" - sha256 cellar: :any, arm64_sonoma: "e435ab78fdd28d1d422cfb2fc053e56fd4d529b284ff2546e8fe30aacc183712" - sha256 cellar: :any, arm64_ventura: "567f85fc6853432ce4bcbd3a336067a2544b59c2b9a17272a1afa8aecd8fa873" - sha256 cellar: :any, arm64_monterey: "00cd15f19928821fbb8fa658f6bc54118e8b8871eaeee8245dcc1d87d8cc0e27" - sha256 cellar: :any, sonoma: "62353b21e9ffd4ff946fbaedc91b796985172379b8eaf77eebe39859b0dea31d" - sha256 cellar: :any, ventura: "3ac85eed3480bd7d2da271e68013f30b1e44376e9cd468ac86f3fb90e6b0cbf2" - sha256 cellar: :any, monterey: "1768b11223edc7a14d22fdbe07365422112dd7af21a4b520df2a92068425cd87" - sha256 cellar: :any_skip_relocation, x86_64_linux: "01f58715374b8362b17d665beb02f74a2f9ec40e4451eae91a88b04776ae3511" + sha256 cellar: :any, arm64_sequoia: "b4fb0882454f41c387466c0a96687703475b4a0708dba7bdc05aa0c2e9621c96" + sha256 cellar: :any, arm64_sonoma: "832b6fff80c5e0071049752764d8be9c31ce821ccb121d3e833c45c67ba9a74f" + sha256 cellar: :any, arm64_ventura: "a4665458ecf6a676775858d854039c455fb6eb4055d31da491c367470314eccf" + sha256 cellar: :any, sonoma: "e2e2790090816a3b1f3b1ed3768590e375c353feb592e6b322d9d65799e1e6d8" + sha256 cellar: :any, ventura: "2bbe05da9d41ec5e0c57b03c612ef575bfd446c69d663db0d0d2e7f44c854374" + sha256 cellar: :any_skip_relocation, x86_64_linux: "57f1e40fddfa6a38167c3f3a067724131b6a10172c552b21282d32219c1a8807" end head do @@ -35,7 +34,7 @@ class Rust < Formula depends_on "libgit2" depends_on "libssh2" - depends_on "llvm" + depends_on "llvm@18" depends_on macos: :sierra depends_on "openssl@3" depends_on "pkg-config" @@ -102,12 +101,13 @@ def install 'curl = { version = "\\1", features = ["force-system-lib-on-osx"] }' end - # rustfmt and rust-analyzer are available in their own formulae. + # rust-analyzer is available in its own formula. tools = %w[ analysis cargo clippy rustdoc + rustfmt rust-analyzer-proc-macro-srv rust-demangler src @@ -116,7 +116,7 @@ def install --prefix=#{prefix} --sysconfdir=#{etc} --tools=#{tools.join(",")} - --llvm-root=#{Formula["llvm"].opt_prefix} + --llvm-root=#{Formula["llvm@18"].opt_prefix} --enable-llvm-link-shared --enable-profiler --enable-vendor @@ -175,6 +175,13 @@ def check_binary_linkage(binary, library) system bin/"cargo", "new", "hello_world", "--bin" assert_equal "Hello, world!", cd("hello_world") { shell_output("#{bin}/cargo run").split("\n").last } + assert_match <<~EOS, shell_output("#{bin}/rustfmt --check hello.rs", 1) + fn main() { + - println!("Hello World!"); + + println!("Hello World!"); + } + EOS + # We only check the tools' linkage here. No need to check rustc. expected_linkage = { bin/"cargo" => [ diff --git a/Formula/r/rustfmt.rb b/Formula/r/rustfmt.rb deleted file mode 100644 index deb5df7105fb..000000000000 --- a/Formula/r/rustfmt.rb +++ /dev/null @@ -1,64 +0,0 @@ -class Rustfmt < Formula - desc "Format Rust code" - homepage "https://rust-lang.github.io/rustfmt/" - url "https://github.com/rust-lang/rustfmt/archive/refs/tags/v1.7.0.tar.gz" - sha256 "9f228d6192104a57efd73b20b8f0a2189c920373655b0c17b75758afab805be8" - license any_of: ["MIT", "Apache-2.0"] - head "https://github.com/rust-lang/rustfmt.git", branch: "master" - - bottle do - sha256 cellar: :any, arm64_sequoia: "3453e109168e99adfb471b8b4742eca8a6fab9d6a8926d9f2d1dd94d09fd2edc" - sha256 cellar: :any, arm64_sonoma: "0bc41425bca0cebff19f98f92d3495022438dea06b2de92a453e9273b2dae2d1" - sha256 cellar: :any, arm64_ventura: "5f5ac9dfb767b047a324ad7d30772ea0fdf2004ea07bc3d7777db50eb477ac61" - sha256 cellar: :any, arm64_monterey: "fb66b78ddb10d7e4fbedd8ceadb6bb0417bb31e6b2b31f0e3b7cf52a9ca2c729" - sha256 cellar: :any, sonoma: "c308cb93a595e76d83b98a65642e6915d17258b40cb521ec3740d3399665ec01" - sha256 cellar: :any, ventura: "24df5b88193bf67304a682284246770b8210f1228f8c27eaa4e26bdc92909807" - sha256 cellar: :any, monterey: "38c30c78cd44aa19df1a045755340742174dd79cbc9857550a2fd1d087dd2395" - sha256 cellar: :any_skip_relocation, x86_64_linux: "0e93863d9f42ac0ec4bda61168758d82e2164a400ea80d929433c864728977ba" - end - - depends_on "rustup" => :build - depends_on "rust" => :test - uses_from_macos "zlib" - - def install - ENV["CFG_RELEASE_CHANNEL"] = "stable" - system "rustup", "set", "profile", "minimal" - system "cargo", "install", *std_cargo_args - - # Bundle the shared libraries used by the executables. - # https://github.com/NixOS/nixpkgs/blob/6cee3b5893090b0f5f0a06b4cf42ca4e60e5d222/pkgs/development/compilers/rust/rustfmt.nix#L18-L27 - bundled_dylibs = %w[librustc_driver libstd] - bundled_dylibs << "libLLVM" if OS.linux? - bundled_dylibs.each do |libname| - dylib = buildpath.glob(".brew_home/.rustup/toolchains/*/lib/#{shared_library("#{libname}-*")}") - libexec.install dylib - end - - # Fix up rpaths. - bins_to_patch = [ - bin/"rustfmt", - bin/"git-rustfmt", - ] - bins_to_patch << libexec.glob(shared_library("librustc_driver-*")).first if OS.linux? - bins_to_patch.each do |bin| - extra_rpath = rpath(source: bin.dirname, target: libexec) - if OS.mac? - MachO::Tools.add_rpath(bin, extra_rpath) - MachO.codesign!(bin) if Hardware::CPU.arm? - elsif OS.linux? - patcher = bin.patchelf_patcher - patcher.rpath = [*bin.rpaths, extra_rpath].join(":") - patcher.save(patchelf_compatible: true) - end - end - end - - test do - system Formula["rust"].bin/"cargo", "init", "--name=brew", "--bin" - system bin/"rustfmt", "--check", "./src/main.rs" - - # Make sure all the executables work after patching. - bin.each_child { |exe| system exe, "--help" } - end -end diff --git a/Formula/s/spirv-llvm-translator.rb b/Formula/s/spirv-llvm-translator.rb index 2dd25ddd91cd..c72ef93ac541 100644 --- a/Formula/s/spirv-llvm-translator.rb +++ b/Formula/s/spirv-llvm-translator.rb @@ -1,19 +1,17 @@ class SpirvLlvmTranslator < Formula desc "Tool and a library for bi-directional translation between SPIR-V and LLVM IR" homepage "https://github.com/KhronosGroup/SPIRV-LLVM-Translator" - url "https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/refs/tags/v18.1.4.tar.gz" - sha256 "7d2d0fe478f4b6c5cc1fcb689a1b75506e353633d61d45191be5e6aaf18b9456" + url "https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/refs/tags/v19.1.0.tar.gz" + sha256 "2e64231db8646d8c220d44136712549b5d4c4194c6ce0e57c4f5ab342beee9a2" license "Apache-2.0" => { with: "LLVM-exception" } bottle do - sha256 cellar: :any, arm64_sequoia: "b60437b157cac562ae507475ccd561fcd0181771ad514620d8e9a93352cfcd9d" - sha256 cellar: :any, arm64_sonoma: "fa18462c9609f3ec61da4c2c8268508679e3c8e53c30452bcd55ac40fabcccd4" - sha256 cellar: :any, arm64_ventura: "8431842e0f6fdaa46be135ba407d0b6b7bfd173368755eeff703de92e2c62907" - sha256 cellar: :any, arm64_monterey: "6288b9be8c7ab125cd95a1a3f4426624507dcd304435bb6d30b4ef3582d83aab" - sha256 cellar: :any, sonoma: "19d837682d94ca2eb1501ba04f3eb48094adf6945d953eda17c20b53a505c719" - sha256 cellar: :any, ventura: "988be22119eb887cdc2449236087cf58809fe0af549f4ccfc3d4fb429f39c146" - sha256 cellar: :any, monterey: "362152a78f2b2aa706be81f54cc7e84e80f06de7c8cf4df649f89ed8f7609551" - sha256 cellar: :any_skip_relocation, x86_64_linux: "7dd5270867e409c03c58239c09f9836ae8c342ef5bd596bb4d8d37a2d930fa21" + sha256 cellar: :any, arm64_sequoia: "5b98f214b493c4923f8404e662321ff0e0946cc6a13deab71132052b7356b559" + sha256 cellar: :any, arm64_sonoma: "489b8d9d57221a75d790c4dacb37a08de3e69dc93b14d413a5a5a5409783680f" + sha256 cellar: :any, arm64_ventura: "02bd03a07e219281b557e6774d3fd24d5859c776fafd3c145a52afb1f8a41eef" + sha256 cellar: :any, sonoma: "1319a331c15041133d588459d477c8560d6a2322eb2febd6e0d536f479ff9616" + sha256 cellar: :any, ventura: "fcca22e86795849db9f1aeb0470743e34a8ce62abefe8aeaa4ee233f57980dec" + sha256 cellar: :any_skip_relocation, x86_64_linux: "34b6346ed7638882655be66794959cda5e2874875c036b0c31a07d61ae3ba891" end depends_on "cmake" => :build @@ -29,6 +27,7 @@ def llvm end def install + ENV.append "LDFLAGS", "-Wl,-rpath,#{rpath(target: llvm.opt_lib)}" if OS.linux? system "cmake", "-S", ".", "-B", "build", "-DLLVM_BUILD_TOOLS=ON", "-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=#{Formula["spirv-headers"].opt_prefix}", diff --git a/Formula/t/thrift.rb b/Formula/t/thrift.rb index 5a0761a7e469..fd45c769488b 100644 --- a/Formula/t/thrift.rb +++ b/Formula/t/thrift.rb @@ -4,9 +4,9 @@ class Thrift < Formula license "Apache-2.0" stable do - url "https://www.apache.org/dyn/closer.lua?path=thrift/0.20.0/thrift-0.20.0.tar.gz" - mirror "https://archive.apache.org/dist/thrift/0.20.0/thrift-0.20.0.tar.gz" - sha256 "b5d8311a779470e1502c027f428a1db542f5c051c8e1280ccd2163fa935ff2d6" + url "https://www.apache.org/dyn/closer.lua?path=thrift/0.21.0/thrift-0.21.0.tar.gz" + mirror "https://archive.apache.org/dist/thrift/0.21.0/thrift-0.21.0.tar.gz" + sha256 "9a24f3eba9a4ca493602226c16d8c228037db3b9291c6fc4019bfe3bd39fc67c" # Fix -flat_namespace being used on Big Sur and later. patch do @@ -16,14 +16,12 @@ class Thrift < Formula end bottle do - sha256 cellar: :any, arm64_sequoia: "d0bcbb13e3dec6bf71e04da65b2c58beb85041e27743374d9801c92459154200" - sha256 cellar: :any, arm64_sonoma: "93a5538c94151be23ff7ecb1aa8dcd88738217fc7092f8b6a20d033f99c63206" - sha256 cellar: :any, arm64_ventura: "41e37eea7e17eb56ac112fcd2c6ef55dad48a162356d5d3059b7cb343e6f2712" - sha256 cellar: :any, arm64_monterey: "c226249f0a56ab2f1bbcd82034309db8fa93c26e6dfe34b6fce4c146d7ba47ef" - sha256 cellar: :any, sonoma: "d30ef2a3176a45cbcb7e2e72a83b812b296bb01b28d8ac30861c22dcf9a16e03" - sha256 cellar: :any, ventura: "859125a35b08285676003bcb591b4c4c8f201c1fd3e29a7101861da3eceda6f0" - sha256 cellar: :any, monterey: "f6675b3a7a9d65d3f110a115137e43f5de6d35c60d9aba1a6ce1b1ed56752c17" - sha256 cellar: :any_skip_relocation, x86_64_linux: "710a77b27ffa924c1ea308bb8eb779a50562f32678843f8c8c5b8f00613b3907" + sha256 cellar: :any, arm64_sequoia: "eeb71b60993855c21f047fea4ce798bc758e5e7131e2e0c5c34657ac0bcc4848" + sha256 cellar: :any, arm64_sonoma: "04d15c0e6be86946302dfd384f904a0849819a47f4940ef3e00f85a73e6d0b93" + sha256 cellar: :any, arm64_ventura: "93b2fe6a55f5ae205627808ffcdabb30bf33f6853af28fd13d83a218f26cac67" + sha256 cellar: :any, sonoma: "74376f8d45a9663628a53a5460b6c900a2e2c01b06a20203e0b3d008b74abac5" + sha256 cellar: :any, ventura: "cb800f4e59d0ebd83f4feda5b39400d651539707b7be074c939eb64282c044db" + sha256 cellar: :any_skip_relocation, x86_64_linux: "591acbcb3495f691cc81fdd51a6b4196c2a8a40dddbe654045209e157c667632" end head do diff --git a/Formula/v/vineyard.rb b/Formula/v/vineyard.rb index b65372a2183c..5bd2aa989fbb 100644 --- a/Formula/v/vineyard.rb +++ b/Formula/v/vineyard.rb @@ -6,21 +6,18 @@ class Vineyard < Formula url "https://github.com/v6d-io/v6d/releases/download/v0.23.2/v6d-0.23.2.tar.gz" sha256 "2a2788ed77b9459477b3e90767a910e77e2035a34f33c29c25b9876568683fd4" license "Apache-2.0" - revision 2 + revision 3 bottle do - sha256 arm64_sequoia: "f7da4bc49b09e9ace96bf3568fe5c69e3991c38e67d724edfb82097178503e72" - sha256 arm64_sonoma: "b8e3536263aa443e1470e32f30a9ca7256b551e104689e0a265dfac22d0e1821" - sha256 arm64_ventura: "52bbe6e043bbb75dd8d5e70a964012045d75c5e60218cd41f1db38869b0799ea" - sha256 arm64_monterey: "5b441eb66d81bc59736933a5953c0eaebdbb6337f18b1d6e298cd57ed14ce562" - sha256 sonoma: "f2f82b33cc4ed6a4b224332f58907265397ac695bd02a4a46f0b3b7b0ecccc16" - sha256 ventura: "d5eb9d7a6e858e2cebced5e26d7980d907cab9a83b8802cee23fff783c1422f0" - sha256 monterey: "30c5104aaf7425e92de4c9871e1b057b4d6c15165061b99555d1c712117e8169" - sha256 cellar: :any_skip_relocation, x86_64_linux: "458712fa6edc1cb5a6f58dbcaea6872872018d8aedf0d3e3d2c5ec0595b228eb" + sha256 arm64_sequoia: "372217d845366fd9983bed6d58ca20b7e3818cf8fb1d6c45908d4c870501a8f7" + sha256 arm64_sonoma: "a0c381bbbf4debb2c173d5e29604b935537f75479a786c98efbede7b3ac6ba29" + sha256 arm64_ventura: "9a77263854d8ee0c611eb0e1a4e36c33e0c0ff51fb6e73d36e2c0bd4db965616" + sha256 sonoma: "0659c3ce7f76f389aab68230d1a90c318b2ccc178a63a06bb993db5f5dd6a05c" + sha256 ventura: "c8975c1528ed68e2380e26a866e9e457e667443c4762eda0811c255e1a823929" end depends_on "cmake" => [:build, :test] - depends_on "llvm" => [:build, :test] + depends_on "llvm@18" => [:build, :test] depends_on "python@3.12" => :build depends_on "apache-arrow" depends_on "boost" @@ -45,6 +42,10 @@ class Vineyard < Formula fails_with gcc: "5" + def llvm + deps.map(&:to_formula).find { |f| f.name.match?(/^llvm(@\d+)?$/) } + end + resource "setuptools" do url "https://files.pythonhosted.org/packages/1c/1c/8a56622f2fc9ebb0df743373ef1a96c8e20410350d12f44ef03c588318c3/setuptools-70.1.0.tar.gz" sha256 "01a1e793faa5bd89abc851fa15d0a0db26f160890c7102cd8dce643e886b47f5" @@ -55,11 +56,12 @@ def install venv = virtualenv_create(libexec, python) venv.pip_install resources # LLVM is keg-only. - ENV.prepend_path "PYTHONPATH", Formula["llvm"].opt_prefix/Language::Python.site_packages(python) + ENV.prepend_path "PYTHONPATH", llvm.opt_prefix/Language::Python.site_packages(python) # Work around an Xcode 15 linker issue which causes linkage against LLVM's # libunwind due to it being present in a library search path. - ENV.remove "HOMEBREW_LIBRARY_PATHS", Formula["llvm"].opt_lib + ENV.remove "HOMEBREW_LIBRARY_PATHS", llvm.opt_lib if DevelopmentTools.clang_build_version >= 1500 + ENV.append "LDFLAGS", "-Wl,-rpath,#{llvm.opt_lib}/#{Hardware::CPU.arch}-unknown-linux-gnu" if OS.linux? system "cmake", "-S", ".", "-B", "build", "-DCMAKE_CXX_STANDARD=17", @@ -111,16 +113,21 @@ def install # Work around an Xcode 15 linker issue which causes linkage against LLVM's # libunwind due to it being present in a library search path. - ENV.remove "HOMEBREW_LIBRARY_PATHS", Formula["llvm"].opt_lib + ENV.remove "HOMEBREW_LIBRARY_PATHS", llvm.opt_lib # Remove Homebrew's lib directory from LDFLAGS as it is not available during # `shell_output`. ENV.remove "LDFLAGS", "-L#{HOMEBREW_PREFIX}/lib" + if OS.linux? + ENV.append "LDFLAGS", "-L#{llvm.opt_lib}/#{Hardware::CPU.arch}-unknown-linux-gnu" + ENV.append "LDFLAGS", "-Wl,-rpath,#{llvm.opt_lib}/#{Hardware::CPU.arch}-unknown-linux-gnu" + end + # macos AppleClang doesn't support -fopenmp system "cmake", "-S", testpath, "-B", testpath/"build", - "-DCMAKE_C_COMPILER=#{Formula["llvm"].bin}/clang", - "-DCMAKE_CXX_COMPILER=#{Formula["llvm"].bin}/clang++", + "-DCMAKE_C_COMPILER=#{llvm.bin}/clang", + "-DCMAKE_CXX_COMPILER=#{llvm.bin}/clang++", *std_cmake_args system "cmake", "--build", testpath/"build" diff --git a/Formula/w/wasmedge.rb b/Formula/w/wasmedge.rb index 582db34a2703..4743dca7ad49 100644 --- a/Formula/w/wasmedge.rb +++ b/Formula/w/wasmedge.rb @@ -2,7 +2,7 @@ class Wasmedge < Formula desc "Lightweight, high-performance, and extensible WebAssembly runtime" homepage "https://WasmEdge.org/" license "Apache-2.0" - revision 1 + revision 2 head "https://github.com/WasmEdge/WasmEdge.git", branch: "master" stable do @@ -17,14 +17,12 @@ class Wasmedge < Formula end bottle do - sha256 cellar: :any, arm64_sequoia: "7e522adfb102ab520a1e1af4d5d40bbb8c1f9e63fd4f12ca6bd73aa699aa7517" - sha256 cellar: :any, arm64_sonoma: "ae12e87e096683ebc626bb18acaf435696a9dd065d982dbed2e09a0e52339934" - sha256 cellar: :any, arm64_ventura: "5dce766cd381efbbff709ca04ff314bb495552f2ee19c7ef7d8540d349ce4b28" - sha256 cellar: :any, arm64_monterey: "415cea5846fc9a53a52c9cbb97b91658a5dac871b9768a1d58282b7b09d6f1da" - sha256 cellar: :any, sonoma: "34eb565999cba9d2f50828923c54dcb6e11048b78f53a3f50b7ddc5bebad8905" - sha256 cellar: :any, ventura: "0c752b84ea5482c70b6574fff0ef04eaa4a279edf06233d9a1af6ba9fc21dc6d" - sha256 cellar: :any, monterey: "414ca41d8b8ecd0d91105c70e151ac2abb542d44fbde4fce4ab5b8c7f894ac26" - sha256 cellar: :any_skip_relocation, x86_64_linux: "1cb31c218e277356e0435a036566961491c752886d0a11bb3dce945b2c4b3f27" + sha256 cellar: :any, arm64_sequoia: "c6da772877caa84c519af7fa9be3b8211b870c586fc581373d5cde8f01510d80" + sha256 cellar: :any, arm64_sonoma: "70bd5c8d863341572a7faaed1f18f50976cbb3685cf554b8a6da6e36f160f23d" + sha256 cellar: :any, arm64_ventura: "d3c1e895a98f3723b9b152ba1c03e4ede5933b675d344ed29c56ee3adea2a829" + sha256 cellar: :any, sonoma: "c7732965f2f8bd4f6ecde1de586f6e5462125cb860857af30cb3360b716da80b" + sha256 cellar: :any, ventura: "244493be030ecac9ed0d5121e84db174699edadbc1bda050bef9a450b8478e5a" + sha256 cellar: :any_skip_relocation, x86_64_linux: "3aa7e1095343cad4b0608bc8981dd0cc8cfa4b045c352f80c30dfeff7f29ac96" end depends_on "cmake" => :build @@ -32,6 +30,12 @@ class Wasmedge < Formula depends_on "llvm" depends_on "spdlog" + uses_from_macos "zlib" + + on_linux do + depends_on "zstd" + end + def install system "cmake", "-S", ".", "-B", "build", *std_cmake_args system "cmake", "--build", "build" diff --git a/audit_exceptions/universal_binary_allowlist.json b/audit_exceptions/universal_binary_allowlist.json index 7366d47da125..92ba737f510a 100644 --- a/audit_exceptions/universal_binary_allowlist.json +++ b/audit_exceptions/universal_binary_allowlist.json @@ -12,6 +12,7 @@ "llvm@15", "llvm@16", "llvm@17", + "llvm@18", "llvm@9", "logstash", "marp-cli", diff --git a/formula_renames.json b/formula_renames.json index 7ad5434d98e9..f93579d565eb 100644 --- a/formula_renames.json +++ b/formula_renames.json @@ -143,6 +143,7 @@ "root6": "root", "rt-audio": "rtaudio", "rtx": "mise", + "rustfmt": "rust", "rustup-init": "rustup", "screenbrightness": "brightness", "sdl": "sdl12-compat",