All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH]     add new library: libpugixml
@ 2016-09-04 21:08 Theo Debrouwere
  2016-09-05 20:47 ` Samuel Martin
                   ` (4 more replies)
  0 siblings, 5 replies; 17+ messages in thread
From: Theo Debrouwere @ 2016-09-04 21:08 UTC (permalink / raw)
  To: buildroot

From: Theo Debrouwere <t.debrouwere@televic.com>

    pugixml is a light-weight C++ XML processing library. It features:
    * DOM-like interface with rich traversal/modification capabilities
    * Extremely fast non-validating XML parser which constructs the DOM tree from an XML file/buffer
    * XPath 1.0 implementation for complex data-driven tree queries
    * Full Unicode support with Unicode interface variants and automatic encoding conversions

    Homepage: http://pugixml.org/
    Repository: https://github.com/zeux/pugixml

Signed-off-by: Theo Debrouwere <t.debrouwere@televic.com>
---
 package/Config.in                  |  1 +
 package/libpugixml/Config.in       | 15 +++++++++++++++
 package/libpugixml/libpugixml.hash |  2 ++
 package/libpugixml/libpugixml.mk   | 19 +++++++++++++++++++
 4 files changed, 37 insertions(+)
 create mode 100644 package/libpugixml/Config.in
 create mode 100644 package/libpugixml/libpugixml.hash
 create mode 100644 package/libpugixml/libpugixml.mk

diff --git a/package/Config.in b/package/Config.in
index 1e51a45..d0198ce 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1092,6 +1092,7 @@ menu "JSON/XML"
 	source "package/libxslt/Config.in"
 	source "package/libyaml/Config.in"
 	source "package/mxml/Config.in"
+	source "package/libpugixml/Config.in"
 	source "package/rapidjson/Config.in"
 	source "package/rapidxml/Config.in"
 	source "package/raptor/Config.in"
diff --git a/package/libpugixml/Config.in b/package/libpugixml/Config.in
new file mode 100644
index 0000000..17c6eec
--- /dev/null
+++ b/package/libpugixml/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_LIBPUGIXML
+	bool "libpugixml"
+	help
+	  Light-weight, simple and fast XML parser for C++ with XPath support
+
+	  Features:
+	  * DOM-like interface with rich traversal/modification capabilities
+	  * Extremely fast non-validating XML parser which constructs the DOM tree
+	    from an XML file/buffer
+	  * XPath 1.0 implementation for complex data-driven tree queries
+	  * Full Unicode support with Unicode interface variants and automatic
+	    encoding conversions
+
+	  http://pugixml.org/
+	  https://github.com/zeux/pugixml
diff --git a/package/libpugixml/libpugixml.hash b/package/libpugixml/libpugixml.hash
new file mode 100644
index 0000000..9007f7c
--- /dev/null
+++ b/package/libpugixml/libpugixml.hash
@@ -0,0 +1,2 @@
+# Locally computed:
+sha256  fbe10d46f61d769f7d92a296102e4e2bd3ee16130f11c5b10a1aae590ea1f5ca  pugixml-1.7.tar.gz
diff --git a/package/libpugixml/libpugixml.mk b/package/libpugixml/libpugixml.mk
new file mode 100644
index 0000000..3c9987e
--- /dev/null
+++ b/package/libpugixml/libpugixml.mk
@@ -0,0 +1,19 @@
+################################################################################
+#
+# libpugixml
+#
+################################################################################
+
+LIBPUGIXML_VERSION = 1.7
+LIBPUGIXML_SOURCE = pugixml-$(LIBPUGIXML_VERSION).tar.gz
+LIBPUGIXML_SITE = http://github.com/zeux/pugixml/releases/download/v$(LIBPUGIXML_VERSION)
+LIBPUGIXML_LICENSE = MIT
+LIBPUGIXML_LICENSE_FILES = docs/manual.html
+LIBPUGIXML_INSTALL_STAGING = YES
+
+LIBPUGIXML_SUBDIR = scripts
+
+# build libpugixml as a shared library
+LIBPUGIXML_CONF_OPTS = -DBUILD_SHARED_LIBS=ON
+
+$(eval $(cmake-package))
-- 
2.9.3

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

* [Buildroot] [PATCH] add new library: libpugixml
  2016-09-04 21:08 [Buildroot] [PATCH] add new library: libpugixml Theo Debrouwere
@ 2016-09-05 20:47 ` Samuel Martin
  2016-09-05 21:30 ` Thomas Petazzoni
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 17+ messages in thread
From: Samuel Martin @ 2016-09-05 20:47 UTC (permalink / raw)
  To: buildroot

Hi Theo, all,

Thanks for this contribution. Hereafter few comments inlined.

The subject should be: "libpugixml: new package"

