Update to 6.10.1

- Convert REINPLACE_CMD to patch files

Changes:	https://github.com/facebook/rocksdb/releases
This commit is contained in:
Sunpoet Po-Chuan Hsieh
2020-05-31 18:16:39 +00:00
parent b1595fd288
commit df8bfb36bc
6 changed files with 169 additions and 23 deletions
+7 -14
View File
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= rocksdb
PORTVERSION= 6.8.1
PORTVERSION= 6.10.1
DISTVERSIONPREFIX= v
CATEGORIES= databases
@@ -26,7 +26,8 @@ LIB_DEPENDS= libgflags.so:devel/gflags \
OPTIONS_DEFINE= DEBUG LZ4 ZSTD
OPTIONS_DEFAULT=LZ4
USES= compiler:c++11-lib gmake localbase:ldflags shebangfix
USES= compiler:c++11-lib gmake localbase:ldflags perl5
USE_PERL5= build
ALL_TARGET= shared_lib static_lib all
CFLAGS+= -DOS_FREEBSD
@@ -39,14 +40,12 @@ USE_CXXSTD= c++11
USE_LDCONFIG= yes
TEST_TARGET= check
PLIST_SUB= PORTVERSION=${PORTVERSION} SHLIB_MAJOR=${PORTVERSION:R:R} SHLIB_MINOR=${PORTVERSION:R:E}
PLIST_SUB= PORTVERSION=${PORTVERSION} SHLIB_VER=${PORTVERSION:R}
PORTDATA= make_config.mk
GH_ACCOUNT= facebook
USE_GITHUB= yes
SHEBANG_FILES= */*.sh
BENCHMARKS= cache_bench db_bench memtablerep_bench persistent_cache_bench range_del_aggregator_bench table_reader_bench
TOOLS= blob_dump db_repl_stress db_sanity_test db_stress ldb rocksdb_dump rocksdb_undump sst_dump trace_analyzer write_stress
@@ -59,19 +58,19 @@ ZSTD_MAKE_ENV_OFF= ROCKSDB_DISABLE_ZSTD=yes
.if !defined(LITE)
CONFLICTS_INSTALL= rocksdb-lite
PLIST_SUB+= LITE=""
PLIST_SUB+= LITE="@comment "
.else
PKGNAMESUFFIX= -lite
CONFLICTS_INSTALL= rocksdb
CFLAGS+= -DROCKSDB_LITE=1
MAKE_ENV+= LIBNAME=librocksdb${PKGNAMESUFFIX} DISABLE_JEMALLOC=1
PLIST_SUB+= LITE=${PKGNAMESUFFIX}
PLIST_SUB+= LITE=""
.endif
.include <bsd.port.pre.mk>
.if ${CHOSEN_COMPILER_TYPE} == clang
CXXFLAGS+= -Wno-inconsistent-missing-override
CXXFLAGS+= -Wno-inconsistent-missing-override -Wno-unused-variable
# Clang 8 detects shadow enums and stops the build. This workaround adds -Wno-error=shadow to bypass it.
.if ${COMPILER_VERSION} >= 80
CXXFLAGS+= -Wno-error=shadow
@@ -79,14 +78,8 @@ CXXFLAGS+= -Wno-error=shadow
.endif
post-patch:
@${REINPLACE_CMD} -e '/^dummy :=/d; /^all: / s| $$(TESTS)||' ${WRKSRC}/Makefile
@${REINPLACE_CMD} -e 's| -fno-builtin-memcmp||; s| -ltcmalloc||' ${WRKSRC}/build_tools/build_detect_platform
.if ${ARCH} != amd64 && ${ARCH} != i386
@${REINPLACE_CMD} -e 's| -march=native||' ${WRKSRC}/build_tools/build_detect_platform
.endif
@${REINPLACE_CMD} -e 's|#include "gtest/gtest.h"|#include "gtest.h"|' ${WRKSRC}/third-party/gtest-1.8.1/fused-src/gtest/gtest-all.cc
.if defined(WITHOUT_PROFILE)
@${REINPLACE_CMD} -e '/pg = / s| -pg||' ${WRKSRC}/Makefile
.endif
# Disable SSE4.2 on i386 architecture to fix i386 builds on FreeBSD package building cluster
.if ${ARCH} == i386
+3 -3
View File
@@ -1,3 +1,3 @@
TIMESTAMP = 1588013480
SHA256 (facebook-rocksdb-v6.8.1_GH0.tar.gz) = ca192a06ed3bcb9f09060add7e9d0daee1ae7a8705a3d5ecbe41867c5e2796a2
SIZE (facebook-rocksdb-v6.8.1_GH0.tar.gz) = 6037007
TIMESTAMP = 1590926977
SHA256 (facebook-rocksdb-v6.10.1_GH0.tar.gz) = d573d2f15cdda883714f7e0bc87b814a8d4a53a82edde558f08f940e905541ee
SIZE (facebook-rocksdb-v6.10.1_GH0.tar.gz) = 6159487
+34
View File
@@ -0,0 +1,34 @@
--- Makefile.orig 2020-05-27 23:38:10 UTC
+++ Makefile
@@ -207,14 +207,14 @@ AM_LINK = $(AM_V_CCLD)$(CXX) $^ $(EXEC_LDFLAGS) -o $@
# Detect what platform we're building on.
# Export some common variables that might have been passed as Make variables
# instead of environment variables.
-dummy := $(shell (export ROCKSDB_ROOT="$(CURDIR)"; \
- export COMPILE_WITH_ASAN="$(COMPILE_WITH_ASAN)"; \
- export COMPILE_WITH_TSAN="$(COMPILE_WITH_TSAN)"; \
- export COMPILE_WITH_UBSAN="$(COMPILE_WITH_UBSAN)"; \
- export PORTABLE="$(PORTABLE)"; \
- export ROCKSDB_NO_FBCODE="$(ROCKSDB_NO_FBCODE)"; \
- export USE_CLANG="$(USE_CLANG)"; \
- "$(CURDIR)/build_tools/build_detect_platform" "$(CURDIR)/make_config.mk"))
+#dummy := $(shell (export ROCKSDB_ROOT="$(CURDIR)"; \
+# export COMPILE_WITH_ASAN="$(COMPILE_WITH_ASAN)"; \
+# export COMPILE_WITH_TSAN="$(COMPILE_WITH_TSAN)"; \
+# export COMPILE_WITH_UBSAN="$(COMPILE_WITH_UBSAN)"; \
+# export PORTABLE="$(PORTABLE)"; \
+# export ROCKSDB_NO_FBCODE="$(ROCKSDB_NO_FBCODE)"; \
+# export USE_CLANG="$(USE_CLANG)"; \
+# "$(CURDIR)/build_tools/build_detect_platform" "$(CURDIR)/make_config.mk"))
# this file is generated by the previous line to set build flags and sources
include make_config.mk
export JAVAC_ARGS
@@ -779,7 +779,7 @@ endif # PLATFORM_SHARED_EXT
blackbox_crash_test_with_txn whitebox_crash_test_with_txn
-all: $(LIBRARY) $(BENCHMARKS) tools tools_lib test_libs $(TESTS)
+all: $(LIBRARY) $(BENCHMARKS) tools tools_lib test_libs # $(TESTS)
all_but_some_tests: $(LIBRARY) $(BENCHMARKS) tools tools_lib test_libs $(SUBSET)
@@ -0,0 +1,102 @@
Remove -fno-builtin-memcmp and -ltcmalloc
--- build_tools/build_detect_platform.orig 2020-05-27 23:38:10 UTC
+++ build_tools/build_detect_platform
@@ -126,7 +126,7 @@ PLATFORM_SHARED_VERSIONED=true
# generic port files (working on all platform by #ifdef) go directly in /port
GENERIC_PORT_FILES=`cd "$ROCKSDB_ROOT"; find port -name '*.cc' | tr "\n" " "`
-# On GCC, we pick libc's memcmp over GCC's memcmp via -fno-builtin-memcmp
+# On GCC, we pick libc's memcmp over GCC's memcmp via
case "$TARGET_OS" in
Darwin)
PLATFORM=OS_MACOSX
@@ -147,7 +147,7 @@ case "$TARGET_OS" in
PLATFORM=OS_LINUX
COMMON_FLAGS="$COMMON_FLAGS -DOS_LINUX"
if [ -z "$USE_CLANG" ]; then
- COMMON_FLAGS="$COMMON_FLAGS -fno-builtin-memcmp"
+ COMMON_FLAGS="$COMMON_FLAGS"
else
PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS -latomic"
fi
@@ -174,34 +174,34 @@ EOF
;;
SunOS)
PLATFORM=OS_SOLARIS
- COMMON_FLAGS="$COMMON_FLAGS -fno-builtin-memcmp -D_REENTRANT -DOS_SOLARIS -m64"
+ COMMON_FLAGS="$COMMON_FLAGS -D_REENTRANT -DOS_SOLARIS -m64"
PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS -lpthread -lrt -static-libstdc++ -static-libgcc -m64"
# PORT_FILES=port/sunos/sunos_specific.cc
;;
AIX)
PLATFORM=OS_AIX
CC=gcc
- COMMON_FLAGS="$COMMON_FLAGS -maix64 -pthread -fno-builtin-memcmp -D_REENTRANT -DOS_AIX -D__STDC_FORMAT_MACROS"
+ COMMON_FLAGS="$COMMON_FLAGS -maix64 -pthread -D_REENTRANT -DOS_AIX -D__STDC_FORMAT_MACROS"
PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS -pthread -lpthread -lrt -maix64 -static-libstdc++ -static-libgcc"
# PORT_FILES=port/aix/aix_specific.cc
;;
FreeBSD)
PLATFORM=OS_FREEBSD
CXX=clang++
- COMMON_FLAGS="$COMMON_FLAGS -fno-builtin-memcmp -D_REENTRANT -DOS_FREEBSD"
+ COMMON_FLAGS="$COMMON_FLAGS -D_REENTRANT -DOS_FREEBSD"
PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS -lpthread"
# PORT_FILES=port/freebsd/freebsd_specific.cc
;;
NetBSD)
PLATFORM=OS_NETBSD
- COMMON_FLAGS="$COMMON_FLAGS -fno-builtin-memcmp -D_REENTRANT -DOS_NETBSD"
+ COMMON_FLAGS="$COMMON_FLAGS -D_REENTRANT -DOS_NETBSD"
PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS -lpthread -lgcc_s"
# PORT_FILES=port/netbsd/netbsd_specific.cc
;;
OpenBSD)
PLATFORM=OS_OPENBSD
CXX=clang++
- COMMON_FLAGS="$COMMON_FLAGS -fno-builtin-memcmp -D_REENTRANT -DOS_OPENBSD"
+ COMMON_FLAGS="$COMMON_FLAGS -D_REENTRANT -DOS_OPENBSD"
PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS -pthread"
# PORT_FILES=port/openbsd/openbsd_specific.cc
FIND=gfind
@@ -209,7 +209,7 @@ EOF
;;
DragonFly)
PLATFORM=OS_DRAGONFLYBSD
- COMMON_FLAGS="$COMMON_FLAGS -fno-builtin-memcmp -D_REENTRANT -DOS_DRAGONFLYBSD"
+ COMMON_FLAGS="$COMMON_FLAGS -D_REENTRANT -DOS_DRAGONFLYBSD"
PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS -lpthread"
# PORT_FILES=port/dragonfly/dragonfly_specific.cc
;;
@@ -219,7 +219,7 @@ EOF
PLATFORM_CXXFLAGS="-std=gnu++11"
COMMON_FLAGS="$COMMON_FLAGS -DCYGWIN"
if [ -z "$USE_CLANG" ]; then
- COMMON_FLAGS="$COMMON_FLAGS -fno-builtin-memcmp"
+ COMMON_FLAGS="$COMMON_FLAGS"
else
PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS -latomic"
fi
@@ -228,7 +228,7 @@ EOF
;;
OS_ANDROID_CROSSCOMPILE)
PLATFORM=OS_ANDROID
- COMMON_FLAGS="$COMMON_FLAGS -fno-builtin-memcmp -D_REENTRANT -DOS_ANDROID -DROCKSDB_PLATFORM_POSIX"
+ COMMON_FLAGS="$COMMON_FLAGS -D_REENTRANT -DOS_ANDROID -DROCKSDB_PLATFORM_POSIX"
PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS " # All pthread features are in the Android C library
# PORT_FILES=port/android/android.cc
CROSS_COMPILE=true
@@ -410,9 +410,9 @@ EOF
if ! test $JEMALLOC && ! test $ROCKSDB_DISABLE_TCMALLOC; then
# jemalloc is not available. Let's try tcmalloc
if echo 'int main() {}' | $CXX $CFLAGS -x c++ - -o /dev/null \
- -ltcmalloc 2>/dev/null; then
- PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS -ltcmalloc"
- JAVA_LDFLAGS="$JAVA_LDFLAGS -ltcmalloc"
+ 2>/dev/null; then
+ PLATFORM_LDFLAGS="$PLATFORM_LDFLAGS"
+ JAVA_LDFLAGS="$JAVA_LDFLAGS"
fi
fi
@@ -0,0 +1,11 @@
--- third-party/gtest-1.8.1/fused-src/gtest/gtest-all.cc.orig 2020-05-27 23:38:10 UTC
+++ third-party/gtest-1.8.1/fused-src/gtest/gtest-all.cc
@@ -35,7 +35,7 @@
// This line ensures that gtest.h can be compiled on its own, even
// when it's fused.
-#include "gtest/gtest.h"
+#include "gtest.h"
// The following lines pull in the real gtest *.cc files.
// Copyright 2005, Google Inc.
+12 -6
View File
@@ -98,9 +98,15 @@ include/rocksdb/wal_filter.h
include/rocksdb/write_batch.h
include/rocksdb/write_batch_base.h
include/rocksdb/write_buffer_manager.h
lib/librocksdb%%LITE%%.a
lib/librocksdb%%LITE%%.so
lib/librocksdb%%LITE%%.so.%%SHLIB_MAJOR%%
lib/librocksdb%%LITE%%.so.%%SHLIB_MAJOR%%.%%SHLIB_MINOR%%
lib/librocksdb%%LITE%%.so.%%PORTVERSION%%
lib/librocksdb%%LITE%%_tools.a
%%LITE%%lib/librocksdb-lite.a
%%LITE%%lib/librocksdb-lite.so
%%LITE%%lib/librocksdb-lite.so.6
%%LITE%%lib/librocksdb-lite.so.%%SHLIB_VER%%
%%LITE%%lib/librocksdb-lite.so.%%PORTVERSION%%
%%LITE%%lib/librocksdb-lite_tools.a
lib/librocksdb.a
lib/librocksdb.so
lib/librocksdb.so.6
lib/librocksdb.so.%%SHLIB_VER%%
lib/librocksdb.so.%%PORTVERSION%%
lib/librocksdb_tools.a