From 4f34c537f8d9bccf31f7bad1c57637c0d461f17b Mon Sep 17 00:00:00 2001 From: Pranav Bhandari Date: Fri, 27 Dec 2024 13:48:31 -0800 Subject: [PATCH] Migrate OSS build from custom to getdeps Summary: X-link: https://github.com/facebookincubator/zstrong/pull/1098 We have been manually syncing our builds when there is a change in builds of our dependencies (folly, thrift). This has been one of the major source of work in OSS maintenance. Migrating to getdeps will automatically sync the dependencies which means we only have to manage our own builds. NOTE: There is a dependency of getdeps on zlib which requires us to first run sudo dnf install -y zlib-devel before we successfully run getdeps. I don't think this should affect the OSS build as it is a getdeps dependency. Reviewed By: haowu14 Differential Revision: D65844211 fbshipit-source-id: 8e89e670cdec4a21ca7aba48ae58b5b72ddbf832 --- build/fbcode_builder/manifests/cachelib | 38 ++++++++++++++++++++++++ build/fbcode_builder/manifests/numa | 13 ++++++++ build/fbcode_builder/manifests/sparsemap | 10 +++++++ 3 files changed, 61 insertions(+) create mode 100644 build/fbcode_builder/manifests/cachelib create mode 100644 build/fbcode_builder/manifests/numa create mode 100644 build/fbcode_builder/manifests/sparsemap diff --git a/build/fbcode_builder/manifests/cachelib b/build/fbcode_builder/manifests/cachelib new file mode 100644 index 000000000..4f0c6dbf2 --- /dev/null +++ b/build/fbcode_builder/manifests/cachelib @@ -0,0 +1,38 @@ +[manifest] +name = cachelib +fbsource_path = fbcode/cachelib +shipit_project = cachelib +shipit_fbcode_builder = true + +[git] +repo_url = https://github.com/facebook/cachelib.git + +[build] +builder = cmake +subdir = cachelib +job_weight_mib = 2048 + +[dependencies] +zlib +fizz +fmt +folly +fbthrift +googletest +sparsemap +wangle +zstd +mvfst +numa +# cachelib also depends on openssl but since the latter requires a platform- +# specific configuration we rely on the folly manifest to provide this +# dependency to avoid duplication. + +[shipit.pathmap] +fbcode/cachelib = cachelib +fbcode/cachelib/public_tld = . + +[shipit.strip] +^fbcode/cachelib/examples(/|$) +^fbcode/cachelib/facebook(/|$) +^fbcode/cachelib/public_tld/website/docs/facebook(/|$) diff --git a/build/fbcode_builder/manifests/numa b/build/fbcode_builder/manifests/numa new file mode 100644 index 000000000..d57b8afab --- /dev/null +++ b/build/fbcode_builder/manifests/numa @@ -0,0 +1,13 @@ +[manifest] +name = numa + +[download] +url = https://github.com/numactl/numactl/releases/download/v2.0.19/numactl-2.0.19.tar.gz +sha256 = f2672a0381cb59196e9c246bf8bcc43d5568bc457700a697f1a1df762b9af884 + +[build] +builder = autoconf +subdir = numactl-2.0.19 + +[rpms.distro=centos_stream] +numactl-devel diff --git a/build/fbcode_builder/manifests/sparsemap b/build/fbcode_builder/manifests/sparsemap new file mode 100644 index 000000000..330b6439f --- /dev/null +++ b/build/fbcode_builder/manifests/sparsemap @@ -0,0 +1,10 @@ +[manifest] +name = sparsemap + +[download] +url = https://github.com/Tessil/sparse-map/archive/refs/tags/v0.6.2.tar.gz +sha256 = 7020c21e8752e59d72e37456cd80000e18671c803890a3e55ae36b295eba99f6 + +[build] +builder = cmake +subdir = sparse-map-0.6.2/