[Buildroot] [PATCH 1/3] package/lmdb: new package

Yann E. MORIN yann.morin.1998 at free.fr
Wed Apr 3 21:25:45 UTC 2024


Emile, All,

On 2024-04-03 18:17 -0300, Emile Cormier spake thusly:
> My only interest in python-zlmdb was to be able to build a more recent version
> of Crossbar, and I didn't even use that database component of Crossbar that
> depended on ZLMDB.
[--SNIP--]
> Unless someone is still actively using it, you may want to consider dropping
> Crossbar support in Buildroot because the amount of work needed to be able to
> build the latest version in Buildroot is monumental.

We've already removed crossbar a little while ago, as it is not
python-3.12 compatible, and it did not seem to be on the radar
upstream...

As for python-zlmdb, unless it gets broken, there is no reason to drop
it for now.

Thanks for your quick reply providing some useful context! :-)

Regards,
Yann E. MORIN.

> Cheers,
> Emile Cormier
> 
> On Wed, Apr 3, 2024 at 5:57 PM Yann E. MORIN <[1]yann.morin.1998 at free.fr>
> wrote:
> 
>     François, All,
> 
>     +Mauro for pyhon-lmdb
>     +Emile for python-zlmdb
> 
>     On 2024-04-03 10:54 +0200, Francois Perrad spake thusly:
>     > Signed-off-by: Francois Perrad <[2]francois.perrad at gadz.org>
>     [--SNIP--]
>     > 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.
>     > +
>     > +       [3]https://symas.com/lmdb/
>     > +
>     > +comment "lmdb needs a toolchain w/ threads"
>     > +     depends on !BR2_TOOLCHAIN_HAS_THREADS
> 
>     Mauro, Emile: python-lmdb bundles a copy of lmdb, but it is possible to
>     configure it to use the system-provided library instead [0]. Do you know
>     if there would be adverse effects to do so in Buildroot? Indeed, we
>     prefer to configure packages to use system libraries rather than use
>     there bundled copy whenever possible...
> 
>     [0] [4]https://lmdb.readthedocs.io/en/release/#installation-unix
> 
>     I haven't looked at python-zlmdb, though...
> 
>     [--SNIP--]
>     > diff --git a/package/lmdb/[5]lmdb.mk b/package/lmdb/[6]lmdb.mk
>     > new file mode 100644
>     > index 0000000000..5e2ad2d05a
>     > --- /dev/null
>     > +++ b/package/lmdb/[7]lmdb.mk
>     > @@ -0,0 +1,35 @@
>     > +########################################################################
>     ########
>     > +#
>     > +# lmdb
>     > +#
>     > +########################################################################
>     ########
>     > +
>     > +LMDB_VERSION = 0.9.31
>     > +LMDB_SITE = $(call github,LMDB,lmdb,LMDB_$(LMDB_VERSION))
>     > +LMDB_LICENSE = OpenLDAP Public License
> 
>     I think we want to use the SPDX short tag here: OLDAP-2.8. Incidentally,
>     this is also what is already used for python-lmdb.
> 
>     > +LMDB_LICENSE_FILES = libraries/liblmdb/LICENSE
>     > +LMDB_INSTALL_STAGING = YES
>     > +
>     > +define LMDB_BUILD_CMDS
>     > +     $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libraries/liblmdb \
>     > +             CC="$(TARGET_CC)" \
>     > +             XCFLAGS="$(TARGET_CFLAGS)" \
>     > +             AR="$(TARGET_CROSS)ar" \
> 
>     Why not use $(TARGET_CONFIGURE_OPTS) and just add the special XCFLAGS?
> 
>     > +             all
> 
>     'all' is usually the default target, for being the first in the
>     Makefile, which is also the cae here, so there is no reason to specify
>     it.
> 
>     > +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))
>     > --
>     > 2.39.2
>     >
>     > _______________________________________________
>     > buildroot mailing list
>     > [8]buildroot at buildroot.org
>     > [9]https://lists.buildroot.org/mailman/listinfo/buildroot
> 
>     --
>     .-----------------.--------------------.------------------.--------------------.
>     |  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics'
>     conspiracy: |
>     | +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___           
>        |
>     | +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is
>     no  |
>     | [10]http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v 
>      conspiracy.  |
>     '------------------------------^-------^------------------^
>     --------------------'
> 
> 
> References:
> 
> [1] mailto:yann.morin.1998 at free.fr
> [2] mailto:francois.perrad at gadz.org
> [3] https://symas.com/lmdb/
> [4] https://lmdb.readthedocs.io/en/release/#installation-unix
> [5] http://lmdb.mk/
> [6] http://lmdb.mk/
> [7] http://lmdb.mk/
> [8] mailto:buildroot at buildroot.org
> [9] https://lists.buildroot.org/mailman/listinfo/buildroot
> [10] http://ymorin.is-a-geek.org/

> _______________________________________________
> buildroot mailing list
> buildroot at buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot


-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'



More information about the buildroot mailing list