Skip to content

Commit d198faf

Browse files
r-barnesmeta-codesync[bot]
authored andcommitted
Bump fbcode_builder getdeps manifest pins past CMake-4 floor
Summary: Bump seven `fbcode_builder/manifests/*` pins to current upstream releases. All pinned versions were 5–7 years old and declared `cmake_minimum_required(VERSION <3.5)`, which CMake 4.0 (March 2025) hard-removed compatibility for. Downstream OSS consumers (folly, fbthrift, eden, watchman, mvfst, wangle, fizz, rebalancer) had been working around this by injecting `-DCMAKE_POLICY_VERSION_MINIMUM=3.5` into every per-dep configure line. That workaround silently flips ~10 CMake policies between 2.8 and 3.5 to NEW behavior on every build — exactly the policy churn `cmake_minimum_required` was designed to make explicit and reviewable. The clean fix is to bump the manifest pins; all picked versions raise their CMake floor above 3.5. Bumps: - double-conversion v3.1.4 → pinned `[git]` rev ddfd18c5. Switched from `[download]` to `[git]` because the only released version with a CMake floor above 3.5 is v3.4.0, which jumped the floor all the way to 3.29 — above the CMake 3.20 that getdeps ships. ddfd18c5 is a master commit predating the 3.29 bump while still satisfying the CMake 4 floor, so consumer workflows don't need `CMAKE_POLICY_VERSION_MINIMUM=3.5` for double-conversion either. - gflags v2.2.2 → v2.3.0 (cmake floor 3.10) - glog v0.5.0 → v0.6.0 pinned `[git]` rev b33e3bad (cmake floor 3.16). Switched from `[download]` to `[git]` because v0.7.1 raises cmake_minimum_required to 3.22, above the CMake 3.20.4 that getdeps ships on darwin; v0.6.0 sets the floor at 3.16 which is within range. - libevent release-2.1.12-stable → pinned `[git]` rev 48296514 (cmake floor 3.15). Switched from `[download]` to `[git]` because the most recent tagged release is the one we're already on; release-2.2.x is still alpha. Pinning a specific master commit (not the branch) keeps the build deterministic. - snappy 1.1.7 → 1.2.2 (cmake floor 3.10) - xxhash v0.8.2 → v0.8.3 (cmake floor 3.10) - zstd v1.5.5 → v1.5.7 (cmake floor 3.10) Also drops the `CMAKE_POLICY_VERSION_MINIMUM=3.5` workaround from `fbcode/algopt/rebalancer/oss_root/tools/wheels/before_all_{linux,macos}.sh` — the only fbsource-internal carriers of the workaround. The corresponding hand-edits in OSS folly/fbthrift/eden/watchman/mvfst/wangle/fizz workflows live in their respective github mirrors, not in fbsource, and need follow-up PRs there once these bumps propagate via shipit. Reviewed By: xiatingouyang Differential Revision: D104478389 fbshipit-source-id: e16204d438c4e6ec868574594a3cf29bc96b217d
1 parent cf542fe commit d198faf

7 files changed

Lines changed: 33 additions & 29 deletions

File tree

build/fbcode_builder/manifests/double-conversion

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
11
[manifest]
22
name = double-conversion
33

4-
[download]
5-
url = https://github.com/google/double-conversion/archive/v3.1.4.tar.gz
6-
sha256 = 95004b65e43fefc6100f337a25da27bb99b9ef8d4071a36a33b5e83eb1f82021
7-
84
[homebrew]
95
double-conversion
106

@@ -18,6 +14,13 @@ double-conversion-devel
1814
[pps]
1915
double-conversion
2016

17+
# Pinned to a specific master commit rather than v3.4.0 because v3.4.0 raised
18+
# cmake_minimum_required to 3.29, above the CMake 3.20 that getdeps ships.
19+
# This commit predates that bump while still being above the CMake 4 floor of
20+
# 3.5, so consumer workflows don't need CMAKE_POLICY_VERSION_MINIMUM=3.5.
21+
[git]
22+
repo_url = https://github.com/google/double-conversion.git
23+
rev = ddfd18c58ecc32fc74afc1083bb8774240b54efb
24+
2125
[build]
2226
builder = cmake
23-
subdir = double-conversion-3.1.4

build/fbcode_builder/manifests/gflags

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
name = gflags
33

44
[download]
5-
url = https://github.com/gflags/gflags/archive/v2.2.2.tar.gz
6-
sha256 = 34af2f15cf7367513b352bdcd2493ab14ce43692d2dcd9dfc499492966c64dcf
5+
url = https://github.com/gflags/gflags/archive/refs/tags/v2.3.0.tar.gz
6+
sha256 = f619a51371f41c0ad6837b2a98af9d4643b3371015d873887f7e8d3237320b2f
77

