package/libmdbx: new package (library/database).
This patch adds libmdbx v0.9.2: - libmdbx is one of the fastest compact embeddable key-value ACID database. - libmdbx has a specific set of properties and capabilities, focused on creating unique lightweight solutions. - libmdbx surpasses the legendary LMDB (Lightning Memory-Mapped Database) in terms of reliability, features and performance. - https://github.com/erthink/libmdbx Signed-off-by: Leonid Yuriev <leo@yuriev.ru> [yann.morin.1998@free.fr: split long lines] Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
parent
072af885c4
commit
f36093a49e
|
@ -1487,6 +1487,9 @@ N: Leon Anavi <leon.anavi@konsulko.com>
|
|||
F: board/olimex/a10_olinuxino
|
||||
F: configs/olimex_a10_olinuxino_lime_defconfig
|
||||
|
||||
N: Leonid Yuriev <leo@yuriev.ru>
|
||||
F: package/libmdbx/
|
||||
|
||||
N: Lionel Flandrin <lionel@svkt.org>
|
||||
F: package/python-babel/
|
||||
F: package/python-daemonize/
|
||||
|
|
|
@ -1380,6 +1380,7 @@ menu "Database"
|
|||
source "package/kompexsqlite/Config.in"
|
||||
source "package/leveldb/Config.in"
|
||||
source "package/libgit2/Config.in"
|
||||
source "package/libmdbx/Config.in"
|
||||
source "package/libodb/Config.in"
|
||||
source "package/libodb-boost/Config.in"
|
||||
source "package/libodb-mysql/Config.in"
|
||||
|
|
45
package/libmdbx/Config.in
Normal file
45
package/libmdbx/Config.in
Normal file
|
@ -0,0 +1,45 @@
|
|||
config BR2_PACKAGE_LIBMDBX
|
||||
bool "libmdbx"
|
||||
depends on BR2_USE_MMU
|
||||
depends on BR2_TOOLCHAIN_HAS_SYNC_4
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_4
|
||||
help
|
||||
One of the fastest compact key-value ACID database
|
||||
without WAL. libmdbx has a specific set of properties
|
||||
and capabilities, focused on creating unique lightweight
|
||||
solutions.
|
||||
|
||||
libmdbx surpasses the legendary LMDB in terms of
|
||||
reliability, features and performance.
|
||||
|
||||
https://github.com/erthink/libmdbx
|
||||
|
||||
if BR2_PACKAGE_LIBMDBX
|
||||
|
||||
config BR2_PACKAGE_LIBMDBX_TOOLS
|
||||
bool "install tools"
|
||||
help
|
||||
Install libmdbx tools for checking, dump, restore
|
||||
and show statistics of databases.
|
||||
|
||||
config BR2_PACKAGE_LIBMDBX_CXX
|
||||
bool "C++ API"
|
||||
depends on BR2_INSTALL_LIBSTDCPP
|
||||
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|
||||
depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
||||
help
|
||||
Enable modern C++11/14/17/20 API for libmdbx.
|
||||
|
||||
comment "libmdbx C++ support needs a toolchain w/ C++11, gcc >= 4.8 w/o bug#64735"
|
||||
depends on !BR2_INSTALL_LIBSTDCPP || \
|
||||
!BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || \
|
||||
BR2_TOOLCHAIN_HAS_GCC_BUG_64735
|
||||
|
||||
endif
|
||||
|
||||
comment "libmdbx needs MMU, a toolchain w/ threads, gcc >= 4.4 w/ 4-byte atomics"
|
||||
depends on BR2_USE_MMU
|
||||
depends on !BR2_TOOLCHAIN_HAS_THREADS || \
|
||||
!BR2_TOOLCHAIN_HAS_SYNC_4 || \
|
||||
!BR2_TOOLCHAIN_GCC_AT_LEAST_4_4
|
5
package/libmdbx/libmdbx.hash
Normal file
5
package/libmdbx/libmdbx.hash
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Hashes from: https://github.com/erthink/libmdbx/releases/
|
||||
sha256 c35cc53d66d74ebfc86e39441ba26276541ac7892bf91dba1e70c83665a02767 libmdbx-amalgamated-0.9.2.tar.gz
|
||||
|
||||
# Locally calculated
|
||||
sha256 310fe25c858a9515fc8c8d7d1f24a67c9496f84a91e0a0e41ea9975b1371e569 LICENSE
|
39
package/libmdbx/libmdbx.mk
Normal file
39
package/libmdbx/libmdbx.mk
Normal file
|
@ -0,0 +1,39 @@
|
|||
################################################################################
|
||||
#
|
||||
# libmdbx
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBMDBX_VERSION = 0.9.2
|
||||
LIBMDBX_SOURCE = libmdbx-amalgamated-$(LIBMDBX_VERSION).tar.gz
|
||||
LIBMDBX_SITE = https://github.com/erthink/libmdbx/releases/download/v$(LIBMDBX_VERSION)
|
||||
LIBMDBX_SUPPORTS_IN_SOURCE_BUILD = NO
|
||||
LIBMDBX_LICENSE = OLDAP-2.8
|
||||
LIBMDBX_LICENSE_FILES = LICENSE
|
||||
LIBMDBX_REDISTRIBUTE = YES
|
||||
LIBMDBX_STRIP_COMPONENTS = 0
|
||||
LIBMDBX_INSTALL_STAGING = YES
|
||||
|
||||
LIBMDBX_CONF_OPTS = \
|
||||
-DMDBX_INSTALL_MANPAGES=OFF \
|
||||
-DBUILD_FOR_NATIVE_CPU=OFF \
|
||||
-DMDBX_BUILD_CXX=$(if $(BR2_PACKAGE_LIBMDBX_CXX),ON,OFF) \
|
||||
-DMDBX_BUILD_TOOLS=$(if $(BR2_PACKAGE_LIBMDBX_TOOLS),ON,OFF)
|
||||
|
||||
ifeq ($(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS),y)
|
||||
LIBMDBX_CONF_OPTS += -DMDBX_INSTALL_STATIC=ON
|
||||
else
|
||||
LIBMDBX_CONF_OPTS += -DMDBX_INSTALL_STATIC=OFF
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y)
|
||||
LIBMDBX_CONF_OPTS += \
|
||||
-DMDBX_BUILD_SHARED_LIBRARY=ON \
|
||||
-DMDBX_LINK_TOOLS_NONSTATIC=ON
|
||||
else
|
||||
LIBMDBX_CONF_OPTS += \
|
||||
-DMDBX_BUILD_SHARED_LIBRARY=OFF \
|
||||
-DMDBX_LINK_TOOLS_NONSTATIC=OFF
|
||||
endif
|
||||
|
||||
$(eval $(cmake-package))
|
Loading…
Reference in a new issue