On Sun, Sep 4, 2016 at 11:08 PM, Theo Debrouwere
<theo.debrouwere@skynet.be> wrote:
> From: Theo Debrouwere <t.debrouwere@televic.com>
>
>     pugixml is a light-weight C++ XML processing library. It features:
>     * DOM-like interface with rich traversal/modification capabilities
>     * Extremely fast non-validating XML parser which constructs the DOM tree from an XML file/buffer
>     * XPath 1.0 implementation for complex data-driven tree queries
>     * Full Unicode support with Unicode interface variants and automatic encoding conversions
>
>     Homepage: http://pugixml.org/
>     Repository: https://github.com/zeux/pugixml
>
> Signed-off-by: Theo Debrouwere <t.debrouwere@televic.com>
> ---
>  package/Config.in                  |  1 +
>  package/libpugixml/Config.in       | 15 +++++++++++++++
>  package/libpugixml/libpugixml.hash |  2 ++
>  package/libpugixml/libpugixml.mk   | 19 +++++++++++++++++++
>  4 files changed, 37 insertions(+)
>  create mode 100644 package/libpugixml/Config.in
>  create mode 100644 package/libpugixml/libpugixml.hash
>  create mode 100644 package/libpugixml/libpugixml.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index 1e51a45..d0198ce 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -1092,6 +1092,7 @@ menu "JSON/XML"
>         source "package/libxslt/Config.in"
>         source "package/libyaml/Config.in"
>         source "package/mxml/Config.in"
> +       source "package/libpugixml/Config.in"

Keep package list alphabetically sorted please.

>         source "package/rapidjson/Config.in"
>         source "package/rapidxml/Config.in"
>         source "package/raptor/Config.in"
> diff --git a/package/libpugixml/Config.in b/package/libpugixml/Config.in
> new file mode 100644
> index 0000000..17c6eec
> --- /dev/null
> +++ b/package/libpugixml/Config.in
> @@ -0,0 +1,15 @@
> +config BR2_PACKAGE_LIBPUGIXML
> +       bool "libpugixml"

Since it is a C++ project, it should depend on BR2_INSTALL_LIBSTDCPP, see [1].

> +       help
> +         Light-weight, simple and fast XML parser for C++ with XPath support
> +
> +         Features:
> +         * DOM-like interface with rich traversal/modification capabilities
> +         * Extremely fast non-validating XML parser which constructs the DOM tree
> +           from an XML file/buffer
> +         * XPath 1.0 implementation for complex data-driven tree queries
> +         * Full Unicode support with Unicode interface variants and automatic
> +           encoding conversions
> +
> +         http://pugixml.org/
> +         https://github.com/zeux/pugixml
> diff --git a/package/libpugixml/libpugixml.hash b/package/libpugixml/libpugixml.hash
> new file mode 100644
> index 0000000..9007f7c
> --- /dev/null
> +++ b/package/libpugixml/libpugixml.hash
> @@ -0,0 +1,2 @@
> +# Locally computed:
> +sha256  fbe10d46f61d769f7d92a296102e4e2bd3ee16130f11c5b10a1aae590ea1f5ca  pugixml-1.7.tar.gz
> diff --git a/package/libpugixml/libpugixml.mk b/package/libpugixml/libpugixml.mk
> new file mode 100644
> index 0000000..3c9987e
> --- /dev/null
> +++ b/package/libpugixml/libpugixml.mk
> @@ -0,0 +1,19 @@
> +################################################################################
> +#
> +# libpugixml
> +#
> +################################################################################
> +
> +LIBPUGIXML_VERSION = 1.7
> +LIBPUGIXML_SOURCE = pugixml-$(LIBPUGIXML_VERSION).tar.gz
> +LIBPUGIXML_SITE = http://github.com/zeux/pugixml/releases/download/v$(LIBPUGIXML_VERSION)
> +LIBPUGIXML_LICENSE = MIT
> +LIBPUGIXML_LICENSE_FILES = docs/manual.html
> +LIBPUGIXML_INSTALL_STAGING = YES
> +
> +LIBPUGIXML_SUBDIR = scripts
> +
> +# build libpugixml as a shared library
> +LIBPUGIXML_CONF_OPTS = -DBUILD_SHARED_LIBS=ON

Please do not do that, this will break static only build.
This flag is automatically driven by the cmake infrastructure
depending on kind of build (shared lib only, shared + static lib or
static lib only), check the cmake infrastructure reference section in
the manual [2].
Note that, in case of shared + static lib build, if the build-system
supports building only one kind of libs, shared libs is prefered (see
[3]).

If you really want to forbid the static build of the library, then
consider using "depends on !BR2_STATIC_LIBS", see the package section
in the manual [1].

> +
> +$(eval $(cmake-package))
> --
> 2.9.3
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