88
[build]
99
builder = cmake
10-
subdir = gflags-2.2.2
10+
subdir = gflags-2.3.0
1111

1212
[cmake.defines]
1313
BUILD_SHARED_LIBS = ON

build/fbcode_builder/manifests/glog

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
[manifest]
22
name = glog
33

4-
[download]
5-
url = https://github.com/google/glog/archive/v0.5.0.tar.gz
6-
sha256 = eede71f28371bf39aa69b45de23b329d37214016e2055269b3b5e7cfd40b59f5
4+
# Pinned to v0.6.0 rather than v0.7.1 because v0.7.1 raises
5+
# cmake_minimum_required to 3.22, above the CMake 3.20.4 that getdeps ships.
6+
# v0.6.0 sets cmake_minimum_required(VERSION 3.16), within getdeps' range.
7+
[git]
8+
repo_url = https://github.com/google/glog.git
9+
rev = b33e3bad4c46c8a6345525fd822af355e5ef9446
710

811
[build]
912
builder = cmake
10-
subdir = glog-0.5.0
1113

1214
[dependencies]
1315
gflags

build/fbcode_builder/manifests/libevent

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,16 @@ libevent-devel
1313
[pps]
1414
libevent
1515

16-
# Note that the CMakeLists.txt file is present only in
17-
# git repo and not in the release tarball, so take care
18-
# to use the github generated source tarball rather than
19-
# the explicitly uploaded source tarball
20-
[download]
21-
url = https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz
22-
sha256 = 92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb
16+
# Pinned to a specific master commit rather than release-2.1.12-stable so that
17+
# cmake_minimum_required is high enough for CMake 4 without needing
18+
# CMAKE_POLICY_VERSION_MINIMUM=3.5 in consumer workflows. release-2.2.x is still
19+
# alpha, so a pinned commit is the safer middle ground.
20+
[git]
21+
repo_url = https://github.com/libevent/libevent.git
22+
rev = 4d9b432eef84eb0f9555dfa9249c20ecc823af0d
2323

2424
[build]
2525
builder = cmake
26-
subdir = libevent-2.1.12-stable
2726

2827
[cmake.defines]
2928
EVENT__DISABLE_TESTS = ON

build/fbcode_builder/manifests/snappy

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,12 @@ snappy-devel
1414
snappy
1515

1616
[download]
17-
url = https://github.com/google/snappy/archive/1.1.7.tar.gz
18-
sha256 = 3dfa02e873ff51a11ee02b9ca391807f0c8ea0529a4924afa645fbf97163f9d4
17+
url = https://github.com/google/snappy/archive/27ab5f7f518430a021239bc26a5b2fd64affbc7b.tar.gz
18+
sha256 = d0ce758440920c0e636579da02092296a64aed5a8296e1175fdf1783a8440082
1919

2020
[build]
2121
builder = cmake
22-
subdir = snappy-1.1.7
22+
subdir = snappy-27ab5f7f518430a021239bc26a5b2fd64affbc7b
2323

2424
[cmake.defines]
2525
SNAPPY_BUILD_TESTS = OFF

build/fbcode_builder/manifests/xxhash

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
name = xxhash
33

44
[download]
5-
url = https://github.com/Cyan4973/xxHash/archive/refs/tags/v0.8.2.tar.gz
6-
sha256 = baee0c6afd4f03165de7a4e67988d16f0f2b257b51d0e3cb91909302a26a79c4
5+
url = https://github.com/Cyan4973/xxHash/archive/refs/tags/v0.8.3.tar.gz
6+
sha256 = aae608dfe8213dfd05d909a57718ef82f30722c392344583d3f39050c7f29a80
77

88
[rpms]
99
xxhash-devel
@@ -17,7 +17,7 @@ xxhash
1717

1818
[build]
1919
builder = cmake
20-
subdir = xxHash-0.8.2/cmake_unofficial
20+
subdir = xxHash-0.8.3/cmake_unofficial
2121

2222
[cmake.defines]
2323
CMAKE_POSITION_INDEPENDENT_CODE = ON

build/fbcode_builder/manifests/zstd

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ libzstd
1818
zstd
1919

2020
[download]
21-
url = https://github.com/facebook/zstd/releases/download/v1.5.5/zstd-1.5.5.tar.gz
22-
sha256 = 9c4396cc829cfae319a6e2615202e82aad41372073482fce286fac78646d3ee4
21+
url = https://github.com/facebook/zstd/releases/download/v1.5.7/zstd-1.5.7.tar.gz
22+
sha256 = eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3
2323

2424
[build]
2525
builder = cmake
26-
subdir = zstd-1.5.5/build/cmake
26+
subdir = zstd-1.5.7/build/cmake
2727

2828
# The zstd cmake build explicitly sets the install name
2929
# for the shared library in such a way that cmake discards

0 commit comments

Comments
 (0)