public inbox for buildroot@busybox.net
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/4] package/libzippp: new package
@ 2026-03-15 13:16 Bernd Kuhls
  2026-03-15 13:16 ` [Buildroot] [PATCH 2/4] package/cxxopts: " Bernd Kuhls
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Bernd Kuhls @ 2026-03-15 13:16 UTC (permalink / raw)
  To: buildroot; +Cc: Fabrice Fontaine, James Knight

The package will be used as an optional dependency by the upcoming
gerbera bump.

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
 DEVELOPERS                     |  1 +
 package/Config.in              |  1 +
 package/libzippp/Config.in     | 13 +++++++++++++
 package/libzippp/libzippp.hash |  3 +++
 package/libzippp/libzippp.mk   | 35 ++++++++++++++++++++++++++++++++++
 5 files changed, 53 insertions(+)
 create mode 100644 package/libzippp/Config.in
 create mode 100644 package/libzippp/libzippp.hash
 create mode 100644 package/libzippp/libzippp.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index cf8b170ce7..1b495e0fbe 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -457,6 +457,7 @@ F:	package/libvorbis/
 F:	package/libvpl/
 F:	package/libvpx/
 F:	package/libyuv/
+F:	package/libzippp/
 F:	package/linux-firmware/
 F:	package/mc/
 F:	package/mesa3d/
diff --git a/package/Config.in b/package/Config.in
index 9578a29a35..49425bdbe3 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1602,6 +1602,7 @@ menu "Compression and decompression"
 	source "package/libmspack/Config.in"
 	source "package/libsquish/Config.in"
 	source "package/libzip/Config.in"
+	source "package/libzippp/Config.in"
 	source "package/lz4/Config.in"
 	source "package/lzo/Config.in"
 	source "package/minizip/Config.in"
diff --git a/package/libzippp/Config.in b/package/libzippp/Config.in
new file mode 100644
index 0000000000..71b9fed776
--- /dev/null
+++ b/package/libzippp/Config.in
@@ -0,0 +1,13 @@
+config BR2_PACKAGE_LIBZIPPP
+	bool "libzippp"
+	depends on BR2_INSTALL_LIBSTDCPP
+	depends on !BR2_STATIC_LIBS # libzip
+	select BR2_PACKAGE_LIBZIP
+	select BR2_PACKAGE_ZLIB
+	help
+	  C++ wrapper for libzip
+
+	  https://github.com/ctabin/libzippp
+
+comment "libzippp needs a toolchain w/ C++, dynamic library"
+	depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS
diff --git a/package/libzippp/libzippp.hash b/package/libzippp/libzippp.hash
new file mode 100644
index 0000000000..9d2f81a787
--- /dev/null
+++ b/package/libzippp/libzippp.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256  9ded3c4b5641e65d2b3a3dd0cbc4106209ee17c17df70e5187e7171420752546  libzippp-v7.1-1.10.1.tar.gz
+sha256  184f3ecf3d8cf4affad2b322ede037fb79a14e8b5b20c38ccbb66e33c23180d9  LICENCE
diff --git a/package/libzippp/libzippp.mk b/package/libzippp/libzippp.mk
new file mode 100644
index 0000000000..d07dfc44a0
--- /dev/null
+++ b/package/libzippp/libzippp.mk
@@ -0,0 +1,35 @@
+################################################################################
+#
+# libzip
+#
+################################################################################
+
+LIBZIPPP_VERSION = 7.1-1.10.1
+LIBZIPPP_SOURCE = libzippp-v$(LIBZIPPP_VERSION).tar.gz
+LIBZIPPP_SITE = https://github.com/ctabin/libzippp/archive/refs/tags
+LIBZIPPP_LICENSE = BSD-3-Clause
+LIBZIPPP_LICENSE_FILES = LICENCE
+LIBZIPPP_INSTALL_STAGING = YES
+LIBZIPPP_DEPENDENCIES = libzip zlib
+
+ifeq ($(BR2_PACKAGE_BZIP2),y)
+LIBZIPPP_DEPENDENCIES += bzip2
+endif
+
+ifeq ($(BR2_PACKAGE_GNUTLS),y)
+LIBZIPPP_DEPENDENCIES += gnutls
+endif
+
+ifeq ($(BR2_PACKAGE_OPENSSL),y)
+LIBZIPPP_DEPENDENCIES += openssl
+endif
+
+ifeq ($(BR2_PACKAGE_XZ),y)
+LIBZIPPP_DEPENDENCIES += xz
+endif
+
+ifeq ($(BR2_PACKAGE_ZSTD),y)
+LIBZIPPP_DEPENDENCIES += zstd
+endif
+
+$(eval $(cmake-package))
-- 
2.47.3

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

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH 2/4] package/cxxopts: new package
  2026-03-15 13:16 [Buildroot] [PATCH 1/4] package/libzippp: new package Bernd Kuhls
@ 2026-03-15 13:16 ` Bernd Kuhls
  2026-03-15 13:16 ` [Buildroot] [PATCH 3/4] package/libpqxx: switch to CMake Bernd Kuhls
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Bernd Kuhls @ 2026-03-15 13:16 UTC (permalink / raw)
  To: buildroot; +Cc: Fabrice Fontaine, James Knight

This header-only library is needed for gerbera bump to 3.2.0.

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
 DEVELOPERS                   |  1 +
 package/Config.in            |  1 +
 package/cxxopts/Config.in    | 10 ++++++++++
 package/cxxopts/cxxopts.hash |  3 +++
 package/cxxopts/cxxopts.mk   | 15 +++++++++++++++
 5 files changed, 30 insertions(+)
 create mode 100644 package/cxxopts/Config.in
 create mode 100644 package/cxxopts/cxxopts.hash
 create mode 100644 package/cxxopts/cxxopts.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 1b495e0fbe..0e83652483 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -369,6 +369,7 @@ F:	package/bcg729/
 F:	package/bento4/
 F:	package/bitcoin/
 F:	package/clamav/
+F:	package/cxxopts/
 F:	package/dav1d/
 F:	package/dht/
 F:	package/dnsmasq/
diff --git a/package/Config.in b/package/Config.in
index 49425bdbe3..7100105a07 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2136,6 +2136,7 @@ menu "Other"
 	source "package/llvm-project/compiler-rt/Config.in"
 	source "package/cppcms/Config.in"
 	source "package/cracklib/Config.in"
+	source "package/cxxopts/Config.in"
 	source "package/dawgdic/Config.in"
 	source "package/ding-libs/Config.in"
 	source "package/dlib/Config.in"
diff --git a/package/cxxopts/Config.in b/package/cxxopts/Config.in
new file mode 100644
index 0000000000..0e7a52c0a5
--- /dev/null
+++ b/package/cxxopts/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_CXXOPTS
+	bool "cxxopts"
+	depends on BR2_INSTALL_LIBSTDCPP
+	help
+	  Lightweight C++ command line option parser
+
+	  https://github.com/jarro2783/cxxopts
+
+comment "cxxopts needs a toolchain w/ C++"
+	depends on !BR2_INSTALL_LIBSTDCPP
diff --git a/package/cxxopts/cxxopts.hash b/package/cxxopts/cxxopts.hash
new file mode 100644
index 0000000000..fabef5c840
--- /dev/null
+++ b/package/cxxopts/cxxopts.hash
@@ -0,0 +1,3 @@
+# Locally calculated
+sha256  3bfc70542c521d4b55a46429d808178916a579b28d048bd8c727ee76c39e2072  cxxopts-3.3.1.tar.gz
+sha256  aa324fbe633a96546bebca975fbbab65caa175894bd00cfa13d7335e7363400c  LICENSE
diff --git a/package/cxxopts/cxxopts.mk b/package/cxxopts/cxxopts.mk
new file mode 100644
index 0000000000..1dc25c9083
--- /dev/null
+++ b/package/cxxopts/cxxopts.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# cxxopts
+#
+################################################################################
+
+CXXOPTS_VERSION = 3.3.1
+CXXOPTS_SITE = $(call github,jarro2783,cxxopts,v$(CXXOPTS_VERSION))
+CXXOPTS_LICENSE = MIT
+CXXOPTS_LICENSE_FILES = LICENSE
+
+CXXOPTS_INSTALL_STAGING = YES
+CXXOPTS_INSTALL_TARGET = NO
+
+$(eval $(cmake-package))
-- 
2.47.3

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

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH 3/4] package/libpqxx: switch to CMake
  2026-03-15 13:16 [Buildroot] [PATCH 1/4] package/libzippp: new package Bernd Kuhls
  2026-03-15 13:16 ` [Buildroot] [PATCH 2/4] package/cxxopts: " Bernd Kuhls