[1] http://nightly.buildroot.org/manual.html#dependencies-target-toolchain-options
[2] http://nightly.buildroot.org/manual.html#cmake-package-reference
[3] https://github.com/buildroot/buildroot/blob/master/package/pkg-cmake.mk#L100

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH]     add new library: libpugixml
  2016-09-04 21:08 [Buildroot] [PATCH] add new library: libpugixml Theo Debrouwere
  2016-09-05 20:47 ` Samuel Martin
@ 2016-09-05 21:30 ` Thomas Petazzoni
  2016-09-06 12:07   ` Theo Debrouwere
  2016-09-05 22:15 ` Arnout Vandecappelle
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 17+ messages in thread
From: Thomas Petazzoni @ 2016-09-05 21:30 UTC (permalink / raw)
  To: buildroot

Hello,

Thanks for your contribution!

This review is in addition to what Samuel Martin already said on the
same patch.

On Sun,  4 Sep 2016 23:08:46 +0200, Theo Debrouwere wrote:

> +LIBPUGIXML_VERSION = 1.7
> +LIBPUGIXML_SOURCE = pugixml-$(LIBPUGIXML_VERSION).tar.gz

Please use pugixml for the package name, since it's the upstream name.
Then you can drop this line as the value will be the default.

> +LIBPUGIXML_SITE = http://github.com/zeux/pugixml/releases/download/v$(LIBPUGIXML_VERSION)
> +LIBPUGIXML_LICENSE = MIT
> +LIBPUGIXML_LICENSE_FILES = docs/manual.html

Using an HTML file here is not really appropriate, as we concatenate
all license files into a big text file, so it's not really going to
look nice :/

The readme.txt is good enough as a license file.

> +LIBPUGIXML_INSTALL_STAGING = YES
> +
> +LIBPUGIXML_SUBDIR = scripts

Hum, why?

> +
> +# build libpugixml as a shared library
> +LIBPUGIXML_CONF_OPTS = -DBUILD_SHARED_LIBS=ON
> +
> +$(eval $(cmake-package))

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

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

* [Buildroot] [PATCH] add new library: libpugixml
  2016-09-04 21:08 [Buildroot] [PATCH] add new library: libpugixml Theo Debrouwere
  2016-09-05 20:47 ` Samuel Martin
  2016-09-05 21:30 ` Thomas Petazzoni
@ 2016-09-05 22:15 ` Arnout Vandecappelle
  2016-09-07 15:21 ` [Buildroot] pugixml: new package Theo Debrouwere
  2016-09-07 15:37 ` Theo Debrouwere
  4 siblings, 0 replies; 17+ messages in thread
From: Arnout Vandecappelle @ 2016-09-05 22:15 UTC (permalink / raw)
  To: buildroot

 Hi Theo,

 In addition to what the other two have commented...

On 04-09-16 23:08, Theo Debrouwere wrote:
> From: Theo Debrouwere <t.debrouwere@televic.com>
> 
>     pugixml is a light-weight C++ XML processing library. It features:

 Since upstream calls it pugixml (without lib- prefix), the buildroot package
should be named the same.

>     * DOM-like interface with rich traversal/modification capabilities
>     * Extremely fast non-validating XML parser which constructs the DOM tree from an XML file/buffer
>     * XPath 1.0 implementation for complex data-driven tree queries
>     * Full Unicode support with Unicode interface variants and automatic encoding conversions
> 
>     Homepage: http://pugixml.org/
>     Repository: https://github.com/zeux/pugixml
> 
> Signed-off-by: Theo Debrouwere <t.debrouwere@televic.com>
> ---
>  package/Config.in                  |  1 +
>  package/libpugixml/Config.in       | 15 +++++++++++++++
>  package/libpugixml/libpugixml.hash |  2 ++
>  package/libpugixml/libpugixml.mk   | 19 +++++++++++++++++++
>  4 files changed, 37 insertions(+)
>  create mode 100644 package/libpugixml/Config.in
>  create mode 100644 package/libpugixml/libpugixml.hash
>  create mode 100644 package/libpugixml/libpugixml.mk
> 
> diff --git a/package/Config.in b/package/Config.in
> index 1e51a45..d0198ce 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -1092,6 +1092,7 @@ menu "JSON/XML"
>  	source "package/libxslt/Config.in"
>  	source "package/libyaml/Config.in"
>  	source "package/mxml/Config.in"
> +	source "package/libpugixml/Config.in"

 ... and then it's in the right place here :-)

>  	source "package/rapidjson/Config.in"
>  	source "package/rapidxml/Config.in"
>  	source "package/raptor/Config.in"
> diff --git a/package/libpugixml/Config.in b/package/libpugixml/Config.in
> new file mode 100644
> index 0000000..17c6eec
> --- /dev/null
> +++ b/package/libpugixml/Config.in
> @@ -0,0 +1,15 @@
> +config BR2_PACKAGE_LIBPUGIXML
> +	bool "libpugixml"
> +	help
> +	  Light-weight, simple and fast XML parser for C++ with XPath support
> +
> +	  Features:
> +	  * DOM-like interface with rich traversal/modification capabilities
> +	  * Extremely fast non-validating XML parser which constructs the DOM tree
> +	    from an XML file/buffer
> +	  * XPath 1.0 implementation for complex data-driven tree queries
> +	  * Full Unicode support with Unicode interface variants and automatic
> +	    encoding conversions
> +
> +	  http://pugixml.org/
> +	  https://github.com/zeux/pugixml
> diff --git a/package/libpugixml/libpugixml.hash b/package/libpugixml/libpugixml.hash
> new file mode 100644
> index 0000000..9007f7c
> --- /dev/null
> +++ b/package/libpugixml/libpugixml.hash
> @@ -0,0 +1,2 @@
> +# Locally computed:
> +sha256  fbe10d46f61d769f7d92a296102e4e2bd3ee16130f11c5b10a1aae590ea1f5ca  pugixml-1.7.tar.gz
> diff --git a/package/libpugixml/libpugixml.mk b/package/libpugixml/libpugixml.mk
> new file mode 100644
> index 0000000..3c9987e
> --- /dev/null
> +++ b/package/libpugixml/libpugixml.mk
> @@ -0,0 +1,19 @@
> +################################################################################
> +#
> +# libpugixml
> +#
> +################################################################################
> +
> +LIBPUGIXML_VERSION = 1.7
> +LIBPUGIXML_SOURCE = pugixml-$(LIBPUGIXML_VERSION).tar.gz

 If the package is called pugixml, this line isn't needed.


 Regards,
 Arnout


> +LIBPUGIXML_SITE = http://github.com/zeux/pugixml/releases/download/v$(LIBPUGIXML_VERSION)
> +LIBPUGIXML_LICENSE = MIT
> +LIBPUGIXML_LICENSE_FILES = docs/manual.html
> +LIBPUGIXML_INSTALL_STAGING = YES
> +
> +LIBPUGIXML_SUBDIR = scripts
> +
> +# build libpugixml as a shared library
> +LIBPUGIXML_CONF_OPTS = -DBUILD_SHARED_LIBS=ON
> +
> +$(eval $(cmake-package))
> 

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

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

* [Buildroot] [PATCH]     add new library: libpugixml
  2016-09-05 21:30 ` Thomas Petazzoni
