From c5d78f33476c98d35fefa68fcec4477a11103e48 Mon Sep 17 00:00:00 2001 From: botantony Date: Fri, 21 Feb 2025 17:07:29 +0100 Subject: [PATCH] zig std args: use symbols for compilation options --- Library/Homebrew/extend/os/mac/formula.rb | 4 ++-- Library/Homebrew/formula.rb | 12 +++++++----- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/Library/Homebrew/extend/os/mac/formula.rb b/Library/Homebrew/extend/os/mac/formula.rb index fee25ff019..c278a32674 100644 --- a/Library/Homebrew/extend/os/mac/formula.rb +++ b/Library/Homebrew/extend/os/mac/formula.rb @@ -36,10 +36,10 @@ module OS sig { params( prefix: T.any(String, Pathname), - release_mode: String + release_mode: Symbol, ).returns(T::Array[String]) } - def std_zig_args(prefix: self.prefix, release_mode: "fast") + def std_zig_args(prefix: self.prefix, release_mode: :fast) args = super # it is probably better to add this flag only on arm macs # my attempts with `MacOS::Hardware::CPU.arm?` and its variations didn't work out diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index 44b03f2a23..c8a3e2debe 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -1951,16 +1951,18 @@ class Formula # @api public sig { params(prefix: T.any(String, Pathname), - release_mode: String).returns(T::Array[String]) + release_mode: Symbol).returns(T::Array[String]) } - def std_zig_args(prefix: self.prefix, release_mode: "fast") - release_mode_downcased = release_mode.downcase - release_mode_capitalized = release_mode.capitalize + def std_zig_args(prefix: self.prefix, release_mode: :fast) + raise ArgumentError, "Invalid Zig release mode: #{release_mode}" if [:safe, :fast, :small].exclude?(release_mode) + + release_mode_downcased = release_mode.to_s.downcase + release_mode_capitalized = release_mode.to_s.capitalize [ "--prefix", prefix.to_s, "--release=#{release_mode_downcased}", "-Doptimize=Release#{release_mode_capitalized}", - "--summary", "all", + "--summary", "all" ] end