From 6454358fe16912b17d56db6767cfac8d67c34204 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Tue, 28 Feb 2023 23:16:24 +0100 Subject: [PATCH] package/pugixml: drop header-only option Header-only option raises the following build failure with gerbera since commit cc3a4a7b1de7b158354c650d234339e8a969a730: /home/thomas/autobuild/instance-2/output-1/host/lib/gcc/nios2-buildroot-linux-gnu/10.4.0/../../../../nios2-buildroot-linux-gnu/bin/ld: CMakeFiles/gerbera.dir/src/main.cc.o: in function `ConfigGenerator::~ConfigGenerator()': /home/thomas/autobuild/instance-2/output-1/build/gerbera-1.10.0/src/config/config_generator.h:33: undefined reference to `pugi::xml_document::~xml_document()' This build failure can't be fixed by adding a !BR2_PACKAGE_PUGIXML_HEADER_ONLY dependency as it will create the following recursive dependency: package/gerbera/Config.in:1:error: recursive dependency detected! package/gerbera/Config.in:1: symbol BR2_PACKAGE_GERBERA depends on BR2_PACKAGE_PUGIXML_HEADER_ONLY package/pugixml/Config.in:42: symbol BR2_PACKAGE_PUGIXML_HEADER_ONLY depends on BR2_PACKAGE_PUGIXML package/pugixml/Config.in:1: symbol BR2_PACKAGE_PUGIXML is selected by BR2_PACKAGE_GERBERA Moreover, commit 48b2e50eb8df36e3e3ab18692bd9e0dde3b38702 stated that "Compact and header-only modes are not strictly needed for our use case, but we did the work anyway and may be useful for someone else." So dropping header-only seems to be the right approach Fixes: - http://autobuild.buildroot.org/results/800537a1ef5f48d24c20aad7a9c96c56dfdc77f5 Signed-off-by: Fabrice Fontaine Signed-off-by: Peter Korsgaard --- Config.in.legacy | 6 ++++++ package/pugixml/Config.in | 9 --------- package/pugixml/pugixml.mk | 4 ---- 3 files changed, 6 insertions(+), 13 deletions(-) diff --git a/Config.in.legacy b/Config.in.legacy index 381e1e3a8c..a31543d5fa 100644 --- a/Config.in.legacy +++ b/Config.in.legacy @@ -146,6 +146,12 @@ endif comment "Legacy options removed in 2023.02" +config BR2_PACKAGE_PUGIXML_HEADER_ONLY + bool "pugixml header-only removed" + select BR2_LEGACY + help + The header-only version raises a build failure with gerbera. + config BR2_PACKAGE_UCCP420WLAN bool "uccp420wlan removed" select BR2_LEGACY diff --git a/package/pugixml/Config.in b/package/pugixml/Config.in index 6b7d2e3259..d5a3cb3ebb 100644 --- a/package/pugixml/Config.in +++ b/package/pugixml/Config.in @@ -39,15 +39,6 @@ config BR2_PACKAGE_PUGIXML_COMPACT http://pugixml.org/docs/manual.html#dom.memory.compact -config BR2_PACKAGE_PUGIXML_HEADER_ONLY - bool "Enable header-only version" - help - All source code for pugixml will be included in every - translation unit that includes pugixml.hpp. This is how most - of Boost and STL libraries work. - - http://pugixml.org/docs/manual.html#install.building.header - endif comment "pugixml needs a toolchain w/ C++" diff --git a/package/pugixml/pugixml.mk b/package/pugixml/pugixml.mk index c8d59f0864..415227a40a 100644 --- a/package/pugixml/pugixml.mk +++ b/package/pugixml/pugixml.mk @@ -31,10 +31,6 @@ endif PUGIXML_BUILD_DEFINES += PUGIXML_HAS_LONG_LONG HOST_PUGIXML_BUILD_DEFINES += PUGIXML_HAS_LONG_LONG -ifeq ($(BR2_PACKAGE_PUGIXML_HEADER_ONLY),y) -PUGIXML_BUILD_DEFINES += PUGIXML_HEADER_ONLY -endif - PUGIXML_CONF_OPTS += -DPUGIXML_BUILD_DEFINES="$(subst $(space),;,$(PUGIXML_BUILD_DEFINES))" HOST_PUGIXML_CONF_OPTS += \