@ 2016-09-06 12:07   ` Theo Debrouwere
  2016-09-09 12:14     ` Thomas Petazzoni
  0 siblings, 1 reply; 17+ messages in thread
From: Theo Debrouwere @ 2016-09-06 12:07 UTC (permalink / raw)
  To: buildroot

Hi,

Thanks for the pointers.
I'm cleaning up the patches & I'll resubmit them.

One question though:

> The readme.txt is good enough as a license file.
> 
> > +LIBPUGIXML_INSTALL_STAGING = YES
> > +
> > +LIBPUGIXML_SUBDIR = scripts
> 
> Hum, why?

Is this about the SUBDIR option?

The CMakeLists.txt file is in a subfolder called scripts,
so, it seems that I need this? Is there another option/setting?

Or should I add a comment about it?

I'm not sure what you are asking?

Theo

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

* [Buildroot] pugixml: new package
  2016-09-04 21:08 [Buildroot] [PATCH] add new library: libpugixml Theo Debrouwere
                   ` (2 preceding siblings ...)
  2016-09-05 22:15 ` Arnout Vandecappelle
@ 2016-09-07 15:21 ` Theo Debrouwere
  2016-09-07 15:37 ` Theo Debrouwere
  4 siblings, 0 replies; 17+ messages in thread
From: Theo Debrouwere @ 2016-09-07 15:21 UTC (permalink / raw)
  To: buildroot


I fixed all the mentioned issues, except:
> +LIBPUGIXML_SUBDIR = scripts

In this release, CMakelists.txt is located in a subfolder.

This has been fixed in the git tree, but that hasn't been released yet.

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

* [Buildroot] pugixml: new package
  2016-09-04 21:08 [Buildroot] [PATCH] add new library: libpugixml Theo Debrouwere
                   ` (3 preceding siblings ...)
  2016-09-07 15:21 ` [Buildroot] pugixml: new package Theo Debrouwere
@ 2016-09-07 15:37 ` Theo Debrouwere
  2016-09-07 15:37   ` [Buildroot] [PATCH] " Theo Debrouwere
  4 siblings, 1 reply; 17+ messages in thread
From: Theo Debrouwere @ 2016-09-07 15:37 UTC (permalink / raw)
  To: buildroot

I've fixed the remarks, except:

LIBPUGIXML_SUBDIR = scripts

The location of the current release is inside a subfolder.
This has been fixed in the git tree, but isn't present in the release itself.

Theo

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

* [Buildroot] [PATCH] pugixml: new package
  2016-09-07 15:37 ` Theo Debrouwere
@ 2016-09-07 15:37   ` Theo Debrouwere
  2016-09-07 19:44     ` Peter Korsgaard
  2016-09-11 21:08     ` Thomas Petazzoni
  0 siblings, 2 replies; 17+ messages in thread
