Skip to content

Commit a5ebf6c

Browse files
committed
[fix] decoupling librocksdb.a
1 parent b11e087 commit a5ebf6c

2 files changed

Lines changed: 36 additions & 24 deletions

File tree

deps/Makefile

Lines changed: 31 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -161,32 +161,39 @@ ROCKSDB_BUILD_FOLLY_FLAGS=ROCKSDB_DISABLE_BZIP=1 ROCKSDB_DISABLE_LZ4=1 ROCKSDB_D
161161
ROCKSDB_BUILD_FLAGS=USE_COROUTINES=1 USE_FOLLY=1 $(ROCKSDB_BUILD_FOLLY_FLAGS)
162162

163163
./rocksdb/_build_folly/folly/lib/libfolly.a:
164-
if [ ! -f rocksdb/_build_folly/installed/folly/lib/libfolly.a ]; then \
164+
@if [ ! -f rocksdb/_build_folly/installed/folly/lib/libfolly.a ]; then \
165+
echo "Building folly for the first time..."; \
165166
cd rocksdb && ${ROCKSDB_BUILD_FOLLY_FLAGS} ${MAKE} checkout_folly && ${ROCKSDB_BUILD_FOLLY_FLAGS} ${MAKE} build_folly; \
166167
fi
167-
rm -rf ./rocksdb/_build_folly/libs
168-
mkdir -p ./rocksdb/_build_folly/libs
169-
FBUILD_PATH=`ls -d ./rocksdb/_build_folly*`; \
170-
BOOST_PATH=`ls -d $${FBUILD_PATH}/installed/boost*`; \
171-
DBL_CONV_PATH=`ls -d $${FBUILD_PATH}/installed/double-conversion*`; \
172-
FMT_PATH=`ls -d $${FBUILD_PATH}/installed/fmt*`; \
173-
GLOG_PATH=`ls -d $${FBUILD_PATH}/installed/glog*`; \
174-
GFLAGS_PATH=`ls -d $${FBUILD_PATH}/installed/gflags*`; \
175-
LIBEVENT_PATH=`ls -d $${FBUILD_PATH}/installed/libevent*`; \
176-
GLOG_LIB_PATH=`ls -d $${GLOG_PATH}/lib*`; \
177-
FMT_LIB_PATH=`ls -d $${FMT_PATH}/lib*`; \
178-
cp -r $${BOOST_PATH} ./rocksdb/_build_folly/libs/boost; \
179-
cp -r $${DBL_CONV_PATH} ./rocksdb/_build_folly/libs/double-conversion; \
180-
mkdir -p ./rocksdb/_build_folly/libs/fmt; \
181-
cp -r $${FMT_PATH}/include ./rocksdb/_build_folly/libs/fmt/include; \
182-
cp -r $${FMT_LIB_PATH} ./rocksdb/_build_folly/libs/fmt/lib; \
183-
mkdir -p ./rocksdb/_build_folly/libs/glog; \
184-
cp -r $${GLOG_PATH}/include ./rocksdb/_build_folly/libs/glog/include; \
185-
cp -r $${GLOG_LIB_PATH} ./rocksdb/_build_folly/libs/glog/lib; \
186-
mkdir -p ./rocksdb/_build_folly/libs/libiberty; \
187-
cp -r $${GFLAGS_PATH} ./rocksdb/_build_folly/libs/gflags; \
188-
cp -r $${LIBEVENT_PATH} ./rocksdb/_build_folly/libs/libevent; \
189-
cp -r $${FBUILD_PATH}/installed/folly ./rocksdb/_build_folly/libs/folly
168+
@if [ ! -f ./rocksdb/_build_folly/libs/folly/lib/libfolly.a ]; then \
169+
echo "Copying libraries from installed to libs directory..."; \
170+
rm -rf ./rocksdb/_build_folly/libs; \
171+
mkdir -p ./rocksdb/_build_folly/libs; \
172+
FBUILD_PATH=`ls -d ./rocksdb/_build_folly*`; \
173+
BOOST_PATH=`ls -d $${FBUILD_PATH}/installed/boost*`; \
174+
DBL_CONV_PATH=`ls -d $${FBUILD_PATH}/installed/double-conversion*`; \
175+
FMT_PATH=`ls -d $${FBUILD_PATH}/installed/fmt*`; \
176+
GLOG_PATH=`ls -d $${FBUILD_PATH}/installed/glog*`; \
177+
GFLAGS_PATH=`ls -d $${FBUILD_PATH}/installed/gflags*`; \
178+
LIBEVENT_PATH=`ls -d $${FBUILD_PATH}/installed/libevent*`; \
179+
GLOG_LIB_PATH=`ls -d $${GLOG_PATH}/lib*`; \
180+
FMT_LIB_PATH=`ls -d $${FMT_PATH}/lib*`; \
181+
cp -r $${BOOST_PATH} ./rocksdb/_build_folly/libs/boost; \
182+
cp -r $${DBL_CONV_PATH} ./rocksdb/_build_folly/libs/double-conversion; \
183+
mkdir -p ./rocksdb/_build_folly/libs/fmt; \
184+
cp -r $${FMT_PATH}/include ./rocksdb/_build_folly/libs/fmt/include; \
185+
cp -r $${FMT_LIB_PATH} ./rocksdb/_build_folly/libs/fmt/lib; \
186+
mkdir -p ./rocksdb/_build_folly/libs/glog; \
187+
cp -r $${GLOG_PATH}/include ./rocksdb/_build_folly/libs/glog/include; \
188+
cp -r $${GLOG_LIB_PATH} ./rocksdb/_build_folly/libs/glog/lib; \
189+
mkdir -p ./rocksdb/_build_folly/libs/libiberty; \
190+
cp -r $${GFLAGS_PATH} ./rocksdb/_build_folly/libs/gflags; \
191+
cp -r $${LIBEVENT_PATH} ./rocksdb/_build_folly/libs/libevent; \
192+
cp -r $${FBUILD_PATH}/installed/folly ./rocksdb/_build_folly/libs/folly; \
193+
echo "Libraries copied successfully."; \
194+
else \
195+
echo "libs directory already exists, skipping copy to preserve timestamps."; \
196+
fi
190197

191198

192199

src/Makefile

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -468,8 +468,13 @@ persist-settings:
468468
# They were originally designed to trigger rebuilds when CFLAGS/LDFLAGS changed
469469

470470
# Build link dependencies separately
471+
ifdef SWAP
472+
.make-link-prerequisites: .make-compile-prerequisites ../deps/rocksdb/librocksdb.a
473+
@touch $@
474+
else
471475
.make-link-prerequisites: .make-compile-prerequisites
472476
@touch $@
477+
endif
473478

474479
# Build rocksdb independently to support caching
475480
../deps/rocksdb/librocksdb.a:

0 commit comments

Comments
 (0)