From 79a6b413f6197756c448fa20992de8b7591bdc56 Mon Sep 17 00:00:00 2001 From: Lukas Bulwahn Date: Thu, 25 Apr 2013 13:34:15 +0200 Subject: [PATCH] libtinyxml: removed recipe and now refer to meta-oe layer Instead of maintaining a copy of the tinyxml recipe from the meta-oe layer, we require that the installation also includes the meta-oe layer. We updated the README accordingly and also updated the description of the current setup. We also updated and tuned the CONTENT file. This commit resolves issue #45. --- CONTENT | 4 +- README | 10 +-- .../libtinyxml/enforce-use-stl.patch | 20 ------ .../libtinyxml/entity-encoding.patch | 62 ------------------- .../libtinyxml/libtinyxml_2.6.2.bb | 45 -------------- 5 files changed, 7 insertions(+), 134 deletions(-) delete mode 100644 recipes-support/libtinyxml/libtinyxml/enforce-use-stl.patch delete mode 100644 recipes-support/libtinyxml/libtinyxml/entity-encoding.patch delete mode 100644 recipes-support/libtinyxml/libtinyxml_2.6.2.bb diff --git a/CONTENT b/CONTENT index 11111e8..1ec44cd 100644 --- a/CONTENT +++ b/CONTENT @@ -5,6 +5,6 @@ CONTENT of the repository: * conf/layer.conf configuration file for this layer * classes/catkin.bbclass class for catkin-based packages * recipes-core/images recipes of images for native compilation of ROS -* recipes-devtools, recipes-support recipes of system prerequisites of ROS +* recipes-devtools recipes of system prerequisites of ROS * recipes-ros recipes for cross-compiling ROS packages - + diff --git a/README b/README index a854889..f362b30 100644 --- a/README +++ b/README @@ -34,9 +34,12 @@ STATE OF THIS WORK: - Cross compilation of ROS-groovy (under development) INSTALLATION/SETUP: - The repository only contains a layer for ROS that builds on top of the existing OpenEmbedded Core layer. + The repository only contains a layer for ROS that builds on top of the existing OpenEmbedded Core layer + and the meta-oe layer. + Currently, I work with - * commit 2587a33134fde80dd1367629d9def45ac70256ee of https://github.com/openembedded/oe-core + * commit 395b90054eccddc1c9062a9a8657ed4482b7710a of https://github.com/openembedded/oe-core + * commit 2a5dea2399e2be5e5d964eda7465dcaf4c2e152b of https://github.com/openembedded/meta-oe * commit 324ed96e28ec31cff8cef1824d20d40f9a5d46ad of git://git.openembedded.org/bitbake in the bitbake directory @@ -128,8 +131,5 @@ The log4cxx recipe originated from the recipe in the OpenEmbedded (Classic) Deve The core-image-ros-* recipes originated from the core-image-minimal recipe in OpenEmbedded Core (cf. http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-core/images/core-image-minimal.bb) licensed with the MIT License. -The libtinyxml recipe originated from the recipe in the OpenEmbedded meta layer - (cf. http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/libtinyxml) - licensed with the MIT License. The modified files are redistributed here under the same MIT License. diff --git a/recipes-support/libtinyxml/libtinyxml/enforce-use-stl.patch b/recipes-support/libtinyxml/libtinyxml/enforce-use-stl.patch deleted file mode 100644 index 88c962b..0000000 --- a/recipes-support/libtinyxml/libtinyxml/enforce-use-stl.patch +++ /dev/null @@ -1,20 +0,0 @@ -Description: TinyXml is built with TIXML_USE_STL, so we have to - enforce it when the library is used. -Author: Felix Geyer - -Upstream-Status: Pending - -diff -Nur tinyxml-2.5.3/tinyxml.h tinyxml-2.5.3.patch/tinyxml.h ---- tinyxml-2.5.3/tinyxml.h 2007-05-07 00:41:23.000000000 +0200 -+++ tinyxml-2.5.3.patch/tinyxml.h 2009-07-08 22:32:03.000000000 +0200 -@@ -26,6 +26,10 @@ - #ifndef TINYXML_INCLUDED - #define TINYXML_INCLUDED - -+#ifndef TIXML_USE_STL -+ #define TIXML_USE_STL -+#endif -+ - #ifdef _MSC_VER - #pragma warning( push ) - #pragma warning( disable : 4530 ) diff --git a/recipes-support/libtinyxml/libtinyxml/entity-encoding.patch b/recipes-support/libtinyxml/libtinyxml/entity-encoding.patch deleted file mode 100644 index b801506..0000000 --- a/recipes-support/libtinyxml/libtinyxml/entity-encoding.patch +++ /dev/null @@ -1,62 +0,0 @@ -Description: TinyXML incorrectly encodes text element containing - an ampersand followed by either x or #. - -Origin: http://sourceforge.net/tracker/index.php?func=detail&aid=3031828&group_id=13559&atid=313559 - -Upstream-Status: Pending - -diff -u -r1.105 tinyxml.cpp ---- a/tinyxml.cpp -+++ b/tinyxml.cpp -@@ -57,30 +57,7 @@ - { - unsigned char c = (unsigned char) str[i]; - -- if ( c == '&' -- && i < ( (int)str.length() - 2 ) -- && str[i+1] == '#' -- && str[i+2] == 'x' ) -- { -- // Hexadecimal character reference. -- // Pass through unchanged. -- // © -- copyright symbol, for example. -- // -- // The -1 is a bug fix from Rob Laveaux. It keeps -- // an overflow from happening if there is no ';'. -- // There are actually 2 ways to exit this loop - -- // while fails (error case) and break (semicolon found). -- // However, there is no mechanism (currently) for -- // this function to return an error. -- while ( i<(int)str.length()-1 ) -- { -- outString->append( str.c_str() + i, 1 ); -- ++i; -- if ( str[i] == ';' ) -- break; -- } -- } -- else if ( c == '&' ) -+ if ( c == '&' ) - { - outString->append( entity[0].str, entity[0].strLength ); - ++i; -diff -u -r1.89 xmltest.cpp ---- a/xmltest.cpp -+++ b/xmltest.cpp -@@ -1340,6 +1340,16 @@ - }*/ - } - -+ #ifdef TIXML_USE_STL -+ { -+ TiXmlDocument xml; -+ xml.Parse("foo&#xa+bar"); -+ std::string str; -+ str << xml; -+ XmlTest( "Entity escaping", "foo&#xa+bar", str.c_str() ); -+ } -+ #endif -+ - /* 1417717 experiment - { - TiXmlDocument xml; diff --git a/recipes-support/libtinyxml/libtinyxml_2.6.2.bb b/recipes-support/libtinyxml/libtinyxml_2.6.2.bb deleted file mode 100644 index 8670fac..0000000 --- a/recipes-support/libtinyxml/libtinyxml_2.6.2.bb +++ /dev/null @@ -1,45 +0,0 @@ -# (c) Copyright 2012 Hewlett-Packard Development Company, L.P. - -DESCRIPTION = "a simple, small, minimal, C++ XML parser" -HOMEPAGE = "http://www.sourceforge.net/projects/tinyxml" -LICENSE = "Zlib" -LIC_FILES_CHKSUM = "file://readme.txt;md5=f8f366f3370dda889f60faa7db162cf4" -SECTION = "libs" - -PR = "r5" - -SRC_URI = "${SOURCEFORGE_MIRROR}/tinyxml/tinyxml_${@'${PV}'.replace('.', '_')}.tar.gz \ - file://enforce-use-stl.patch \ - file://entity-encoding.patch" -SRC_URI[md5sum] = "c1b864c96804a10526540c664ade67f0" -SRC_URI[sha256sum] = "15bdfdcec58a7da30adc87ac2b078e4417dbe5392f3afb719f9ba6d062645593" - -S = "${WORKDIR}/tinyxml" - -EXTRA_CXXFLAGS = "-I. -fPIC" - -do_compile() { - ${CXX} ${CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o tinyxml.o tinyxml.cpp - ${CXX} ${CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o tinyxmlerror.o tinyxmlerror.cpp - ${CXX} ${CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o tinyxmlparser.o tinyxmlparser.cpp - ${CXX} ${CXXFLAGS} \ - -shared \ - -Wl,-soname,libtinyxml.so.${PV} \ - -o libtinyxml.so.${PV} \ - ${LDFLAGS} \ - tinyxml.o \ - tinyxmlparser.o \ - tinyxmlerror.o - -} - -do_install() { - install -d ${D}${libdir} - install -m 0755 ${S}/libtinyxml.so.${PV} ${D}${libdir} - ln -sf libtinyxml.so.${PV} ${D}${libdir}/libtinyxml.so - - install -d ${D}${includedir} - install -m 0644 ${S}/tinyxml.h ${D}${includedir} -} - -BBCLASSEXTEND += "native"