From: Theo Debrouwere @ 2016-09-07 15:37 UTC (permalink / raw)
  To: buildroot

From: Theo Debrouwere <t.debrouwere@televic.com>

pugixml is a light-weight C++ XML processing library. It features:
* DOM-like interface with rich traversal/modification capabilities
* Extremely fast non-validating XML parser which constructs the DOM tree from an XML file/buffer
* XPath 1.0 implementation for complex data-driven tree queries
* Full Unicode support with Unicode interface variants and automatic encoding conversions

Homepage: http://pugixml.org/
Repository: https://github.com/zeux/pugixml

Signed-off-by: Theo Debrouwere <t.debrouwere@televic.com>
---
 package/Config.in            |  1 +
 package/pugixml/Config.in    | 16 ++++++++++++++++
 package/pugixml/pugixml.hash |  2 ++
 package/pugixml/pugixml.mk   | 15 +++++++++++++++
 4 files changed, 34 insertions(+)
 create mode 100644 package/pugixml/Config.in
 create mode 100644 package/pugixml/pugixml.hash
 create mode 100644 package/pugixml/pugixml.mk

diff --git a/package/Config.in b/package/Config.in
index 1e51a45..8d864bc 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1092,6 +1092,7 @@ menu "JSON/XML"
 	source "package/libxslt/Config.in"
 	source "package/libyaml/Config.in"
 	source "package/mxml/Config.in"
+	source "package/pugixml/Config.in"
 	source "package/rapidjson/Config.in"
 	source "package/rapidxml/Config.in"
 	source "package/raptor/Config.in"
diff --git a/package/pugixml/Config.in b/package/pugixml/Config.in
new file mode 100644
index 0000000..5310b10
--- /dev/null
+++ b/package/pugixml/Config.in
@@ -0,0 +1,16 @@
+config BR2_PACKAGE_PUGIXML
+	bool "pugixml"
+	depends on BR2_INSTALL_LIBSTDCPP
+	help
+	  Light-weight, simple and fast XML parser for C++ with XPath support
+
+	  Features:
+	  * DOM-like interface with rich traversal/modification capabilities
+	  * Extremely fast non-validating XML parser which constructs the DOM tree
+	    from an XML file/buffer
+	  * XPath 1.0 implementation for complex data-driven tree queries
+	  * Full Unicode support with Unicode interface variants and automatic
+	    encoding conversions
+
+	  http://pugixml.org/
+	  https://github.com/zeux/pugixml
diff --git a/package/pugixml/pugixml.hash b/package/pugixml/pugixml.hash
new file mode 100644
index 0000000..9007f7c
--- /dev/null
+++ b/package/pugixml/pugixml.hash
@@ -0,0 +1,2 @@
+# Locally computed:
+sha256  fbe10d46f61d769f7d92a296102e4e2bd3ee16130f11c5b10a1aae590ea1f5ca  pugixml-1.7.tar.gz
diff --git a/package/pugixml/pugixml.mk b/package/pugixml/pugixml.mk
new file mode 100644
index 0000000..2e4f0ce
--- /dev/null
+++ b/package/pugixml/pugixml.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# pugixml
+#
+################################################################################
+
+PUGIXML_VERSION = 1.7
+PUGIXML_SITE = http://github.com/zeux/pugixml/releases/download/v$(PUGIXML_VERSION)
+PUGIXML_LICENSE = MIT
+PUGIXML_LICENSE_FILES = readme.txt
+PUGIXML_INSTALL_STAGING = YES
+
+PUGIXML_SUBDIR = scripts
+
+$(eval $(cmake-package))
-- 
2.8.1

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

* [Buildroot] [PATCH] pugixml: new package
  2016-09-07 15:37   ` [Buildroot] [PATCH] " Theo Debrouwere
@ 2016-09-07 19:44     ` Peter Korsgaard
  2016-09-11 21:08     ` Thomas Petazzoni
  1 sibling, 0 replies; 17+ messages in thread
From: Peter Korsgaard @ 2016-09-07 19:44 UTC (permalink / raw)
  To: buildroot

>>>>> "Theo" == Theo Debrouwere <theo.debrouwere@skynet.be> writes:

 > From: Theo Debrouwere <t.debrouwere@televic.com>
 > pugixml is a light-weight C++ XML processing library. It features:
 > * DOM-like interface with rich traversal/modification capabilities
 > * Extremely fast non-validating XML parser which constructs the DOM tree from an XML file/buffer
 > * XPath 1.0 implementation for complex data-driven tree queries
 > * Full Unicode support with Unicode interface variants and automatic encoding conversions

 > Homepage: http://pugixml.org/
 > Repository: https://github.com/zeux/pugixml

 > Signed-off-by: Theo Debrouwere <t.debrouwere@televic.com>

Committed, thanks.

-- 
Bye, Peter Korsgaard

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

* [Buildroot] [PATCH]     add new library: libpugixml
  2016-09-06 12:07   ` Theo Debrouwere
