From e7627ba7d6e1d9a893dafc91e511e45e9de3f006 Mon Sep 17 00:00:00 2001 From: Michael Cho Date: Wed, 30 Oct 2024 20:04:07 -0400 Subject: [PATCH 1/3] icu4c@75: revision bump for keg_only --- Formula/i/icu4c@75.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Formula/i/icu4c@75.rb b/Formula/i/icu4c@75.rb index 212d98e9c826..be363133b126 100644 --- a/Formula/i/icu4c@75.rb +++ b/Formula/i/icu4c@75.rb @@ -5,6 +5,7 @@ class Icu4cAT75 < Formula version "75.1" sha256 "cb968df3e4d2e87e8b11c49a5d01c787bd13b9545280fc6642f826527618caef" license "ICU" + revision 1 livecheck do url :stable @@ -24,7 +25,7 @@ class Icu4cAT75 < Formula sha256 cellar: :any_skip_relocation, x86_64_linux: "e7ca9ed261455d9f114079bb46b3175c57265a5e254f9d33404c10a70e5523b5" end - keg_only :shadowed_by_macos, "macOS provides libicucore.dylib (but nothing else)" + keg_only :versioned_formula def install odie "Major version bumps need a new formula!" if version.major.to_s != name[/@(\d+)$/, 1] From 058808228a86a3bbaff50c96e403c3027e828f11 Mon Sep 17 00:00:00 2001 From: Michael Cho Date: Wed, 30 Oct 2024 20:01:34 -0400 Subject: [PATCH 2/3] icu4c@76: revision bump for `icu4c` alias migration --- Aliases/icu4c | 2 +- Formula/i/icu4c@76.rb | 5 ++--- audit_exceptions/versioned_keg_only_allowlist.json | 2 +- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/Aliases/icu4c b/Aliases/icu4c index e00e8c39f326..ac38596f66fd 120000 --- a/Aliases/icu4c +++ b/Aliases/icu4c @@ -1 +1 @@ -../Formula/i/icu4c@75.rb \ No newline at end of file +../Formula/i/icu4c@76.rb \ No newline at end of file diff --git a/Formula/i/icu4c@76.rb b/Formula/i/icu4c@76.rb index b63a087fa78d..485c3e6a4a54 100644 --- a/Formula/i/icu4c@76.rb +++ b/Formula/i/icu4c@76.rb @@ -5,6 +5,7 @@ class Icu4cAT76 < Formula version "76.1" sha256 "dfacb46bfe4747410472ce3e1144bf28a102feeaa4e3875bac9b4c6cf30f4f3e" license "ICU" + revision 1 # We allow the livecheck to detect new `icu4c` major versions in order to # automate version bumps. To make sure PRs are created correctly, we output @@ -26,9 +27,7 @@ class Icu4cAT76 < Formula sha256 cellar: :any_skip_relocation, x86_64_linux: "a0e8e698c09aee143fce7529fcdf776be98d15f3a000ed8c3e74dc387ce364ac" end - # TODO: Switch keg_only reason after renaming `icu4c` formula to `icu4c@75` and updating alias to `icu4c@76` - # keg_only :provided_by_macos, "macOS provides libicucore.dylib (but nothing else)" - keg_only :versioned_formula + keg_only :shadowed_by_macos, "macOS provides libicucore.dylib (but nothing else)" def install odie "Major version bumps need a new formula!" if version.major.to_s != name[/@(\d+)$/, 1] diff --git a/audit_exceptions/versioned_keg_only_allowlist.json b/audit_exceptions/versioned_keg_only_allowlist.json index e551a6961e22..16960b214185 100644 --- a/audit_exceptions/versioned_keg_only_allowlist.json +++ b/audit_exceptions/versioned_keg_only_allowlist.json @@ -14,7 +14,7 @@ "gcc@13", "glibmm@2.66", "gnupg@1.4", - "icu4c@75", + "icu4c@76", "libpeas@1", "libsigc++@2", "libxml++@3", From eaf55f145edef370bffd0055c86c7d9ea53e4882 Mon Sep 17 00:00:00 2001 From: Michael Cho Date: Fri, 1 Nov 2024 09:12:34 -0400 Subject: [PATCH 3/3] libxml2: fix `icu4c@76` paths --- Formula/lib/libxml2.rb | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/Formula/lib/libxml2.rb b/Formula/lib/libxml2.rb index 68393ebcf185..6550af51ec69 100644 --- a/Formula/lib/libxml2.rb +++ b/Formula/lib/libxml2.rb @@ -4,7 +4,7 @@ class Libxml2 < Formula url "https://download.gnome.org/sources/libxml2/2.13/libxml2-2.13.4.tar.xz" sha256 "65d042e1c8010243e617efb02afda20b85c2160acdbfbcb5b26b80cec6515650" license "MIT" - revision 3 + revision 4 # We use a common regex because libxml2 doesn't use GNOME's "even-numbered # minor is stable" version scheme. @@ -33,7 +33,6 @@ class Libxml2 < Formula keg_only :provided_by_macos - depends_on "python@3.11" => [:build, :test] depends_on "python@3.12" => [:build, :test] depends_on "python@3.13" => [:build, :test] depends_on "pkg-config" => :test @@ -56,16 +55,20 @@ def install ENV.append "CFLAGS", "-std=gnu11" if OS.linux? system "autoreconf", "--force", "--install", "--verbose" if build.head? - system "./configure", *std_configure_args, + system "./configure", "--disable-silent-rules", "--sysconfdir=#{etc}", - "--disable-silent-rules", "--with-history", "--with-http", "--with-icu", + "--without-lzma", "--without-python", - "--without-lzma" + *std_configure_args system "make", "install" + icu4c = deps.find { |dep| dep.name.match?(/^icu4c(@\d+)?$/) } + .to_formula + inreplace [bin/"xml2-config", lib/"pkgconfig/libxml-2.0.pc"], icu4c.prefix.realpath, icu4c.opt_prefix + cd "python" do sdk_include = if OS.mac? sdk = MacOS.sdk_path_if_needed