summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-libs/tinyxml
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-libs/tinyxml')
-rw-r--r--dev-libs/tinyxml/Manifest1
-rw-r--r--dev-libs/tinyxml/files/Makefile-344
-rw-r--r--dev-libs/tinyxml/files/tinyxml-2.6.1-entity.patch64
-rw-r--r--dev-libs/tinyxml/files/tinyxml-2.6.2-defineSTL.patch12
-rw-r--r--dev-libs/tinyxml/metadata.xml14
-rw-r--r--dev-libs/tinyxml/tinyxml-2.6.2-r2.ebuild54
6 files changed, 189 insertions, 0 deletions
diff --git a/dev-libs/tinyxml/Manifest b/dev-libs/tinyxml/Manifest
new file mode 100644
index 000000000000..ce9b43815d87
--- /dev/null
+++ b/dev-libs/tinyxml/Manifest
@@ -0,0 +1 @@
+DIST tinyxml_2_6_2.tar.gz 210124 SHA256 15bdfdcec58a7da30adc87ac2b078e4417dbe5392f3afb719f9ba6d062645593 SHA512 133b5db06131a90ad0c2b39b0063f1c8e65e67288a7e5d67e1f7d9ba32af10dc5dfa0462f9723985ee27debe8f09a10a25d4b5a5aaff2ede979b1cebe8e59d56 WHIRLPOOL 6367930385d55a205e5a4a8034c7f62df2bdb33506fc184d73eeb86e3e78c61f802de255176e4b20e9070201fa495e96b37b2fc4d3f0ada24c399b15374542ea
diff --git a/dev-libs/tinyxml/files/Makefile-3 b/dev-libs/tinyxml/files/Makefile-3
new file mode 100644
index 000000000000..40ad4fe7e9ce
--- /dev/null
+++ b/dev-libs/tinyxml/files/Makefile-3
@@ -0,0 +1,44 @@
+AR ?= ar
+CXX ?= g++
+CXXFLAGS += -Wall
+RANLIB ?= ranlib
+LIBDIR ?= /usr/lib
+
+name = libtinyxml
+major = @MAJOR_V@
+minor = @MINOR_V@
+version = $(major).$(minor)
+
+src = tinyxml.cpp tinyxmlparser.cpp tinyxmlerror.cpp tinystr.cpp
+lo = $(addsuffix .lo,$(basename ${src}))
+o = $(addsuffix .o,$(basename ${src}))
+
+lib = so
+ifeq ($(shell uname),Darwin)
+ lib = dylib
+endif
+
+all: $(name).a $(name).$(lib)
+
+%.o: %.cpp
+ $(CXX) -c $(CXXFLAGS) $(CPPFLAGS) $< -o $@
+
+$(name).a: $(o)
+ $(AR) rc $(name).a $(o)
+ $(RANLIB) $(name).a
+
+%.lo: %.cpp
+ $(CXX) -c $(CXXFLAGS) $(CPPFLAGS) -fPIC $< -o $@
+
+$(name).so: $(lo)
+ $(CXX) $(LDFLAGS) -fPIC -shared $(lo) -Wl,-soname,$(name).so.$(major) -o $(name).so.$(version)
+ ln -s $(name).so.$(version) $(name).so.$(major)
+ ln -s $(name).so.$(version) $(name).so
+
+$(name).dylib: $(lo)
+ $(CXX) $(LDFLAGS) -fPIC -dynamiclib $(lo) -install_name $(LIBDIR)/$(name).$(major).dylib -o $(name).$(version).dylib
+ ln -s $(name).$(version).dylib $(name).$(major).dylib
+ ln -s $(name).$(version).dylib $(name).dylib
+
+clean:
+ -rm -f *.o *.lo *.so* *.a
diff --git a/dev-libs/tinyxml/files/tinyxml-2.6.1-entity.patch b/dev-libs/tinyxml/files/tinyxml-2.6.1-entity.patch
new file mode 100644
index 000000000000..66d89a61743d
--- /dev/null
+++ b/dev-libs/tinyxml/files/tinyxml-2.6.1-entity.patch
@@ -0,0 +1,64 @@
+? entity.patch
+Index: tinyxml.cpp
+===================================================================
+RCS file: /cvsroot/tinyxml/tinyxml/tinyxml.cpp,v
+retrieving revision 1.105
+diff -u -r1.105 tinyxml.cpp
+--- tinyxml.cpp 5 Jun 2010 19:06:57 -0000 1.105
++++ tinyxml.cpp 19 Jul 2010 21:24:16 -0000
+@@ -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.
+- // &#xA9; -- 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;
+Index: xmltest.cpp
+===================================================================
+RCS file: /cvsroot/tinyxml/tinyxml/xmltest.cpp,v
+retrieving revision 1.89
+diff -u -r1.89 xmltest.cpp
+--- xmltest.cpp 5 Jun 2010 17:41:52 -0000 1.89
++++ xmltest.cpp 19 Jul 2010 21:24:16 -0000
+@@ -1340,6 +1340,16 @@
+ }*/
+ }
+
++ #ifdef TIXML_USE_STL
++ {
++ TiXmlDocument xml;
++ xml.Parse("<foo>foo&amp;#xa+bar</foo>");
++ std::string str;
++ str << xml;
++ XmlTest( "Entity escaping", "<foo>foo&amp;#xa+bar</foo>", str.c_str() );
++ }
++ #endif
++
+ /* 1417717 experiment
+ {
+ TiXmlDocument xml;
diff --git a/dev-libs/tinyxml/files/tinyxml-2.6.2-defineSTL.patch b/dev-libs/tinyxml/files/tinyxml-2.6.2-defineSTL.patch
new file mode 100644
index 000000000000..7bcde59ff946
--- /dev/null
+++ b/dev-libs/tinyxml/files/tinyxml-2.6.2-defineSTL.patch
@@ -0,0 +1,12 @@
+diff -up tinyxml/tinyxml.h~ tinyxml/tinyxml.h
+--- tinyxml/tinyxml.h~ 2007-11-30 22:39:36.000000000 +0100
++++ tinyxml/tinyxml.h 2007-11-30 22:39:36.000000000 +0100
+@@ -26,6 +26,8 @@ distribution.
+ #ifndef TINYXML_INCLUDED
+ #define TINYXML_INCLUDED
+
++#define TIXML_USE_STL 1
++
+ #ifdef _MSC_VER
+ #pragma warning( push )
+ #pragma warning( disable : 4530 )
diff --git a/dev-libs/tinyxml/metadata.xml b/dev-libs/tinyxml/metadata.xml
new file mode 100644
index 000000000000..310db04b8b79
--- /dev/null
+++ b/dev-libs/tinyxml/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>voyageur@gentoo.org</email>
+ <name>Bernard Cafarelli</name>
+ </maintainer>
+ <use>
+ <flag name="stl">Compile with TIXML_USE_STL support</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">tinyxml</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-libs/tinyxml/tinyxml-2.6.2-r2.ebuild b/dev-libs/tinyxml/tinyxml-2.6.2-r2.ebuild
new file mode 100644
index 000000000000..3410dcaa4fba
--- /dev/null
+++ b/dev-libs/tinyxml/tinyxml-2.6.2-r2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit flag-o-matic toolchain-funcs eutils multilib
+
+DESCRIPTION="a simple, small, C++ XML parser that can be easily integrating into other programs"
+HOMEPAGE="http://www.grinninglizard.com/tinyxml/index.html"
+SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV//./_}.tar.gz"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ia64 ppc ~ppc64 sparc x86 ~x64-macos ~x86-macos"
+IUSE="debug doc static-libs +stl"
+
+RDEPEND=""
+DEPEND="doc? ( app-doc/doxygen )"
+
+S="${WORKDIR}/${PN}"
+
+src_prepare() {
+ local major_v minor_v
+ major_v=$(echo ${PV} | cut -d \. -f 1)
+ minor_v=$(echo ${PV} | cut -d \. -f 2-3)
+
+ sed -e "s:@MAJOR_V@:$major_v:" \
+ -e "s:@MINOR_V@:$minor_v:" \
+ "${FILESDIR}"/Makefile-3 > Makefile || die
+
+ epatch "${FILESDIR}"/${PN}-2.6.1-entity.patch
+
+ use debug && append-cppflags -DDEBUG
+ use stl && epatch "${FILESDIR}"/${P}-defineSTL.patch
+
+ if ! use static-libs; then
+ sed -e "/^all:/s/\$(name).a //" -i Makefile || die
+ fi
+
+ tc-export AR CXX RANLIB
+
+ [[ ${CHOST} == *-darwin* ]] && export LIBDIR="${EPREFIX}"/usr/$(get_libdir)
+}
+
+src_install() {
+ dolib.so *$(get_libname)*
+
+ insinto /usr/include
+ doins *.h
+
+ dodoc {changes,readme}.txt
+
+ use doc && dohtml -r docs/*
+}