1################################################################################ 2# 3# rocksdb 4# 5################################################################################ 6 7ROCKSDB_VERSION = 6.20.3 8ROCKSDB_SITE = $(call github,facebook,rocksdb,v$(ROCKSDB_VERSION)) 9ROCKSDB_LICENSE = GPL-2.0 or Apache-2.0 10ROCKSDB_LICENSE_FILES = COPYING LICENSE.Apache LICENSE.leveldb README.md 11ROCKSDB_INSTALL_STAGING = YES 12 13ROCKSDB_MAKE_OPTS = \ 14 PORTABLE=1 \ 15 PREFIX=/usr 16 17# Internal error, aborting at dwarf2cfi.c:2802 in connect_traces 18# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58864 19ifeq ($(BR2_m68k_cf),y) 20ROCKSDB_EXTRA_CXXFLAGS += -fno-defer-pop 21endif 22 23ifeq ($(BR2_PACKAGE_BZIP2),y) 24ROCKSDB_DEPENDENCIES += bzip2 25ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_BZ2=0 26else 27ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_BZ2=1 28endif 29 30ifeq ($(BR2_PACKAGE_GFLAGS),y) 31ROCKSDB_DEPENDENCIES += gflags 32ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_GFLAGS=0 33else 34ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_GFLAGS=1 35endif 36 37ifeq ($(BR2_PACKAGE_JEMALLOC),y) 38ROCKSDB_DEPENDENCIES += jemalloc 39ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_JEMALLOC=0 40else 41ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_JEMALLOC=1 42endif 43 44ifeq ($(BR2_PACKAGE_LZ4),y) 45ROCKSDB_DEPENDENCIES += lz4 46ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_LZ4=0 47else 48ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_LZ4=1 49endif 50 51ifeq ($(BR2_PACKAGE_SNAPPY),y) 52ROCKSDB_DEPENDENCIES += snappy 53ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_SNAPPY=0 54else 55ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_SNAPPY=1 56endif 57 58ifeq ($(BR2_PACKAGE_ZLIB),y) 59ROCKSDB_DEPENDENCIES += zlib 60ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_ZLIB=0 61else 62ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_ZLIB=1 63endif 64 65ifeq ($(BR2_PACKAGE_ZSTD),y) 66ROCKSDB_DEPENDENCIES += zstd 67ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_ZSTD=0 68else 69ROCKSDB_MAKE_OPTS += ROCKSDB_DISABLE_ZSTD=1 70endif 71 72ifeq ($(BR2_GCC_ENABLE_LTO),y) 73ROCKSDB_MAKE_OPTS += USE_LTO=1 74else 75ROCKSDB_MAKE_OPTS += USE_LTO=0 76endif 77 78ifeq ($(BR2_STATIC_LIBS),y) 79ROCKSDB_BUILD_TARGETS += static_lib 80ROCKSDB_INSTALL_TARGETS += install-static 81ROCKSDB_EXTRA_CXXFLAGS += -DROCKSDB_NO_DYNAMIC_EXTENSION 82else ifeq ($(BR2_SHARED_LIBS),y) 83ROCKSDB_BUILD_TARGETS += shared_lib 84ROCKSDB_INSTALL_TARGETS += install-shared 85else ifeq ($(BR2_SHARED_STATIC_LIBS),y) 86ROCKSDB_BUILD_TARGETS += shared_lib static_lib 87ROCKSDB_INSTALL_TARGETS += install-shared install-static 88endif 89 90ROCKSDB_MAKE_OPTS += EXTRA_CXXFLAGS="$(ROCKSDB_EXTRA_CXXFLAGS)" 91 92define ROCKSDB_BUILD_CMDS 93 $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ROCKSDB_MAKE_OPTS) -C $(@D) \ 94 $(ROCKSDB_BUILD_TARGETS) 95endef 96 97define ROCKSDB_INSTALL_STAGING_CMDS 98 $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ROCKSDB_MAKE_OPTS) -C $(@D) \ 99 DESTDIR=$(STAGING_DIR) $(ROCKSDB_INSTALL_TARGETS) 100endef 101 102define ROCKSDB_INSTALL_TARGET_CMDS 103 $(TARGET_CONFIGURE_OPTS) $(MAKE) $(ROCKSDB_MAKE_OPTS) -C $(@D) \ 104 DESTDIR=$(TARGET_DIR) $(ROCKSDB_INSTALL_TARGETS) 105endef 106 107$(eval $(generic-package)) 108