@ 2016-09-09 12:14     ` Thomas Petazzoni
  0 siblings, 0 replies; 17+ messages in thread
From: Thomas Petazzoni @ 2016-09-09 12:14 UTC (permalink / raw)
  To: buildroot

Hello,

On Tue, 6 Sep 2016 14:07:39 +0200, Theo Debrouwere wrote:

> > The readme.txt is good enough as a license file.
> >   
> > > +LIBPUGIXML_INSTALL_STAGING = YES
> > > +
> > > +LIBPUGIXML_SUBDIR = scripts  
> > 
> > Hum, why?  
> 
> Is this about the SUBDIR option?
> 
> The CMakeLists.txt file is in a subfolder called scripts,
> so, it seems that I need this? Is there another option/setting?
> 
> Or should I add a comment about it?
> 
> I'm not sure what you are asking?

What confused me is that in the latest version of pugixml (i.e master
branch), the CMakeLists.txt is directly at the root of the project:

  https://github.com/zeux/pugixml

However, since you are packaging the 1.7 version, which is a bit older
than the master branch, the CMakeLists.txt is indeed inside the
scripts/ subdirectory:

  https://github.com/zeux/pugixml/tree/v1.7

So, it makes complete sense to use the SUBDIR option in this case. It's
just that I was confused when looking at the Github repository, as I
was looking at the master branch.

Thanks for your contribution!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

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

* [Buildroot] [PATCH] pugixml: new package
  2016-09-07 15:37   ` [Buildroot] [PATCH] " Theo Debrouwere
  2016-09-07 19:44     ` Peter Korsgaard
@ 2016-09-11 21:08     ` Thomas Petazzoni
  2016-09-11 21:56       ` Theo Debrouwere
  1 sibling, 1 reply; 17+ messages in thread
From: Thomas Petazzoni @ 2016-09-11 21:08 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed,  7 Sep 2016 17:37:07 +0200, Theo Debrouwere wrote:
> From: Theo Debrouwere <t.debrouwere@televic.com>
> 
> pugixml is a light-weight C++ XML processing library. It features:
> * DOM-like interface with rich traversal/modification capabilities
> * Extremely fast non-validating XML parser which constructs the DOM tree from an XML file/buffer
> * XPath 1.0 implementation for complex data-driven tree queries
> * Full Unicode support with Unicode interface variants and automatic encoding conversions
> 
> Homepage: http://pugixml.org/
> Repository: https://github.com/zeux/pugixml
> 
> Signed-off-by: Theo Debrouwere <t.debrouwere@televic.com>

This new package is causing a number of build failures. See:

  http://autobuild.buildroot.net/?reason=pugixml-1.7

Could you have a look?

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

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

* [Buildroot] [PATCH] pugixml: new package
  2016-09-11 21:08     ` Thomas Petazzoni
@ 2016-09-11 21:56       ` Theo Debrouwere
  2016-09-11 22:15         ` Arnout Vandecappelle
  2016-09-12  7:19         ` Thomas Petazzoni
  0 siblings, 2 replies; 17+ messages in thread
From: Theo Debrouwere @ 2016-09-11 21:56 UTC (permalink / raw)
  To: buildroot

Hello,

> This new package is causing a number of build failures. See:
>
>   http://autobuild.buildroot.net/?reason=pugixml-1.7
>
> Could you have a look?


The bfin issues seems to be caused by a fault in the CMakelist.txt file.
Which seems to have been solved in the upstream git repo.
I will test the fix & verify that it solves the issue.

If it does, I'll provide the fix as a patch on 1.7, unless you/someone
else prefers bumping to an unreleased git commit.


The arc issue: the compiler complains about an internal error.
I'm not sure if this is a pugimxl issue, but I'll reproduce it
tomorrow. (currently building bfin)



Theo

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

* [Buildroot] [PATCH] pugixml: new package
  2016-09-11 21:56       ` Theo Debrouwere
