All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] package/pugixml: drop BR2_PACKAGE_PUGIXML_HEADER_ONLY
@ 2021-01-28 17:29 Fabrice Fontaine
  2021-01-31 22:30 ` Thomas Petazzoni
  0 siblings, 1 reply; 4+ messages in thread
From: Fabrice Fontaine @ 2021-01-28 17:29 UTC (permalink / raw)
  To: buildroot

Drop BR2_PACKAGE_PUGIXML_HEADER_ONLY which raises a build failure with
gerbera (the only package that is using pugixml). Indeed, there is two
issues:
 - gerbera is not aware that it must define PUGIXML_HEADER_ONLY
 - pugixml.cpp is not available in the staging directory so gerbera
   can't use it

It should be noted that pugixml continues to install a (non working)
library even when PUGIXML_HEADER_ONLY is enabled resulting in a build
failure at linking stage instead of configure step:

[100%] Linking CXX executable gerbera
/home/buildroot/autobuild/run/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-musleabihf/8.3.0/../../../../arm-buildroot-linux-musleabihf/bin/ld: liblibgerbera.a(config_manager.cc.o): in function `ConfigManager::getElement(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const':
config_manager.cc:(.text+0x4d8): undefined reference to `pugi::xml_document::document_element() const'

Fixes:
 - http://autobuild.buildroot.org/results/9c1919bacd23da0505a4eb828a806997a23b640f

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 Config.in.legacy           | 5 +++++
 package/pugixml/Config.in  | 9 ---------
 package/pugixml/pugixml.mk | 3 ---
 3 files changed, 5 insertions(+), 12 deletions(-)

diff --git a/Config.in.legacy b/Config.in.legacy
index 2bf39d7175..4607528a75 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -146,6 +146,11 @@ endif
 
 comment "Legacy options removed in 2021.02"
 
+config BR2_PACKAGE_PUGIXML_HEADER_ONLY
+	bool "pugixml header-only support removed"
+	help
+	  The support for pugixml header-only mode has been removed.
+
 config BR2_PACKAGE_LIBUPNP18
 	bool "libupnp18 package 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 800a3836ce..14a3b7954d 100644
--- a/package/pugixml/pugixml.mk
+++ b/package/pugixml/pugixml.mk
@@ -23,9 +23,6 @@ endif
 ifeq ($(BR2_PACKAGE_PUGIXML_COMPACT),y)
 PUGIXML_BUILD_DEFINES += PUGIXML_COMPACT
 endif
-ifeq ($(BR2_PACKAGE_PUGIXML_HEADER_ONLY),y)
-PUGIXML_BUILD_DEFINES += PUGIXML_HEADER_ONLY
-endif
 
 ifdef PUGIXML_BUILD_DEFINES
 PUGIXML_CONF_OPTS += -DBUILD_DEFINES="$(subst $(space),;,$(PUGIXML_BUILD_DEFINES))"
-- 
2.29.2

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

* [Buildroot] [PATCH 1/1] package/pugixml: drop BR2_PACKAGE_PUGIXML_HEADER_ONLY
  2021-01-28 17:29 [Buildroot] [PATCH 1/1] package/pugixml: drop BR2_PACKAGE_PUGIXML_HEADER_ONLY Fabrice Fontaine
@ 2021-01-31 22:30 ` Thomas Petazzoni
  2021-02-01  7:57   ` Fabrice Fontaine
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Petazzoni @ 2021-01-31 22:30 UTC (permalink / raw)
  To: buildroot

On Thu, 28 Jan 2021 18:29:35 +0100
Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:

> Drop BR2_PACKAGE_PUGIXML_HEADER_ONLY which raises a build failure with
> gerbera (the only package that is using pugixml). Indeed, there is two
> issues:
>  - gerbera is not aware that it must define PUGIXML_HEADER_ONLY
>  - pugixml.cpp is not available in the staging directory so gerbera
>    can't use it
> 
> It should be noted that pugixml continues to install a (non working)
> library even when PUGIXML_HEADER_ONLY is enabled resulting in a build
> failure at linking stage instead of configure step:
> 
> [100%] Linking CXX executable gerbera
> /home/buildroot/autobuild/run/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-musleabihf/8.3.0/../../../../arm-buildroot-linux-musleabihf/bin/ld: liblibgerbera.a(config_manager.cc.o): in function `ConfigManager::getElement(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const':
> config_manager.cc:(.text+0x4d8): undefined reference to `pugi::xml_document::document_element() const'

This looks like an upstream bug in pugixml, isn't it ? We're using
pugixml 1.10, but a 1.11 has been released since then. Have you tried
that ? Did you ask upstream pugixml about this issue ?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH 1/1] package/pugixml: drop BR2_PACKAGE_PUGIXML_HEADER_ONLY
  2021-01-31 22:30 ` Thomas Petazzoni
@ 2021-02-01  7:57   ` Fabrice Fontaine
  2021-02-01 17:34     ` Fabrice Fontaine
  0 siblings, 1 reply; 4+ messages in thread
From: Fabrice Fontaine @ 2021-02-01  7:57 UTC (permalink / raw)
  To: buildroot

Hi Thomas,

Le dim. 31 janv. 2021 ? 23:30, Thomas Petazzoni
<thomas.petazzoni@bootlin.com> a ?crit :
>
> On Thu, 28 Jan 2021 18:29:35 +0100
> Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:
>
> > Drop BR2_PACKAGE_PUGIXML_HEADER_ONLY which raises a build failure with
> > gerbera (the only package that is using pugixml). Indeed, there is two
> > issues:
> >  - gerbera is not aware that it must define PUGIXML_HEADER_ONLY
> >  - pugixml.cpp is not available in the staging directory so gerbera
> >    can't use it
> >
> > It should be noted that pugixml continues to install a (non working)
> > library even when PUGIXML_HEADER_ONLY is enabled resulting in a build
> > failure at linking stage instead of configure step:
> >
> > [100%] Linking CXX executable gerbera
> > /home/buildroot/autobuild/run/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-musleabihf/8.3.0/../../../../arm-buildroot-linux-musleabihf/bin/ld: liblibgerbera.a(config_manager.cc.o): in function `ConfigManager::getElement(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const':
> > config_manager.cc:(.text+0x4d8): undefined reference to `pugi::xml_document::document_element() const'
>
> This looks like an upstream bug in pugixml, isn't it ? We're using
> pugixml 1.10, but a 1.11 has been released since then. Have you tried
> that ? Did you ask upstream pugixml about this issue ?
It also fails with 1.11. Following your advice, I found that this
issue has already been reported:
https://github.com/zeux/pugixml/issues/200
The answer was: "wontfix" with "Since I don't maintain pugixml
packages and the packaging
for Ubuntu seems appropriate (even though it doesn't support
header-only builds, if you
need them you should bundle pugixml with your app), I'm closing this."
>
> Thanks!
>
> Thomas
> --
> Thomas Petazzoni, CTO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com
Best Regards,

Fabrice

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

* [Buildroot] [PATCH 1/1] package/pugixml: drop BR2_PACKAGE_PUGIXML_HEADER_ONLY
  2021-02-01  7:57   ` Fabrice Fontaine
@ 2021-02-01 17:34     ` Fabrice Fontaine
  0 siblings, 0 replies; 4+ messages in thread
From: Fabrice Fontaine @ 2021-02-01 17:34 UTC (permalink / raw)
  To: buildroot

Le lun. 1 f?vr. 2021 ? 08:57, Fabrice Fontaine
<fontaine.fabrice@gmail.com> a ?crit :
>
> Hi Thomas,
>
> Le dim. 31 janv. 2021 ? 23:30, Thomas Petazzoni
> <thomas.petazzoni@bootlin.com> a ?crit :
> >
> > On Thu, 28 Jan 2021 18:29:35 +0100
> > Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:
> >
> > > Drop BR2_PACKAGE_PUGIXML_HEADER_ONLY which raises a build failure with
> > > gerbera (the only package that is using pugixml). Indeed, there is two
> > > issues:
> > >  - gerbera is not aware that it must define PUGIXML_HEADER_ONLY
> > >  - pugixml.cpp is not available in the staging directory so gerbera
> > >    can't use it
> > >
> > > It should be noted that pugixml continues to install a (non working)
> > > library even when PUGIXML_HEADER_ONLY is enabled resulting in a build
> > > failure at linking stage instead of configure step:
> > >
> > > [100%] Linking CXX executable gerbera
> > > /home/buildroot/autobuild/run/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-musleabihf/8.3.0/../../../../arm-buildroot-linux-musleabihf/bin/ld: liblibgerbera.a(config_manager.cc.o): in function `ConfigManager::getElement(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) const':
> > > config_manager.cc:(.text+0x4d8): undefined reference to `pugi::xml_document::document_element() const'
> >
> > This looks like an upstream bug in pugixml, isn't it ? We're using
> > pugixml 1.10, but a 1.11 has been released since then. Have you tried
> > that ? Did you ask upstream pugixml about this issue ?
> It also fails with 1.11. Following your advice, I found that this
> issue has already been reported:
> https://github.com/zeux/pugixml/issues/200
> The answer was: "wontfix" with "Since I don't maintain pugixml
> packages and the packaging
> for Ubuntu seems appropriate (even though it doesn't support
> header-only builds, if you
> need them you should bundle pugixml with your app), I'm closing this."
Finally, after more investigation, it seems that the latest version of
pugixml installs a working library even if the option is still
"broken".
I'll send a v2.
> >
> > Thanks!
> >
> > Thomas
> > --
> > Thomas Petazzoni, CTO, Bootlin
> > Embedded Linux and Kernel engineering
> > https://bootlin.com
> Best Regards,
>
> Fabrice
Best Regards,

Fabrice

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

end of thread, other threads:[~2021-02-01 17:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-28 17:29 [Buildroot] [PATCH 1/1] package/pugixml: drop BR2_PACKAGE_PUGIXML_HEADER_ONLY Fabrice Fontaine
2021-01-31 22:30 ` Thomas Petazzoni
2021-02-01  7:57   ` Fabrice Fontaine
2021-02-01 17:34     ` Fabrice Fontaine

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.