From eb60c4054c25129d78651a66d1e7554aff04767f Mon Sep 17 00:00:00 2001 From: Francois Perrad Date: Thu, 4 Apr 2024 18:29:37 +0200 Subject: [PATCH] package/lmdb: new package Signed-off-by: Francois Perrad Signed-off-by: Thomas Petazzoni --- DEVELOPERS | 1 + package/Config.in | 1 + package/lmdb/Config.in | 13 +++++++++++++ package/lmdb/lmdb.hash | 3 +++ package/lmdb/lmdb.mk | 32 ++++++++++++++++++++++++++++++++ 5 files changed, 50 insertions(+) create mode 100644 package/lmdb/Config.in create mode 100644 package/lmdb/lmdb.hash create mode 100644 package/lmdb/lmdb.mk diff --git a/DEVELOPERS b/DEVELOPERS index 11b413e95a..b282d64508 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -1141,6 +1141,7 @@ F: package/libwpe/ F: package/linenoise/ F: package/ljlinenoise/ F: package/lua-inotify/ +F: package/lmdb/ F: package/lpeg/ F: package/lpty/ F: package/lrandom/ diff --git a/package/Config.in b/package/Config.in index 2b1e4a86b9..14e016daf3 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1597,6 +1597,7 @@ menu "Database" source "package/libodb-mysql/Config.in" source "package/libodb-pgsql/Config.in" source "package/libpqxx/Config.in" + source "package/lmdb/Config.in" source "package/mariadb/Config.in" source "package/mongodb/Config.in" source "package/postgresql/Config.in" diff --git a/package/lmdb/Config.in b/package/lmdb/Config.in new file mode 100644 index 0000000000..f4ae9f3103 --- /dev/null +++ b/package/lmdb/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_LMDB + bool "lmdb" + depends on BR2_TOOLCHAIN_HAS_THREADS + help + OpenLDAP Lightning Memory-Mapped Database + + LMDB is compact, fast, powerful, and robust and implements + a simplified variant of the BerkeleyDB (BDB) API. + + https://symas.com/lmdb/ + +comment "lmdb needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/lmdb/lmdb.hash b/package/lmdb/lmdb.hash new file mode 100644 index 0000000000..d72c66aace --- /dev/null +++ b/package/lmdb/lmdb.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 dd70a8c67807b3b8532b3e987b0a4e998962ecc28643e1af5ec77696b081c9b0 lmdb-0.9.31.tar.gz +sha256 310fe25c858a9515fc8c8d7d1f24a67c9496f84a91e0a0e41ea9975b1371e569 libraries/liblmdb/LICENSE diff --git a/package/lmdb/lmdb.mk b/package/lmdb/lmdb.mk new file mode 100644 index 0000000000..dafe7332cb --- /dev/null +++ b/package/lmdb/lmdb.mk @@ -0,0 +1,32 @@ +################################################################################ +# +# lmdb +# +################################################################################ + +LMDB_VERSION = 0.9.31 +LMDB_SITE = $(call github,LMDB,lmdb,LMDB_$(LMDB_VERSION)) +LMDB_LICENSE = OLDAP-2.8 +LMDB_LICENSE_FILES = libraries/liblmdb/LICENSE +LMDB_INSTALL_STAGING = YES + +define LMDB_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)/libraries/liblmdb \ + XCFLAGS="$(TARGET_CFLAGS)" +endef + +define LMDB_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libraries/liblmdb \ + DESTDIR="$(STAGING_DIR)" \ + prefix=/usr \ + install +endef + +define LMDB_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libraries/liblmdb \ + DESTDIR="$(TARGET_DIR)" \ + prefix=/usr \ + install +endef + +$(eval $(generic-package))