@ 2016-09-11 22:15         ` Arnout Vandecappelle
  2016-09-12  6:47           ` Vlad Zakharov
  2016-09-12  7:19         ` Thomas Petazzoni
  1 sibling, 1 reply; 17+ messages in thread
From: Arnout Vandecappelle @ 2016-09-11 22:15 UTC (permalink / raw)
  To: buildroot



On 11-09-16 23:56, Theo Debrouwere wrote:
> Hello,
> 
>> This new package is causing a number of build failures. See:
>>
>>   http://autobuild.buildroot.net/?reason=pugixml-1.7
>>
>> Could you have a look?
> 
> 
> The bfin issues seems to be caused by a fault in the CMakelist.txt file.
> Which seems to have been solved in the upstream git repo.
> I will test the fix & verify that it solves the issue.
> 
> If it does, I'll provide the fix as a patch on 1.7, unless you/someone
> else prefers bumping to an unreleased git commit.

 No, better cherry-pick the patch. If the upstream patch can be applied as-is,
we prefer pointing PUGIXML_PATCH to the upstream commit (and adding it to the
hash file) rather than saving a copy in buildroot.

> 
> 
> The arc issue: the compiler complains about an internal error.
> I'm not sure if this is a pugimxl issue, but I'll reproduce it
> tomorrow. (currently building bfin)

 Compiler errors on ARC are handled pretty quickly by the ARC team. Just to be
sure, I'm adding Vlad in Cc.


 Regards,
 Arnout

> 
> 
> 
> Theo
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
> 

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

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

* [Buildroot] [PATCH] pugixml: new package
  2016-09-11 22:15         ` Arnout Vandecappelle
@ 2016-09-12  6:47           ` Vlad Zakharov
  0 siblings, 0 replies; 17+ messages in thread
From: Vlad Zakharov @ 2016-09-12  6:47 UTC (permalink / raw)
  To: buildroot

Hi all,

On Mon, 2016-09-12 at 00:15 +0200, Arnout Vandecappelle wrote:
> 
> On 11-09-16 23:56, Theo Debrouwere wrote:
> > 
> > Hello,
> > 
> > > 
> > > This new package is causing a number of build failures. See:
> > > 
> > > ? http://autobuild.buildroot.net/?reason=pugixml-1.7
> > > 
> > > Could you have a look?
> > 
> > 
> > The bfin issues seems to be caused by a fault in the CMakelist.txt file.
> > Which seems to have been solved in the upstream git repo.
> > I will test the fix & verify that it solves the issue.
> > 
> > If it does, I'll provide the fix as a patch on 1.7, unless you/someone
> > else prefers bumping to an unreleased git commit.
> 
> ?No, better cherry-pick the patch. If the upstream patch can be applied as-is,
> we prefer pointing PUGIXML_PATCH to the upstream commit (and adding it to the
> hash file) rather than saving a copy in buildroot.
> 
> > 
> > 
> > 
> > The arc issue: the compiler complains about an internal error.
> > I'm not sure if this is a pugimxl issue, but I'll reproduce it
> > tomorrow. (currently building bfin)
> 
> ?Compiler errors on ARC are handled pretty quickly by the ARC team. Just to be
> sure, I'm adding Vlad in Cc.
> 
> 
> ?Regards,
> ?Arnout
> 
> > 
> > 
> > 
> > 
> > Theo
> > 
> > _______________________________________________
> > buildroot mailing list
> > buildroot at busybox.net
> > http://lists.busybox.net/mailman/listinfo/buildroot
> > 
> 

We know about that ARC compiler issue and working on it.?
I hope we will provide a fix soon.?

-- 
Best regards,
Vlad Zakharov <vzakhar@synopsys.com>

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

* [Buildroot] [PATCH] pugixml: new package
  2016-09-11 21:56       ` Theo Debrouwere
  2016-09-11 22:15         ` Arnout Vandecappelle
@ 2016-09-12  7:19         ` Thomas Petazzoni
  2016-09-12  8:14           ` [Buildroot] [PATCH] package/pugixml: Fix CMakelists.txt cxx_long_long_type bug Theo Debrouwere
  1 sibling, 1 reply; 17+ messages in thread
From: Thomas Petazzoni @ 2016-09-12  7:19 UTC (permalink / raw)
  To: buildroot

Hello,

Thanks for having looked into this!

On Sun, 11 Sep 2016 23:56:27 +0200, Theo Debrouwere wrote:

> The bfin issues seems to be caused by a fault in the CMakelist.txt file.
> Which seems to have been solved in the upstream git repo.
> I will test the fix & verify that it solves the issue.
> 
> If it does, I'll provide the fix as a patch on 1.7, unless you/someone
> else prefers bumping to an unreleased git commit.

The fix as a patch on 1.7 is probably the best solution for now, until
upstream makes a new release that includes the fix.

> The arc issue: the compiler complains about an internal error.
> I'm not sure if this is a pugimxl issue, but I'll reproduce it
> tomorrow. (currently building bfin)

The ARC issue is indeed a compiler problem, which is not directly
related to pugixml. The people taking care of the ARC architecture have
been notified of this build failure, and they regularly provide updates
to the ARC toolchain support in Buildroot.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

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

* [Buildroot] [PATCH] package/pugixml: Fix CMakelists.txt cxx_long_long_type bug.
  2016-09-12  7:19         ` Thomas Petazzoni
@ 2016-09-12  8:14           ` Theo Debrouwere
  2016-09-12  9:34             ` Thomas Petazzoni
  0 siblings, 1 reply; 17+ messages in thread
From: Theo Debrouwere @ 2016-09-12  8:14 UTC (permalink / raw)
  To: buildroot

CMakelist.txt tries to enable the cxx_long_long_type option,
even if the feature isn't available. (Which causes some builds to fail)

The included patch checks if the option is present before applying it.

The patch was backported from:
https://github.com/zeux/pugixml/commit/4dbb5646196a4a3cc94097f1473ef11d1d44df11

Signed-off-by: Theo Debrouwere <t.debrouwere@televic.com>
---
 .../0001-check-cxx_long_long_type-existence.patch  | 33 ++++++++++++++++++++++
 1 file changed, 33 insertions(+)
 create mode 100644 package/pugixml/0001-check-cxx_long_long_type-existence.patch

diff --git a/package/pugixml/0001-check-cxx_long_long_type-existence.patch b/package/pugixml/0001-check-cxx_long_long_type-existence.patch
new file mode 100644
index 0000000..a53c84a
--- /dev/null
+++ b/package/pugixml/0001-check-cxx_long_long_type-existence.patch
@@ -0,0 +1,33 @@
+From 6cfd9c14ced26c8220f7f7ea99610cbdbfb9eba7 Mon Sep 17 00:00:00 2001
+From: Theo Debrouwere <theo.debrouwere@skynet.be>
+Date: Mon, 12 Sep 2016 09:38:56 +0200
+Subject: [PATCH] Bugfix: check if cxx_long_long_type is present before
+ applying it.
+
+Check if cxx_long_long_type is present in the list of compiler features
+before adding it as a target_compile_feature.
+
+Patch was backported from
+https://github.com/zeux/pugixml/commit/4dbb5646196a4a3cc94097f1473ef11d1d44df11
+
+Signed-off-by: Theo Debrouwere <theo.debrouwere@skynet.be>
+---
+ scripts/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
+index 40a7ab0..6403753 100644
+--- a/scripts/CMakeLists.txt
++++ b/scripts/CMakeLists.txt
+@@ -26,7 +26,7 @@ else()
+ endif()
+ 
+ # Enable C++11 long long for compilers that are capable of it
+-if(NOT ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} STRLESS 3.1)
++if(NOT ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} STRLESS 3.1 AND ";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";cxx_long_long_type;")
+ 	target_compile_features(pugixml PUBLIC cxx_long_long_type)
+ endif()
+ 
+-- 
+2.9.3
+
-- 
2.8.1

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

* [Buildroot] [PATCH] package/pugixml: Fix CMakelists.txt cxx_long_long_type bug.
  2016-09-12  8:14           ` [Buildroot] [PATCH] package/pugixml: Fix CMakelists.txt cxx_long_long_type bug Theo Debrouwere
@ 2016-09-12  9:34             ` Thomas Petazzoni
  0 siblings, 0 replies; 17+ messages in thread
From: Thomas Petazzoni @ 2016-09-12  9:34 UTC (permalink / raw)
  To: buildroot

Hello,

On Mon, 12 Sep 2016 10:14:43 +0200, Theo Debrouwere wrote:
> CMakelist.txt tries to enable the cxx_long_long_type option,
> even if the feature isn't available. (Which causes some builds to fail)
> 
> The included patch checks if the option is present before applying it.
> 
> The patch was backported from:
> https://github.com/zeux/pugixml/commit/4dbb5646196a4a3cc94097f1473ef11d1d44df11
> 
> Signed-off-by: Theo Debrouwere <t.debrouwere@televic.com>
> ---
>  .../0001-check-cxx_long_long_type-existence.patch  | 33 ++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>  create mode 100644 package/pugixml/0001-check-cxx_long_long_type-existence.patch

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

end of thread, other threads:[~2016-09-12  9:34 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-04 21:08 [Buildroot] [PATCH] add new library: libpugixml Theo Debrouwere
2016-09-05 20:47 ` Samuel Martin
2016-09-05 21:30 ` Thomas Petazzoni
2016-09-06 12:07   ` Theo Debrouwere
2016-09-09 12:14     ` Thomas Petazzoni
2016-09-05 22:15 ` Arnout Vandecappelle
2016-09-07 15:21 ` [Buildroot] pugixml: new package Theo Debrouwere
2016-09-07 15:37 ` Theo Debrouwere
2016-09-07 15:37   ` [Buildroot] [PATCH] " Theo Debrouwere
2016-09-07 19:44     ` Peter Korsgaard
2016-09-11 21:08     ` Thomas Petazzoni
2016-09-11 21:56       ` Theo Debrouwere
2016-09-11 22:15         ` Arnout Vandecappelle
2016-09-12  6:47           ` Vlad Zakharov
2016-09-12  7:19         ` Thomas Petazzoni
2016-09-12  8:14           ` [Buildroot] [PATCH] package/pugixml: Fix CMakelists.txt cxx_long_long_type bug Theo Debrouwere
2016-09-12  9:34             ` Thomas Petazzoni

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.