mirror of
https://github.com/facebook/rocksdb.git
synced 2026-10-23 08:09:02 +03:00
Update folly hash (#15375)
Summary: has been neglected for a few months, finally taking care of it. Pull Request resolved: https://github.com/facebook/rocksdb/pull/15375 Test Plan: local folly build (from internal wiki instructions) to verify the fixes from claude, CI Reviewed By: archang19 Differential Revision: D124436669 Pulled By: pdillinger fbshipit-source-id: 0a0e3f6857cc8ba20941281b9dfd618a6997b86f
This commit is contained in:
committed by
meta-codesync[bot]
parent
1334e4dd52
commit
76d7c29389
@@ -650,6 +650,9 @@ if(USE_FOLLY)
|
||||
exec_program(ls ARGS -d ${FOLLY_INST_PATH}/../glog* OUTPUT_VARIABLE
|
||||
GLOG_INST_PATH)
|
||||
set(Boost_DIR ${BOOST_INST_PATH}/lib/cmake/Boost-1.83.0)
|
||||
# Boost's per-library CMake configs find their dependencies (e.g.
|
||||
# boost_assert) only through the package search path.
|
||||
set(CMAKE_PREFIX_PATH ${BOOST_INST_PATH} ${CMAKE_PREFIX_PATH})
|
||||
if(EXISTS ${FMT_INST_PATH}/lib64)
|
||||
set(fmt_DIR ${FMT_INST_PATH}/lib64/cmake/fmt)
|
||||
else()
|
||||
@@ -696,7 +699,13 @@ if(USE_FOLLY)
|
||||
exec_program(sed ARGS -i 's/gflags_shared//g'
|
||||
${FOLLY_INST_PATH}/lib/cmake/folly/folly-targets.cmake)
|
||||
|
||||
# folly-config.cmake only checks for gflags under a target name that this
|
||||
# install doesn't define, then falls back to our Findgflags.cmake, which
|
||||
# mistakes the gflags_static target name for a library path. gflags is
|
||||
# resolved below instead.
|
||||
set(CMAKE_DISABLE_FIND_PACKAGE_gflags TRUE)
|
||||
include(${FOLLY_INST_PATH}/lib/cmake/folly/folly-config.cmake)
|
||||
unset(CMAKE_DISABLE_FIND_PACKAGE_gflags)
|
||||
|
||||
# Fix gflags library name for debug builds. The getdeps gflags shared
|
||||
# library is versioned (e.g. libgflags_debug.so.2.3), so resolve the
|
||||
|
||||
18
folly.mk
18
folly.mk
@@ -29,8 +29,10 @@ ifneq ($(strip $(FOLLY_PATH)),)
|
||||
XZ_PATH = $(shell (ls -d $(FOLLY_PATH)/../xz*))
|
||||
LIBSODIUM_PATH = $(shell (ls -d $(FOLLY_PATH)/../libsodium*))
|
||||
FMT_PATH = $(shell (ls -d $(FOLLY_PATH)/../fmt*))
|
||||
LIBUNWIND_PATH = $(shell (ls -d $(FOLLY_PATH)/../libunwind*))
|
||||
|
||||
# For some reason, some libraries are under either lib or lib64
|
||||
BOOST_LIB_PATH = $(shell (ls -d $(BOOST_PATH)/lib*))
|
||||
GLOG_LIB_PATH = $(shell (ls -d $(GLOG_PATH)/lib*))
|
||||
FMT_LIB_PATH = $(shell (ls -d $(FMT_PATH)/lib*))
|
||||
LIBEVENT_LIB_PATH = $(shell (ls -d $(LIBEVENT_PATH)/lib*))
|
||||
@@ -47,7 +49,7 @@ ifneq ($(strip $(FOLLY_PATH)),)
|
||||
# Add -ldl at the end as gcc resolves a symbol in a library by searching only in libraries specified later
|
||||
# in the command line
|
||||
|
||||
PLATFORM_LDFLAGS += $(FOLLY_PATH)/lib/libfolly.a $(BOOST_PATH)/lib/libboost_context.a $(BOOST_PATH)/lib/libboost_filesystem.a $(BOOST_PATH)/lib/libboost_atomic.a $(BOOST_PATH)/lib/libboost_program_options.a $(BOOST_PATH)/lib/libboost_regex.a $(BOOST_PATH)/lib/libboost_system.a $(BOOST_PATH)/lib/libboost_thread.a $(LIBEVENT_LIB_PATH)/libevent.a $(LIBSODIUM_PATH)/lib/libsodium.a -ldl
|
||||
PLATFORM_LDFLAGS += $(FOLLY_PATH)/lib/libfolly.a $(BOOST_LIB_PATH)/libboost_context.a $(BOOST_LIB_PATH)/libboost_filesystem.a $(BOOST_LIB_PATH)/libboost_atomic.a $(BOOST_LIB_PATH)/libboost_program_options.a $(BOOST_LIB_PATH)/libboost_thread.a $(LIBEVENT_LIB_PATH)/libevent.a $(LIBSODIUM_PATH)/lib/libsodium.a $(LIBUNWIND_PATH)/lib/libunwind.a -ldl
|
||||
ifneq ($(DEBUG_LEVEL),0)
|
||||
PLATFORM_LDFLAGS += $(FMT_LIB_PATH)/libfmtd.a $(GLOG_LIB_PATH)/libglogd.so $(GFLAGS_PATH)/lib/libgflags_debug.so.2.3
|
||||
else
|
||||
@@ -98,7 +100,7 @@ endif # FMT_SOURCE_PATH
|
||||
PLATFORM_LDFLAGS += -lglog
|
||||
endif
|
||||
|
||||
FOLLY_COMMIT_HASH = 2a68075b77d958854d895e78fe6c41940dd49f3c
|
||||
FOLLY_COMMIT_HASH = 7ba92f0e29d24b453cee8ab27d117b1c7cc19589
|
||||
FOLLY_GETDEPS_CACHE_DIR = /tmp/rocksdb-getdeps-cache
|
||||
|
||||
define restore_folly_getdeps_downloads
|
||||
@@ -152,6 +154,16 @@ checkout_folly:
|
||||
done
|
||||
@# Update cache with any new downloads
|
||||
$(cache_folly_getdeps_downloads)
|
||||
@# The boost source archive has a modular layout (headers under
|
||||
@# libs/*/include), so assemble the merged boost/ header tree that
|
||||
@# USE_FOLLY_LITE builds put on the include path. This avoids ~150
|
||||
@# -isystem flags (one per boost library) on every folly-lite compile.
|
||||
cd third-party/folly && \
|
||||
BOOST_SRC=`ls -d $$($(PYTHON) build/fbcode_builder/getdeps.py show-source-dir boost)/boost*/` && \
|
||||
mkdir -p "$${BOOST_SRC}boost" && \
|
||||
for inc in "$${BOOST_SRC}"libs/*/include "$${BOOST_SRC}"libs/numeric/*/include; do \
|
||||
cp -R "$$inc/boost/." "$${BOOST_SRC}boost/" || exit 1; \
|
||||
done
|
||||
|
||||
CXX_M_FLAGS = $(filter -m%, $(CXXFLAGS))
|
||||
|
||||
@@ -174,6 +186,8 @@ build_folly:
|
||||
$(restore_folly_getdeps_downloads)
|
||||
cd third-party/folly && \
|
||||
CXXFLAGS=" $(CXX_M_FLAGS) -DHAVE_CXX11_ATOMIC " GETDEPS_USE_WGET=1 $(PYTHON) build/fbcode_builder/getdeps.py build $(FOLLY_BUILD_FLAGS)
|
||||
@# Update cache with archives downloaded during the build
|
||||
$(cache_folly_getdeps_downloads)
|
||||
@# In the folly build, glog and gflags are only built as dynamic libraries,
|
||||
@# not static. This patchelf command is needed to reliably have the glog
|
||||
@# library find its dependency gflags, because apparently the rpath of the
|
||||
|
||||
Reference in New Issue
Block a user