@ 2026-03-15 13:16 ` Bernd Kuhls
  2026-03-15 13:16 ` [Buildroot] [PATCH 4/4] package/gerbera: bump version to 3.2.0 Bernd Kuhls
  2026-03-21 21:17 ` [Buildroot] [PATCH 1/4] package/libzippp: new package Julien Olivain via buildroot
  3 siblings, 0 replies; 5+ messages in thread
From: Bernd Kuhls @ 2026-03-15 13:16 UTC (permalink / raw)
  To: buildroot; +Cc: Fabrice Fontaine, James Knight

The upcoming version bump of gerbera includes optional PostgreSQL
support using libpqxx which will only be detected if libpqxx was built
with CMake:

Quoting the error message with libpqxx being built with autoconf:

CMake Error at CMakeLists.txt:685 (find_package):
  By not providing "Findlibpqxx.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "libpqxx", but
  CMake did not find one.

  Could not find a package configuration file provided by "libpqxx" with any
  of the following names:

    libpqxxConfig.cmake
    libpqxx-config.cmake

  Add the installation prefix of "libpqxx" to CMAKE_PREFIX_PATH or set
  "libpqxx_DIR" to a directory containing one of the above files.  If
  "libpqxx" provides a separate development package or SDK, be sure it has
  been installed.

usr/lib/pkgconfig/libpqxx.pc is still provided by the CMake build system.

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
 package/libpqxx/libpqxx.mk | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/package/libpqxx/libpqxx.mk b/package/libpqxx/libpqxx.mk
index f19420dc41..492370f7f5 100644
--- a/package/libpqxx/libpqxx.mk
+++ b/package/libpqxx/libpqxx.mk
@@ -11,8 +11,4 @@ LIBPQXX_DEPENDENCIES = postgresql
 LIBPQXX_LICENSE = BSD-3-Clause
 LIBPQXX_LICENSE_FILES = COPYING
 
-LIBPQXX_CONF_ENV = \
-	ac_cv_path_PG_CONFIG=$(STAGING_DIR)/usr/bin/pg_config \
-	CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++17"
-
-$(eval $(autotools-package))
+$(eval $(cmake-package))
-- 
2.47.3

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

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH 4/4] package/gerbera: bump version to 3.2.0
  2026-03-15 13:16 [Buildroot] [PATCH 1/4] package/libzippp: new package Bernd Kuhls
  2026-03-15 13:16 ` [Buildroot] [PATCH 2/4] package/cxxopts: " Bernd Kuhls
  2026-03-15 13:16 ` [Buildroot] [PATCH 3/4] package/libpqxx: switch to CMake Bernd Kuhls
@ 2026-03-15 13:16 ` Bernd Kuhls
  2026-03-21 21:17 ` [Buildroot] [PATCH 1/4] package/libzippp: new package Julien Olivain via buildroot
  3 siblings, 0 replies; 5+ messages in thread
From: Bernd Kuhls @ 2026-03-15 13:16 UTC (permalink / raw)
  To: buildroot; +Cc: Fabrice Fontaine, James Knight

https://github.com/gerbera/gerbera/blob/v3.2.0/ReleaseNotes.md

Removed patch which is included in this release.

Added optional dependency to libpqxx which needs to be built with CMake.

Added optional dependency to new libzippp package.

Added cxxopts as new dependency:
https://github.com/gerbera/gerbera/commit/72f7655e86402acac5600a462d429a40ce1aec84

Updated config.xml following a note from the release notes:
"xmlns was renamed to xml-ns for compliance reasons"

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
 package/gerbera/0001-fix_fmt_12.patch | 29 ---------------------------
 package/gerbera/Config.in             |  1 +
 package/gerbera/config.xml            |  2 +-
 package/gerbera/gerbera.hash          |  2 +-
 package/gerbera/gerbera.mk            | 17 +++++++++++++++-
 5 files changed, 19 insertions(+), 32 deletions(-)
 delete mode 100644 package/gerbera/0001-fix_fmt_12.patch

diff --git a/package/gerbera/0001-fix_fmt_12.patch b/package/gerbera/0001-fix_fmt_12.patch
deleted file mode 100644
index a10b78dae6..0000000000
--- a/package/gerbera/0001-fix_fmt_12.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From f8e158bc72986e46b93d05358c29db0c10f2fe9f Mon Sep 17 00:00:00 2001
-From: Karlchen <k_straussberger@netzland.net>
-Date: Wed, 17 Sep 2025 21:18:49 +0200
-Subject: [PATCH] Update to fmt 12.0.0
-
-Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
-Upstream: https://github.com/gerbera/gerbera/commit/f8e158bc72986e46b93d05358c29db0c10f2fe9f
-[buildroot@heine.tech: removed all patch content not patching actual code]
-
----
- src/web/config_load.cc            | 4 ++++
- 1 files changed, 4 insertions(+), 0 deletions(-)
-
-diff --git a/src/web/config_load.cc b/src/web/config_load.cc
-index 8b296c43e0..4259ae3331 100644
---- a/src/web/config_load.cc
-+++ b/src/web/config_load.cc
-@@ -150,7 +150,11 @@ void Web::ConfigLoad::addNewValue(
- template <typename T>
- void Web::ConfigLoad::setValue(Json::Value& item, const T& value)
- {
-+#if FMT_VERSION >= 120000
-+    static_assert(fmt::is_formattable<T, fmt::format_context>::value, "T must be formattable");
-+#else
-     static_assert(fmt::has_formatter<T, fmt::format_context>::value, "T must be formattable");
-+#endif
-     item[CONFIG_LOAD_VALUE] = fmt::to_string(value);
- }
- 
diff --git a/package/gerbera/Config.in b/package/gerbera/Config.in
index c5f7cf9cd1..3078d2017f 100644
--- a/package/gerbera/Config.in
+++ b/package/gerbera/Config.in
@@ -8,6 +8,7 @@ config BR2_PACKAGE_GERBERA
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on !BR2_STATIC_LIBS
 	depends on BR2_USE_WCHAR # fmt
+	select BR2_PACKAGE_CXXOPTS
 	select BR2_PACKAGE_FMT
 	select BR2_PACKAGE_ICU
 	select BR2_PACKAGE_JSONCPP
diff --git a/package/gerbera/config.xml b/package/gerbera/config.xml
index e6261f25d0..6d2d63c789 100644
--- a/package/gerbera/config.xml
+++ b/package/gerbera/config.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<config version="2" xmlns="http://mediatomb.cc/config/2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://mediatomb.cc/config/2 http://mediatomb.cc/config/2.xsd">
+<config version="2" xmlns="http://mediatomb.cc/config/2" xml-ns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://mediatomb.cc/config/2 http://mediatomb.cc/config/2.xsd">
   <!--
      See https://gerbera.io or read the docs for more
      information on creating and using config.xml configuration files.
diff --git a/package/gerbera/gerbera.hash b/package/gerbera/gerbera.hash
index 3056ff11ac..a60017e8db 100644
--- a/package/gerbera/gerbera.hash
+++ b/package/gerbera/gerbera.hash
@@ -1,3 +1,3 @@
 # Locally computed:
-sha256  6a7ed1c73bd86bdddd76bcb6c4bcd2e42788a20eb1f3165e0ea9f456abccd3ed  gerbera-2.6.1.tar.gz
+sha256  c55ec5cddc952e2563586ac76014be072c9dedb5094c6675889afa90b8df23e2  gerbera-3.2.0.tar.gz
 sha256  cae4138373be41fd2be75faf41ce7efbcf49fb17d0e05ad1c51cc01ac335b9b6  LICENSE.md
diff --git a/package/gerbera/gerbera.mk b/package/gerbera/gerbera.mk
index d2d68db686..1f7a0d48ff 100644
--- a/package/gerbera/gerbera.mk
+++ b/package/gerbera/gerbera.mk
@@ -4,11 +4,12 @@
 #
 ################################################################################
 
-GERBERA_VERSION = 2.6.1
+GERBERA_VERSION = 3.2.0
 GERBERA_SITE = $(call github,gerbera,gerbera,v$(GERBERA_VERSION))
 GERBERA_LICENSE = GPL-2.0
 GERBERA_LICENSE_FILES = LICENSE.md
 GERBERA_DEPENDENCIES = \
+	cxxopts \
 	fmt \
 	icu \
 	jsoncpp \
@@ -91,6 +92,13 @@ GERBERA_DEPENDENCIES += libupnp
 GERBERA_CONF_OPTS += -DWITH_NPUPNP=OFF
 endif
 
+ifeq ($(BR2_PACKAGE_LIBPQXX),y)
+GERBERA_DEPENDENCIES += libpqxx
+GERBERA_CONF_OPTS += -DWITH_PGSQL=ON
+else
+GERBERA_CONF_OPTS += -DWITH_PGSQL=OFF
+endif
+
 ifeq ($(BR2_PACKAGE_MARIADB),y)
 GERBERA_DEPENDENCIES += mariadb
 GERBERA_CONF_OPTS += -DWITH_MYSQL=ON
@@ -112,6 +120,13 @@ else
 GERBERA_CONF_OPTS += -DWITH_TAGLIB=OFF
 endif
 
+ifeq ($(BR2_PACKAGE_LIBZIPPP),y)
+GERBERA_DEPENDENCIES += libzip libzippp
+GERBERA_CONF_OPTS += -DWITH_ZIP=ON
+else
+GERBERA_CONF_OPTS += -DWITH_ZIP=OFF
+endif
+
 # gerbera does not provide a default configuration file, it can be
 # created during run time through --create-config:
 # http://docs.gerbera.io/en/latest/config-overview.html#generating-configuration
-- 
2.47.3

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

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [Buildroot] [PATCH 1/4] package/libzippp: new package
  2026-03-15 13:16 [Buildroot] [PATCH 1/4] package/libzippp: new package Bernd Kuhls
                   ` (2 preceding siblings ...)
  2026-03-15 13:16 ` [Buildroot] [PATCH 4/4] package/gerbera: bump version to 3.2.0 Bernd Kuhls
@ 2026-03-21 21:17 ` Julien Olivain via buildroot
  3 siblings, 0 replies; 5+ messages in thread
From: Julien Olivain via buildroot @ 2026-03-21 21:17 UTC (permalink / raw)
  To: Bernd Kuhls; +Cc: buildroot, Fabrice Fontaine, James Knight

On 15/03/2026 14:16, Bernd Kuhls wrote:
> The package will be used as an optional dependency by the upcoming
> gerbera bump.
> 
> Signed-off-by: Bernd Kuhls <bernd@kuhls.net>

Series applied to master, thanks.
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-03-21 21:18 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-15 13:16 [Buildroot] [PATCH 1/4] package/libzippp: new package Bernd Kuhls
2026-03-15 13:16 ` [Buildroot] [PATCH 2/4] package/cxxopts: " Bernd Kuhls
2026-03-15 13:16 ` [Buildroot] [PATCH 3/4] package/libpqxx: switch to CMake Bernd Kuhls
2026-03-15 13:16 ` [Buildroot] [PATCH 4/4] package/gerbera: bump version to 3.2.0 Bernd Kuhls
2026-03-21 21:17 ` [Buildroot] [PATCH 1/4] package/libzippp: new package Julien Olivain via buildroot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox