Skip to contentSkip to conversation

package/gerbera: bump to version 2.6.1

PATCH In review Michael Nosthoff via buildroot 1 participant 4 messages Nov 3, 2025 – Dec 26, 2025

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 package/gerbera: bump to version 2.6.1

- new dependencies on icu and jsoncpp
- fixes most deprecations of fmt >= 12

- add upstream patch which fixes another deprecation of fmt >=12

Release Notes:
https://github.com/gerbera/gerbera/releases/tag/v2.5.0
https://github.com/gerbera/gerbera/releases/tag/v2.6.0
https://github.com/gerbera/gerbera/releases/tag/v2.6.1

---
 package/gerbera/0001-fix_fmt_12.patch | 29 +++++++++++++++++++++++++++
 package/gerbera/Config.in             |  2 ++
 package/gerbera/gerbera.hash          |  2 +-
 package/gerbera/gerbera.mk            |  4 +++-
 4 files changed, 35 insertions(+), 2 deletions(-)
 create mode 100644 package/gerbera/0001-fix_fmt_12.patch
package/gerbera/0001-fix_fmt_12.patch new file +29 -0
new file mode 100644
index 0000000000..a10b78dae6
@@ -0,0 +1,29 @@
+From f8e158bc72986e46b93d05358c29db0c10f2fe9f Mon Sep 17 00:00:00 2001
+From: Karlchen <[email protected]>
+Date: Wed, 17 Sep 2025 21:18:49 +0200
+Subject: [PATCH] Update to fmt 12.0.0
+
+Signed-off-by: Michael Nosthoff <[email protected]>
+Upstream: https://github.com/gerbera/gerbera/commit/f8e158bc72986e46b93d05358c29db0c10f2fe9f
+[[email protected]: 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);
+ }
+ 
package/gerbera/Config.in +2 -0
index 46a163ec78..3372d86fba 100644
@@ -8,6 +8,8 @@ config BR2_PACKAGE_GERBERA
 	depends on !BR2_STATIC_LIBS
 	depends on BR2_USE_WCHAR # fmt
 	select BR2_PACKAGE_FMT
+	select BR2_PACKAGE_ICU
+	select BR2_PACKAGE_JSONCPP
 	select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
 	select BR2_PACKAGE_LIBUPNP if !BR2_PACKAGE_LIBNPUPNP
 	select BR2_PACKAGE_PUGIXML
package/gerbera/gerbera.hash +1 -1
index edbe655dde..3056ff11ac 100644
@@ -1,3 +1,3 @@
 # Locally computed:
-sha256  563ee3941b0347a91f5a3e9fe151032bd0e26868bfe7b7c68a7c095f8b07677b  gerbera-2.4.1.tar.gz
+sha256  6a7ed1c73bd86bdddd76bcb6c4bcd2e42788a20eb1f3165e0ea9f456abccd3ed  gerbera-2.6.1.tar.gz
 sha256  cae4138373be41fd2be75faf41ce7efbcf49fb17d0e05ad1c51cc01ac335b9b6  LICENSE.md
package/gerbera/gerbera.mk +3 -1
index 9434f6fe64..d2d68db686 100644
@@ -4,12 +4,14 @@
 #
 ################################################################################
 
-GERBERA_VERSION = 2.4.1
+GERBERA_VERSION = 2.6.1
 GERBERA_SITE = $(call github,gerbera,gerbera,v$(GERBERA_VERSION))
 GERBERA_LICENSE = GPL-2.0
 GERBERA_LICENSE_FILES = LICENSE.md
 GERBERA_DEPENDENCIES = \
 	fmt \
+	icu \
+	jsoncpp \
 	host-pkgconf \
 	pugixml \
 	spdlog \
Signature · 6 lines
2.43.0

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#1 lore raw

PATCH 2/2 package/fmt: bump to version 12.1.0

Release Notes:

https://github.com/fmtlib/fmt/releases/tag/12.1.0
https://github.com/fmtlib/fmt/releases/tag/12.0.0

---
 package/fmt/fmt.hash | 2 +-
 package/fmt/fmt.mk   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
package/fmt/fmt.hash +1 -1
index 29b2b13c66..76bdd3171b 100644
@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  203eb4e8aa0d746c62d8f903df58e0419e3751591bb53ff971096eaa0ebd4ec3  fmt-11.2.0.zip
+sha256  695fd197fa5aff8fc67b5f2bbc110490a875cdf7a41686ac8512fb480fa8ada7  fmt-12.1.0.zip
 sha256  07580f2a3b35709ce703d523f447b242f6dfec7582a8c0df102c7fa2849375f8  LICENSE
