diff --git a/Formula/e/edencommon.rb b/Formula/e/edencommon.rb index 507659bedd6f..40ff6b65ee2e 100644 --- a/Formula/e/edencommon.rb +++ b/Formula/e/edencommon.rb @@ -1,45 +1,40 @@ class Edencommon < Formula desc "Shared library for Watchman and Eden projects" homepage "https://github.com/facebookexperimental/edencommon" - url "https://github.com/facebookexperimental/edencommon/archive/refs/tags/v2026.01.12.00.tar.gz" - sha256 "3b60d7dd939c5844b1758a843a37f42cfafda37536a4396eb3876cee70a844bd" + url "https://github.com/facebookexperimental/edencommon/archive/refs/tags/v2026.03.02.00.tar.gz" + sha256 "9d8a1cee7f5e95b11f67b7b553940b9e578eb699a33c5a75427b45b8172f8f4c" license "MIT" - revision 1 head "https://github.com/facebookexperimental/edencommon.git", branch: "main" bottle do - sha256 arm64_tahoe: "ff942a530e45fb9f08635976fab75a51051f3a4df8b0bc40c95905d912bf69c5" - sha256 arm64_sequoia: "422a39ee2415e2b4be9469c4a3f58c4d814aa24746d78b26286d540f64889ab6" - sha256 arm64_sonoma: "49e25ce35016c1b3f96cc5357a4214fbe642e7ffb384486d2e339ca0652330a0" - sha256 cellar: :any, sonoma: "f4b2e78e855180b5839b6a9d942f88c55de21d7a682714848a69b393672fb729" - sha256 cellar: :any_skip_relocation, arm64_linux: "a7f762271950bf4220b9d53e9531f1b6c46af0fc792d9691960b7234de1ecaec" - sha256 cellar: :any_skip_relocation, x86_64_linux: "0269aa5d2ab3b0d02cfca1d218696098348194210562eb58184af593900ff264" + sha256 arm64_tahoe: "abd328dfd04b46269c8e404d8e9f6bd720705a489487a0f25c8eef41f56d9825" + sha256 arm64_sequoia: "1f6e1f4e6bf1f05569c8398aeef0596103ed76935024241afd9fb1b97e3afecb" + sha256 arm64_sonoma: "74dbb01b47aca8a2443c70bf08c8c712ab22acd3884748b6bcf6dc7af3da56c5" + sha256 cellar: :any, sonoma: "83bd7d7e0459170538faa0541adb701ed8d5a57ce1e3d91073cd275f0fdbc8c5" + sha256 cellar: :any_skip_relocation, arm64_linux: "83debbe350ce8cfd46306cfbdae093a3577376cad4bd2ea765ef2ac5aaaaa360" + sha256 cellar: :any_skip_relocation, x86_64_linux: "cf63051a85ada65134b878f448f782aa079f07eefabc10936347b4572973467b" end depends_on "cmake" => :build + depends_on "fbthrift" => :build + depends_on "gflags" => :build + depends_on "glog" => :build depends_on "googletest" => :build depends_on "mvfst" => :build depends_on "wangle" => :build depends_on "boost" depends_on "fb303" - depends_on "fbthrift" depends_on "fmt" depends_on "folly" - depends_on "gflags" - depends_on "glog" - depends_on "openssl@3" def install - # Workaround to build with glog >= 0.7 until fixed upstream - inreplace "CMakeLists.txt", /^find_package\(Glog MODULE /, "# \\0" - # Fix "Process terminated due to timeout" by allowing a longer timeout. - inreplace buildpath.glob("eden/common/{os,utils}/test/CMakeLists.txt"), - /gtest_discover_tests\((.*)\)/, - "gtest_discover_tests(\\1 DISCOVERY_TIMEOUT 60)" - inreplace "eden/common/utils/test/CMakeLists.txt", - /gtest_discover_tests\((.*)\)/, - "gtest_discover_tests(\\1 DISCOVERY_TIMEOUT 60)" + # Related: https://gitlab.kitware.com/cmake/cmake/-/issues/26773 + test_cmakelists = %w[ + eden/common/os/test/CMakeLists.txt + eden/common/utils/test/CMakeLists.txt + ] + inreplace test_cmakelists, /(gtest_discover_tests\(.*)\)/, "\\1 DISCOVERY_TIMEOUT 60)" # Avoid having to build FBThrift py library inreplace "CMakeLists.txt", "COMPONENTS cpp2 py)", "COMPONENTS cpp2)" @@ -49,9 +44,7 @@ def install -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_RPATH=#{rpath} ] - linker_flags = %w[-undefined dynamic_lookup -dead_strip_dylibs] - linker_flags << "-ld_classic" if OS.mac? && MacOS.version == :ventura - shared_args << "-DCMAKE_SHARED_LINKER_FLAGS=-Wl,#{linker_flags.join(",")}" if OS.mac? + shared_args << "-DCMAKE_SHARED_LINKER_FLAGS=-Wl,-undefined,dynamic_lookup -Wl,-dead_strip_dylibs" if OS.mac? system "cmake", "-S", ".", "-B", "_build", *shared_args, *std_cmake_args system "cmake", "--build", "_build" diff --git a/Formula/f/fb303.rb b/Formula/f/fb303.rb index c7adb5abc3b9..e9e09975712e 100644 --- a/Formula/f/fb303.rb +++ b/Formula/f/fb303.rb @@ -1,35 +1,30 @@ class Fb303 < Formula desc "Thrift functions for querying information from a service" homepage "https://github.com/facebook/fb303" - url "https://github.com/facebook/fb303/archive/refs/tags/v2026.01.12.00.tar.gz" - sha256 "e455652551702d040b9ba7c9e3991f556c851fc513fd28b039a56127a1190dd5" + url "https://github.com/facebook/fb303/archive/refs/tags/v2026.03.02.00.tar.gz" + sha256 "194c458684b68cc51aec63b44fd7bd41f3260390fa181cc35ece07988a4d37f4" license "Apache-2.0" - revision 1 head "https://github.com/facebook/fb303.git", branch: "main" bottle do - sha256 arm64_tahoe: "a2ca11b554ea9b7110a5a897a78efe7c908e816d7ac7055d683378629239a331" - sha256 arm64_sequoia: "af12a8e70f3c967fcf69ced337f68a5965f1aa22194f0af40e548d2db06a6ca1" - sha256 arm64_sonoma: "0390e77b75ddbccf590874c04c36e434554aea4a6e7cfde26bf3feadb13e3ae4" - sha256 cellar: :any, sonoma: "5b266a720a5708b3676e4789ecc490ce3eea7b455a46fea786168325f67d3628" - sha256 cellar: :any_skip_relocation, arm64_linux: "a48765f312636e7109a0d8db061767d0805a7ffbd112ec2dddf5e025d6807995" - sha256 cellar: :any_skip_relocation, x86_64_linux: "1fc0acecdb8da793d006c74a8b8202282beff9f5d85fb80e2974394350a5d764" + sha256 arm64_tahoe: "cd3e338c6362d32d5d3c72c9c03feb6a78b418538ca91491d7e7e15aec44d398" + sha256 arm64_sequoia: "cb0104b9d7db2343afe11d1d9081650306fddd35dc2ec81340b93c40c6597bd9" + sha256 arm64_sonoma: "5ad7f1d83b6ac5c81f4f5b84c61ad861fa1303f1ebf18d9f3da579ee24c13fe9" + sha256 cellar: :any, sonoma: "9b3b7f7b3d29f8fd16cf21b328ebb6501f02ea5d69492e484c99f92fcfddaeeb" + sha256 cellar: :any_skip_relocation, arm64_linux: "6fb7641331aeab62e009b5be31fabaaac0f41948529aed129a121acbf634d18f" + sha256 cellar: :any_skip_relocation, x86_64_linux: "ca440f3fc101e8d966857dca4199d0775fd8b07276edd7dab6e204e8434dae63" end depends_on "cmake" => [:build, :test] + depends_on "fizz" => [:build, :test] depends_on "mvfst" => [:build, :test] depends_on "fbthrift" - depends_on "fizz" depends_on "fmt" depends_on "folly" depends_on "gflags" depends_on "glog" - depends_on "openssl@3" def install - # Workaround to build with glog >= 0.7 until fixed upstream - inreplace "CMakeLists.txt", /^find_package\(Glog MODULE /, "# \\0" - shared_args = ["-DBUILD_SHARED_LIBS=ON", "-DCMAKE_INSTALL_RPATH=#{rpath}"] shared_args << "-DCMAKE_SHARED_LINKER_FLAGS=-Wl,-dead_strip_dylibs" if OS.mac? diff --git a/Formula/f/fbthrift.rb b/Formula/f/fbthrift.rb index 94d49a545ce6..3118e186dc2e 100644 --- a/Formula/f/fbthrift.rb +++ b/Formula/f/fbthrift.rb @@ -1,25 +1,24 @@ class Fbthrift < Formula desc "Facebook's branch of Apache Thrift, including a new C++ server" homepage "https://github.com/facebook/fbthrift" - url "https://github.com/facebook/fbthrift/archive/refs/tags/v2026.01.12.00.tar.gz" - sha256 "6601fd362b96160ac9c37c3184153f605e4b09fbc54f3d474cf5cc926a3d62de" + url "https://github.com/facebook/fbthrift/archive/refs/tags/v2026.03.02.00.tar.gz" + sha256 "666184a82c151b373e313de5d9a673de40ff0dc02ed2018f48cd1d68762771b7" license "Apache-2.0" - revision 1 head "https://github.com/facebook/fbthrift.git", branch: "main" bottle do - rebuild 1 - sha256 cellar: :any, arm64_tahoe: "f136b31674b82b47aff7794c165390da31d9ca42c54b3d4298c459ded8bdb028" - sha256 cellar: :any, arm64_sequoia: "e6714731357eecc01079dc715a6443b2aad8be219506d42bdb5587cc6c0f65fc" - sha256 cellar: :any, arm64_sonoma: "b67e3f1bcf63e2d691a34028e4cce8a014a5c3517788d59fa223d1d13de267cc" - sha256 cellar: :any, sonoma: "07d365f2daf208bb44e41ae03b69204d820684e0fe18f129696e5c75c815c760" - sha256 cellar: :any_skip_relocation, arm64_linux: "34804d936b450fc20820db783992c8b188a9e0dbaec05b46e2e021766c069caa" - sha256 cellar: :any_skip_relocation, x86_64_linux: "6b455f3610ea9d15687037e6e6cae87a7fdfafad586891205b331143075a44a1" + sha256 cellar: :any, arm64_tahoe: "d437a24fa480e1e0e89bf172e9c434e93fcb77361a5a77d589729919e04b678b" + sha256 cellar: :any, arm64_sequoia: "ed7a0d89afd7125b94ce1a266a6c4defd691df73f05b764eda2d53563b9dc930" + sha256 cellar: :any, arm64_sonoma: "b51c944cdfefdc932f6f727a47527dc4cb52c483332f7897dcc3ab0cc9d06e56" + sha256 cellar: :any, sonoma: "8ebf32162778438f4115c6602dfb2e4d641a479ae5be4834144ce78884d0d0d9" + sha256 cellar: :any_skip_relocation, arm64_linux: "8bc97ee4462d8fe026f69b25cf86e5b85e6c9341d7c46952ada3ae7cf5097e61" + sha256 cellar: :any_skip_relocation, x86_64_linux: "6d805f28d18b4ce66a2c1617ed232a8b712ee3601c255b558d58f7fee9ce9015" end depends_on "bison" => :build # Needs Bison 3.1+ depends_on "cmake" => [:build, :test] depends_on "mvfst" => [:build, :test] + depends_on "zstd" => :build depends_on "double-conversion" depends_on "fizz" depends_on "fmt" @@ -29,7 +28,6 @@ class Fbthrift < Formula depends_on "openssl@3" depends_on "wangle" depends_on "xxhash" - depends_on "zstd" uses_from_macos "flex" => :build uses_from_macos "python" => :build @@ -97,7 +95,7 @@ def install # Test CMake package to make sure required dependencies without linkage are kept, # Link to `FBThrift::transport` as it uses path to `zstd` shared library (testpath/"CMakeLists.txt").write <<~CMAKE - cmake_minimum_required(VERSION 3.5) + cmake_minimum_required(VERSION 4.0) project(test LANGUAGES CXX) list(APPEND CMAKE_MODULE_PATH "#{Formula["fizz"].opt_libexec}/cmake") diff --git a/Formula/f/fizz.rb b/Formula/f/fizz.rb index 0e3c2b5611b7..fb8e6dd7eab9 100644 --- a/Formula/f/fizz.rb +++ b/Formula/f/fizz.rb @@ -1,28 +1,25 @@ class Fizz < Formula desc "C++14 implementation of the TLS-1.3 standard" homepage "https://github.com/facebookincubator/fizz" - url "https://github.com/facebookincubator/fizz/archive/refs/tags/v2026.01.12.00.tar.gz" - sha256 "b7ae5196273553ee2d04830120830c1f1604b9e96d78db9b58c2ef2b753580d2" + url "https://github.com/facebookincubator/fizz/archive/refs/tags/v2026.03.02.00.tar.gz" + sha256 "f5756c8a869ecbff50cc720816bb6c7f99b61b0581edcef0fad7f0b0cb98c3d8" license "BSD-3-Clause" - revision 1 head "https://github.com/facebookincubator/fizz.git", branch: "main" bottle do - rebuild 1 - sha256 arm64_tahoe: "3b68298e4e692d3843e33e8ac6971c31240816f8ed311ca98e316efe6bd50b8f" - sha256 arm64_sequoia: "64459d8d7d0b99f29b30300da69e928f0c4c864e55d5441e68adc9bef987c950" - sha256 arm64_sonoma: "b6cf0e4ef50e5045d2da714b425dcf69c276e1b168de9f5b67833de86228f4d7" - sha256 cellar: :any, sonoma: "1070c33027f2c7da503094c5c1dba18db152dba7e2cf6d8acc478df460c5169b" - sha256 cellar: :any_skip_relocation, arm64_linux: "6e5b6644bc69f603b7e1172f9d4a10620dbb5ea7a510f32d36f7be7d3a9a1be4" - sha256 cellar: :any_skip_relocation, x86_64_linux: "231db179b8fa8cd68f86dca39b477856661cbc82ae92a9b23346d157d4d7be71" + sha256 cellar: :any, arm64_tahoe: "eb24e819647f5aaded1a91814887d01b5bdb3be414603ec6c99056be38e1d6b0" + sha256 cellar: :any, arm64_sequoia: "6bd918cdd70d8cee264199ab0245dfea13ae0da8f2241fdc39ea67c31d39b364" + sha256 cellar: :any, arm64_sonoma: "57c607e49d0efa177055fe845e660f15d465fecd86628c03ccce6c1caa7860d5" + sha256 cellar: :any, sonoma: "d48ffb5c509b64da0ed6a5e3472aa0905d7a689975aedace40281131e9e5564d" + sha256 cellar: :any_skip_relocation, arm64_linux: "c3c3028892d712072a4f76343b64e970c80cfc9fe8077c073fef4ecbaf3e954a" + sha256 cellar: :any_skip_relocation, x86_64_linux: "170389a657e7116f2e346bb5c22e537a9ec6b1287f21428a5b4d2a9d6a47b11a" end depends_on "cmake" => [:build, :test] + depends_on "gflags" => :build depends_on "libevent" => :build - depends_on "double-conversion" depends_on "fmt" depends_on "folly" - depends_on "gflags" depends_on "glog" depends_on "libsodium" depends_on "openssl@3" @@ -33,12 +30,17 @@ class Fizz < Formula end def install - args = ["-DBUILD_TESTS=OFF", "-DBUILD_SHARED_LIBS=ON", "-DCMAKE_INSTALL_RPATH=#{rpath}"] + args = %W[ + -DBUILD_EXAMPLES=OFF + -DBUILD_TESTS=OFF + -DBUILD_SHARED_LIBS=ON + -DCMAKE_INSTALL_RPATH=#{rpath} + ] if OS.mac? # Prevent indirect linkage with boost and snappy. - args += [ - "-DCMAKE_EXE_LINKER_FLAGS=-Wl,-dead_strip_dylibs", - "-DCMAKE_SHARED_LINKER_FLAGS=-Wl,-dead_strip_dylibs", + args += %w[ + -DCMAKE_EXE_LINKER_FLAGS=-Wl,-dead_strip_dylibs + -DCMAKE_SHARED_LINKER_FLAGS=-Wl,-dead_strip_dylibs ] end system "cmake", "-S", "fizz", "-B", "build", *args, *std_cmake_args diff --git a/Formula/f/folly.rb b/Formula/f/folly.rb index 25a15f63e383..f0d8bfcc3674 100644 --- a/Formula/f/folly.rb +++ b/Formula/f/folly.rb @@ -1,20 +1,18 @@ class Folly < Formula desc "Collection of reusable C++ library artifacts developed at Facebook" homepage "https://github.com/facebook/folly" - url "https://github.com/facebook/folly/archive/refs/tags/v2026.01.12.00.tar.gz" - sha256 "4b694698c773a3236d6379316f67872db77070d56ea256bec5759964712f9c34" + url "https://github.com/facebook/folly/archive/refs/tags/v2026.03.02.00.tar.gz" + sha256 "f2a9bbd4bd36256d4554f9917fcefa9ec356cec637d2a743e01a6a1d569224dc" license "Apache-2.0" - revision 1 head "https://github.com/facebook/folly.git", branch: "main" bottle do - rebuild 1 - sha256 cellar: :any, arm64_tahoe: "e89c848f5ecc2b582cd6f0de58c6408060632a29ee7908eba2a95370888dd4b2" - sha256 cellar: :any, arm64_sequoia: "a3a9644c73a7d11089769aca129156f1622bf2a69fae833f8ce4c4c54d0cb7fb" - sha256 cellar: :any, arm64_sonoma: "c060c7012cd759ba23000fef82d5ce4ead9dd767df8427f2e58cb2779d126c24" - sha256 cellar: :any, sonoma: "30a872cf363d30f97c1d7a5fb76b292f3876cafce2e17c4a0eeae4ba49b9f9ee" - sha256 cellar: :any_skip_relocation, arm64_linux: "c7956a6a6fc872211b52e4f9833e92c90fbf9e475ee167997ad3366605c982dd" - sha256 cellar: :any_skip_relocation, x86_64_linux: "3e01ad159525b43279d1ec39d2340d5ddf6e78acb4c6a542f5d7a6bf310d0407" + sha256 cellar: :any, arm64_tahoe: "1cb23b2dda767c57c67f9af304c8b024f2e20915899f67a337babe2adcd6c439" + sha256 cellar: :any, arm64_sequoia: "4fa29e77619fb5cc9e7254e153bf33286facdd664055ea6a086f8dba10126d4f" + sha256 cellar: :any, arm64_sonoma: "c6229c9457a9a12dd26b3ffee0bd6ad11b82a9ce98c0f253684946cbebcf0d76" + sha256 cellar: :any, sonoma: "1bb078819c030ca11558a371a4a256d75937ad8633fbdf55d831f4df8506794a" + sha256 cellar: :any_skip_relocation, arm64_linux: "f8887b0f37d7b75d7e0a92b07f3d23afdc742edd62c5562033e37b068bc43888" + sha256 cellar: :any_skip_relocation, x86_64_linux: "bd64c8ea8cecfe6f2787fb9885d862efca2827f427a38bc93ee8f00d9eb47fad" end depends_on "cmake" => :build @@ -52,15 +50,12 @@ class Folly < Formula EOS end - # Workaround to build with glog >= 0.7 - # ref: https://github.com/facebook/folly/issues/2171 - # ref: https://github.com/facebook/folly/pull/2320 - # ref: https://github.com/facebook/folly/pull/2474 + # Workaround for arm64 Linux error on duplicate symbols + # Based on https://github.com/facebook/folly/pull/2562 patch :DATA def install - args = %W[ - -DCMAKE_LIBRARY_ARCHITECTURE=#{Hardware::CPU.arch} + args = %w[ -DFOLLY_USE_JEMALLOC=OFF ] @@ -79,9 +74,6 @@ def install end test do - # Force use of Clang rather than LLVM Clang - ENV.clang if OS.mac? - (testpath/"test.cc").write <<~CPP #include int main() { @@ -94,36 +86,40 @@ def install return 0; } CPP - system ENV.cxx, "-std=c++17", "test.cc", "-I#{include}", "-L#{lib}", - "-lfolly", "-o", "test" + system ENV.cxx, "-std=c++17", "test.cc", "-I#{include}", "-L#{lib}", "-lfolly", "-o", "test" system "./test" end end __END__ -diff --git a/CMake/folly-config.cmake.in b/CMake/folly-config.cmake.in -index 957ae5c56..fe811d7d9 100644 ---- a/CMake/folly-config.cmake.in -+++ b/CMake/folly-config.cmake.in -@@ -30,6 +30,7 @@ set(FOLLY_LIBRARIES Folly::folly) +diff --git a/folly/external/aor/CMakeLists.txt b/folly/external/aor/CMakeLists.txt +index e07e58745..1429f54e9 100644 +--- a/folly/external/aor/CMakeLists.txt ++++ b/folly/external/aor/CMakeLists.txt +@@ -20,6 +20,10 @@ + # Linux ELF directives (.size, etc.) that Darwin's assembler doesn't support + if(IS_AARCH64_ARCH) - # Find folly's dependencies - find_dependency(fmt) -+find_dependency(glog CONFIG) ++if(BUILD_SHARED_LIBS) ++ set(CMAKE_ASM_CREATE_SHARED_LIBRARY ${CMAKE_C_CREATE_SHARED_LIBRARY}) ++endif() ++ + folly_add_library( + NAME memcpy_aarch64 + SRCS +@@ -34,6 +38,7 @@ folly_add_library( - set(Boost_USE_STATIC_LIBS "@FOLLY_BOOST_LINK_STATIC@") - find_package(Boost 1.69.0 REQUIRED -diff --git a/CMake/folly-deps.cmake b/CMake/folly-deps.cmake -index 2ca5cfec7..a284a91fe 100644 ---- a/CMake/folly-deps.cmake -+++ b/CMake/folly-deps.cmake -@@ -62,7 +62,8 @@ if(LIBGFLAGS_FOUND) - set(FOLLY_LIBGFLAGS_INCLUDE ${LIBGFLAGS_INCLUDE_DIR}) - endif() + folly_add_library( + NAME memcpy_aarch64-use ++ EXCLUDE_FROM_MONOLITH + SRCS + memcpy-advsimd.S + memcpy-armv8.S +@@ -58,6 +63,7 @@ folly_add_library( --find_package(Glog MODULE) -+find_package(GLOG NAMES glog CONFIG REQUIRED) -+set(GLOG_LIBRARY glog::glog) - set(FOLLY_HAVE_LIBGLOG ${GLOG_FOUND}) - list(APPEND FOLLY_LINK_LIBRARIES ${GLOG_LIBRARY}) - list(APPEND FOLLY_INCLUDE_DIRECTORIES ${GLOG_INCLUDE_DIR}) + folly_add_library( + NAME memset_aarch64-use ++ EXCLUDE_FROM_MONOLITH + SRCS + memset-advsimd.S + memset-mops.S diff --git a/Formula/m/mvfst.rb b/Formula/m/mvfst.rb index 67110675854a..e66040dfb4cc 100644 --- a/Formula/m/mvfst.rb +++ b/Formula/m/mvfst.rb @@ -1,19 +1,18 @@ class Mvfst < Formula desc "QUIC transport protocol implementation" homepage "https://github.com/facebook/mvfst" - url "https://github.com/facebook/mvfst/archive/refs/tags/v2026.01.12.00.tar.gz" - sha256 "5c000c1ad7886a25d434224f85f9b5147acb9d0058497ec7666d843de129fd8a" + url "https://github.com/facebook/mvfst/archive/refs/tags/v2026.03.02.00.tar.gz" + sha256 "29ca852391e280a56c4a83cae76b9bad6e265bc1eba4ffa06e898fe3d9193e59" license "MIT" - revision 1 head "https://github.com/facebook/mvfst.git", branch: "main" bottle do - sha256 arm64_tahoe: "159d04be581cb156677b207a7dec652f8a2907a717032da813bf96480959a3a3" - sha256 arm64_sequoia: "83f83b5c896737b7eb66c931e5a2e1a47e4ff4f21448fb5e073541a4395bd7ce" - sha256 arm64_sonoma: "7b4e26f7a2eeb612c8441bdefc11706621ce071a6f84e83f01f787be409dc7bc" - sha256 cellar: :any, sonoma: "bce8dd599ca9711228dfc1c40eec27e4445e0576ab967b697b9a0a9027ab96ed" - sha256 cellar: :any_skip_relocation, arm64_linux: "85c72e27c73f615f8a3c06209f8b17f77c38078e0ea3b078b63a72c93a327207" - sha256 cellar: :any_skip_relocation, x86_64_linux: "e9e4c8e51eb2c7a65dba1ee7bf20702e394100cb85406e15a911645cd047f346" + sha256 cellar: :any, arm64_tahoe: "0dc83c508d399a09e1ebcf38ee8b5f107e0dad7ae897956a09a1b4a2910c7dfb" + sha256 cellar: :any, arm64_sequoia: "c05a61cbb9b178c5aff2f9fb83d5152455dc0ee3100e6e0ce84892fcf3722a7f" + sha256 cellar: :any, arm64_sonoma: "819d3d3da837cc917b963a1d4b9f92fcf610d62eea979110b2d396f5781c9e3e" + sha256 cellar: :any, sonoma: "b6f738bcf1b5262307a62396a04a6893f66b6d4e823ca5ceb1970dd97c7229e3" + sha256 cellar: :any_skip_relocation, arm64_linux: "523b9c8324576f69281b2d4e02914ebe06749ca3c2f21ca102a3c651b6fe5bc0" + sha256 cellar: :any_skip_relocation, x86_64_linux: "b48c5d12ac3e87302f30aebd252a70fd4eb82c0164f8d2c8d839613583a328a1" end depends_on "cmake" => [:build, :test] @@ -24,14 +23,11 @@ class Mvfst < Formula depends_on "folly" depends_on "gflags" depends_on "glog" - depends_on "libsodium" depends_on "openssl@3" def install shared_args = ["-DBUILD_SHARED_LIBS=ON", "-DCMAKE_INSTALL_RPATH=#{rpath}"] - linker_flags = %w[-undefined dynamic_lookup -dead_strip_dylibs] - linker_flags << "-ld_classic" if OS.mac? && MacOS.version == :ventura - shared_args << "-DCMAKE_SHARED_LINKER_FLAGS=-Wl,#{linker_flags.join(",")}" if OS.mac? + shared_args << "-DCMAKE_SHARED_LINKER_FLAGS=-Wl,-undefined,dynamic_lookup -Wl,-dead_strip_dylibs" if OS.mac? system "cmake", "-S", ".", "-B", "_build", "-DBUILD_TESTS=OFF", *shared_args, *std_cmake_args system "cmake", "--build", "_build" @@ -58,7 +54,7 @@ def install quic/common/test/TestUtils.cpp quic/common/test/TestPacketBuilders.cpp ) - target_link_libraries(echo ${mvfst_LIBRARIES} fizz::fizz_test_support GTest::gmock) + target_link_libraries(echo mvfst::mvfst fizz::fizz_test_support GTest::gmock) target_include_directories(echo PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) set_target_properties(echo PROPERTIES BUILD_RPATH "#{lib};#{HOMEBREW_PREFIX}/lib") CMAKE diff --git a/Formula/p/proxygen.rb b/Formula/p/proxygen.rb index d01e66812bf1..a3e40998d9f1 100644 --- a/Formula/p/proxygen.rb +++ b/Formula/p/proxygen.rb @@ -1,20 +1,18 @@ class Proxygen < Formula desc "Collection of C++ HTTP libraries" homepage "https://github.com/facebook/proxygen" - url "https://github.com/facebook/proxygen/releases/download/v2026.01.12.00/proxygen-v2026.01.12.00.tar.gz" - sha256 "66364e2119618a98f5c3ad62765b53d8bc2c34a9e51e0e861345aa7a5e87414f" + url "https://github.com/facebook/proxygen/releases/download/v2026.03.02.00/proxygen-v2026.03.02.00.tar.gz" + sha256 "9a6bfc54ad2adebd7dd2d1a9afc6c659601425a9abcbab0727fa22112b235106" license "BSD-3-Clause" - revision 1 head "https://github.com/facebook/proxygen.git", branch: "main" bottle do - rebuild 1 - sha256 arm64_tahoe: "c795501b553107f1119136850f2637d4a73766a1335cb027afe21753eeae8aca" - sha256 arm64_sequoia: "42756f17eadc76638812f064948122a4929fa439ebe3b2c88c1ee2857b7ee788" - sha256 arm64_sonoma: "d923df709994fa94e8af6ffc042690f3cfe872ccc1fe237a7fcd5c10f104dc3c" - sha256 cellar: :any, sonoma: "af5664751e313c72bbfa6c91d53386acb2769551239cd18428a8cdf739ba6c3a" - sha256 cellar: :any_skip_relocation, arm64_linux: "0fd50ecf74c1dfe45f735951779d4d5a7533ab58dbbe48a0b46dd21706c41e8f" - sha256 cellar: :any_skip_relocation, x86_64_linux: "d0e659f828f8cd2c4a1007dedd088e6d9cbc28eb1106f64ce7664be2b65d127a" + sha256 cellar: :any, arm64_tahoe: "7f323df59ac682cc6a7b558de220ce75837d424a8e3cc109a6764e2a045038bc" + sha256 cellar: :any, arm64_sequoia: "debfba1e2124b57808f06886cdf165be4b4cc0198a7463b7144dbf9cf06156ff" + sha256 cellar: :any, arm64_sonoma: "4694ca6c802537294c94a11f0d7c82552753188a5c5c9fed4f5aa955f5c17abe" + sha256 cellar: :any, sonoma: "1cab9eb2c970cf375ae6397ef9c635cf5f2c08452d63982de7ddb2f90d66a103" + sha256 cellar: :any_skip_relocation, arm64_linux: "12b39578f021d4606cade97a008bf3ec7c7edee645196ce1aa5a8b4ffbf9739c" + sha256 cellar: :any_skip_relocation, x86_64_linux: "235dbcc4827eb09c4eb19ce7b414fffec8964e541a80c63de18fd1f9d3287f56" end depends_on "cmake" => :build @@ -40,15 +38,10 @@ class Proxygen < Formula conflicts_with "hq", because: "both install `hq` binaries" - # Fix name of `liblibhttperf2`. - # https://github.com/facebook/proxygen/pull/574 - patch do - url "https://github.com/facebook/proxygen/commit/415ed3320f3d110f1d8c6846ca0582a4db7d225a.patch?full_index=1" - sha256 "4ea28c2f87732526afad0f2b2b66be330ad3d4fc18d0f20eb5e1242b557a6fcf" - end - def install - args = ["-DBUILD_SHARED_LIBS=ON", "-DCMAKE_INSTALL_RPATH=#{rpath}"] + # FIXME: shared libraries are currently broken. Unlikely to get much upstream + # support given `BUILD_SHARED_LIBS` says: "This is generally discouraged". + args = ["-DBUILD_SHARED_LIBS=OFF", "-DCMAKE_INSTALL_RPATH=#{rpath}"] if OS.mac? args += [ "-DCMAKE_EXE_LINKER_FLAGS=-Wl,-dead_strip_dylibs", diff --git a/Formula/w/wangle.rb b/Formula/w/wangle.rb index 96163f7f2db9..4edfa66bfca2 100644 --- a/Formula/w/wangle.rb +++ b/Formula/w/wangle.rb @@ -1,39 +1,34 @@ class Wangle < Formula desc "Modular, composable client/server abstractions framework" homepage "https://github.com/facebook/wangle" - url "https://github.com/facebook/wangle/archive/refs/tags/v2026.01.12.00.tar.gz" - sha256 "49b8e318a44e6bcdce37d79644ffd4efc7084621d08b6822cc357047819634ec" + url "https://github.com/facebook/wangle/archive/refs/tags/v2026.03.02.00.tar.gz" + sha256 "46ee6bdf3f2625e8ec1f7b26cad6faa3b4e58fc981148233fc433f9ac36f706b" license "Apache-2.0" - revision 1 head "https://github.com/facebook/wangle.git", branch: "main" bottle do - sha256 cellar: :any, arm64_tahoe: "8a172ae7dffffdca0d35b7c852325ffca9a3397d23bf7be1904c99a53591d216" - sha256 cellar: :any, arm64_sequoia: "db95b376628ec0d02351b5b1fe47e350c92e791c4a19ba602a90ce58b615bb84" - sha256 cellar: :any, arm64_sonoma: "fcfe0362677fa2be4eb73ba01a063881e45acf1c68e0b963d40c7a17553cf3da" - sha256 cellar: :any, sonoma: "e69a0a8b24a6f829469a9b4fc568d67a48b26519a4c529dd42d73000b0b7d213" - sha256 cellar: :any_skip_relocation, arm64_linux: "e39f25857a354e99e6f487022929142a611706a79919168aa132fb798723a945" - sha256 cellar: :any_skip_relocation, x86_64_linux: "96841635b471a9006bcc9b3f53b330507bd8c9dbe1e67b04490d545dd4bf7ac2" + sha256 cellar: :any, arm64_tahoe: "545e492952563b36387dfd66b8ed9806992e4c499a7a9540942aeecffd5bebb5" + sha256 cellar: :any, arm64_sequoia: "0734b04504823cc8ac546677d6fc5669b6dc239f4fd0098b751d12970b7fcb50" + sha256 cellar: :any, arm64_sonoma: "61f6602d428aa9bfe52731844050ac44a003820ad17e15c2402c67dc6a51b732" + sha256 cellar: :any, sonoma: "87b4f95ad1117fb8d08060c8acf62e39d5ddad123e86006cb0306387b3321144" + sha256 cellar: :any_skip_relocation, arm64_linux: "fc2d18fb848a4792691e637206c8da7ce821fdabf507fe4e97e3c4ffd75863ad" + sha256 cellar: :any_skip_relocation, x86_64_linux: "e7d6b998147d490f33dae5e4c1a6b82767acf1c505ccfb26f18f3a30f4ee35cc" end depends_on "cmake" => [:build, :test] + depends_on "libevent" => :build depends_on "double-conversion" depends_on "fizz" depends_on "fmt" depends_on "folly" depends_on "gflags" depends_on "glog" - depends_on "libevent" - depends_on "lz4" depends_on "openssl@3" - depends_on "zstd" - uses_from_macos "bzip2" def install args = ["-DBUILD_TESTS=OFF"] # Prevent indirect linkage with boost, libsodium, snappy and xz - linker_flags = %w[-dead_strip_dylibs] - args << "-DCMAKE_SHARED_LINKER_FLAGS=-Wl,#{linker_flags.join(",")}" if OS.mac? + args << "-DCMAKE_SHARED_LINKER_FLAGS=-Wl,-dead_strip_dylibs" if OS.mac? system "cmake", "-S", "wangle", "-B", "build/shared", "-DBUILD_SHARED_LIBS=ON", *args, *std_cmake_args system "cmake", "--build", "build/shared" diff --git a/Formula/w/watchman.rb b/Formula/w/watchman.rb index e02695cc427d..c781440f57d0 100644 --- a/Formula/w/watchman.rb +++ b/Formula/w/watchman.rb @@ -3,25 +3,27 @@ class Watchman < Formula desc "Watch files and take action when they change" homepage "https://github.com/facebook/watchman" - url "https://github.com/facebook/watchman/archive/refs/tags/v2026.01.12.00.tar.gz" - sha256 "5b6be267c159356a77511545b0608b0dcbd1dfa4c6277b0a5385fc221e85392a" + url "https://github.com/facebook/watchman/archive/refs/tags/v2026.03.02.00.tar.gz" + sha256 "c82c42560536d680e81ab25bdbb70a5595521d6086bfed3f39400ffcbd367e2b" license "MIT" - revision 1 head "https://github.com/facebook/watchman.git", branch: "main" bottle do - sha256 cellar: :any, arm64_tahoe: "e8736dd3b9092eb68a6ef2aa774064f6583ca17528617477f106f3e8020f8554" - sha256 cellar: :any, arm64_sequoia: "7059f5d9723128bfee6d0192d222f25591bbc7ce6b05c0b8fe7f3d7e5f75cf1b" - sha256 cellar: :any, arm64_sonoma: "5c2602095c42b8c91d06202f9183c603b4590161a4cca8620c393a4a998133ad" - sha256 cellar: :any, sonoma: "10e9e856ae379b3a8f3c647b7ae6940cac6318b6d6e83ea6cd8489da075c9e8a" - sha256 cellar: :any_skip_relocation, arm64_linux: "19f6f44cdb927b22fd84628c69291de2ec1d68880a7f170bd19ff22baf9efaf2" - sha256 cellar: :any_skip_relocation, x86_64_linux: "ac52e0bcde511e8d9667a9dc3078694b12be035e997458c0e3b74cc8ec751285" + sha256 cellar: :any, arm64_tahoe: "ec8a2dd52845100f9c8d15d9942294375cac95e83e43f38cc9c9ed47e0a90a49" + sha256 cellar: :any, arm64_sequoia: "c688d15023ab5f2fc4a599560daa606bf0bb98c84c4e18df0e2d1fe10c8844fc" + sha256 cellar: :any, arm64_sonoma: "e6f083191e6c6644565ccb4db48f0e58ad04b2446293ab2da17af31cc1c4523d" + sha256 cellar: :any, sonoma: "e31d19c0d1718ce4ee733bc4ad6b3edf3ced67d99d7c85bbd7d5128019536f44" + sha256 cellar: :any_skip_relocation, arm64_linux: "1f62db5fc5843644804d57ba358f6aa995e5e72deacfd5f10c52332c73285d99" + sha256 cellar: :any_skip_relocation, x86_64_linux: "9824591d370c4bdbedc3b2982045b37a0a92a964b05b4c329b9eaee36140a0b6" end depends_on "cmake" => :build depends_on "cpptoml" => :build + depends_on "gflags" => :build depends_on "googletest" => :build + depends_on "libevent" => :build depends_on "mvfst" => :build + depends_on "openssl@3" => :build depends_on "pkgconf" => :build depends_on "python-setuptools" => :build depends_on "rust" => :build @@ -30,22 +32,17 @@ class Watchman < Formula depends_on "fbthrift" depends_on "fmt" depends_on "folly" - depends_on "gflags" depends_on "glog" - depends_on "libevent" - depends_on "openssl@3" depends_on "pcre2" depends_on "python@3.14" on_linux do depends_on "boost" depends_on "libunwind" + depends_on "openssl@3" end def install - # Workaround to build with glog >= 0.7 until fixed upstream - inreplace "CMakeLists.txt", "find_package(Glog REQUIRED)", "find_package(glog CONFIG REQUIRED)" - # NOTE: Setting `BUILD_SHARED_LIBS=ON` will generate DSOs for Eden libraries. # These libraries are not part of any install targets and have the wrong # RPATHs configured, so will need to be installed and relocated manually