package/fmt/fmt.mk +1 -1
index dfb6fd3942..7d11cfddc3 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FMT_VERSION = 11.2.0
+FMT_VERSION = 12.1.0
 FMT_SITE = https://github.com/fmtlib/fmt/releases/download/$(FMT_VERSION)
 FMT_SOURCE = fmt-$(FMT_VERSION).zip
 FMT_LICENSE = MIT with exception
Signature · 6 lines
2.43.0

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#2 lore raw
In reply to Michael Nosthoff via buildroot
Quoted 11 lines · Michael Nosthoff via buildroot

- new dependencies on icu and jsoncpp
- fixes most deprecations of fmt >= 12

- add upstream patch which fixes another deprecation of fmt >=12

Release Notes:
https://github.com/gerbera/gerbera/releases/tag/v2.5.0
https://github.com/gerbera/gerbera/releases/tag/v2.6.0
https://github.com/gerbera/gerbera/releases/tag/v2.6.1

Series applied to master, thanks.
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot

#3 lore raw
In reply to Michael Nosthoff via buildroot

Hello Michael,

Quoted 4 lines · On Mon, 3 Nov 2025 12:52:07 +0100 Michael Nosthoff via buildroot…

- new dependencies on icu and jsoncpp
- fixes most deprecations of fmt >= 12

- add upstream patch which fixes another deprecation of fmt >=12

Thanks for this patch. However, I believe it breaks the build for the following configuration:

BR2_aarch64=y
BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set BR2_PACKAGE_LIBNPUPNP=y
BR2_PACKAGE_GERBERA=y
# BR2_TARGET_ROOTFS_TAR is not set

Note: this configuration uses BR2_PACKAGE_LIBNPUPNP instead of the default BR2_PACKAGE_LIBUPNP selected by gerbera.

The build failure goes like this:

In file included from /home/thomas/projets/br/all-fixes/output/build/gerbera-2.6.1/src/upnp/cont_dir_service.cc:51:
/home/thomas/projets/br/all-fixes/output/build/gerbera-2.6.1/src/upnp/cont_dir_service.cc: In member function ‘virtual bool ContentDirectoryService::processSubscriptionRequest(const SubscriptionRequest&)’:
/home/thomas/projets/br/all-fixes/output/build/gerbera-2.6.1/src/upnp/cont_dir_service.cc:451:57: error: cannot convert ‘const std::string’ {aka ‘const std::__cxx11::basic_string<char>’} to ‘const char*’

  451 |                serviceID, xml, request.getSubscriptionID());
      |                                ~~~~~~~~~~~~~~~~~~~~~~~~~^~
      |                                                         |
      |                                                         const std::string {aka const std::__cxx11::basic_string<char>}

/home/thomas/projets/br/all-fixes/output/build/gerbera-2.6.1/src/upnp/compat.h:83:147: note: in definition of macro ‘GrbUpnpAcceptSubscription’
83 | #define GrbUpnpAcceptSubscription(handle, udn, serviceId, xml, subsId) UpnpAcceptSubscriptionXML(handle, (udn).c_str(), (serviceId).c_str(), xml, subsId)
| ^~~~~~
In file included from /home/thomas/projets/br/all-fixes/output/build/gerbera-2.6.1/src/upnp/upnp_service.h:34,

                 from /home/thomas/projets/br/all-fixes/output/build/gerbera-2.6.1/src/upnp/cont_dir_service.h:37,
                 from /home/thomas/projets/br/all-fixes/output/build/gerbera-2.6.1/src/upnp/cont_dir_service.cc:35:
/home/thomas/projets/br/all-fixes/output/host/aarch64-buildroot-linux-gnu/sysroot/usr/include/npupnp/upnp.h:1514:20: note:   initializing argument 5 of ‘int UpnpAcceptSubscriptionXML(UpnpDevice_Handle, const char*, const char*, const std::string&, const char*)’
 1514 |     const Upnp_SID SubsId);
      |     ~~~~~~~~~~~~~~~^~~~~~

I am not 100% sure that this regression is caused by this bump: I tried to revert the bump, but then the build fails because fmt::localtime() no longer exists (this issue was fixed in gerbera 2.6.1).

I believe gerbera needs a later version of libnpupnp, even though the table in README.md states that 4.2.1 is the minimum version (and we have 4.2.1 in Buildroot).

Could you have a look at this issue?

Thanks a lot!

Thomas

Signature · 7 lines
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot