summaryrefslogtreecommitdiff
path: root/dev-libs/xerces-c
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-libs/xerces-c
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-libs/xerces-c')
-rw-r--r--dev-libs/xerces-c/Manifest7
-rw-r--r--dev-libs/xerces-c/files/50xerces-c1
-rw-r--r--dev-libs/xerces-c/files/xerces-c-3.1.4-fix-build-system.patch61
-rw-r--r--dev-libs/xerces-c/metadata.xml18
-rw-r--r--dev-libs/xerces-c/xerces-c-3.1.4-r1.ebuild116
5 files changed, 203 insertions, 0 deletions
diff --git a/dev-libs/xerces-c/Manifest b/dev-libs/xerces-c/Manifest
new file mode 100644
index 000000000000..7c7f7424559a
--- /dev/null
+++ b/dev-libs/xerces-c/Manifest
@@ -0,0 +1,7 @@
+AUX 50xerces-c 43 SHA256 0961dfe5add9ef7159e58569e3512ebf7fdba18dd7c14a0b3b7d898458b408e9 SHA512 030808e28a2095ecc143e4b5add8577eceb599e43eca6a59ed874d64a042b263245116e539791dca697f74e9336b23561321b16417e42d5b56c5b21597e1c3eb WHIRLPOOL 63d4b184d584ae89bbdad399bf139e0e16c62bd8d41c40232dd77f9170329c785639ff5204e5e00175d09674ea571113726d73725dbcf4a867e4ecfd713a2f41
+AUX xerces-c-3.1.4-fix-build-system.patch 2080 SHA256 0616295328476f690e871549080bd7ba506164d25d714f799b809992647ad539 SHA512 38ec4237425e63aaf00e4b969ad0c478bb788b803272f7406f38ea250e5ed1ba4e78f061959fbe180956058d1d7f3b56d31451450872809999b2c6be29add4dc WHIRLPOOL 4b564a388fad52dca8d2704af0386d60488aea92e15fa242a5e3c8d5c6da4c45657499ef537c232e82774799a9ebaa32274349b027b81cd47af0ba62215c2a5c
+DIST xerces-c-3.1.4.tar.gz 6992545 SHA256 c98eedac4cf8a73b09366ad349cb3ef30640e7a3089d360d40a3dde93f66ecf6 SHA512 8afd775bac0345a2714b77a1ae2cfb8ae67f0239ec7370de7d89612dec64d2e1df48612c875fe239ab6f2eb31914c2d3914617e6b34a1bae0bbb14e4dbc787b5 WHIRLPOOL 37e2b7662fc500c1dafe121eb8b3b94822f54dff144682f3a0729bc051609f1bb83a540f3e428fbda6f230b72a37a147edb3088000a9a408bb65fa4ec4126f07
+EBUILD xerces-c-3.1.4-r1.ebuild 2798 SHA256 3fdcdff7265e8a605de60d39692f4b9f2811176db4060998ded72091518b0360 SHA512 f0d2125e5c5f0e4f3a12a7cb1b8b80e7c2d2fe3968c7a741d02dc2fd3884c6ad7f8d34aa0c0bb98611da9756f6e1c4d96d012a6dd6d70aae76a06251875f5a8c WHIRLPOOL 4eaf1a589cba71d8638799b149af55112c1e05b3fc88dc21d0da95964e6e82ee27cf3d72e8852656e03efb7eacd7dfe6e424c34f5e348660e5f1e1500e071e8c
+MISC ChangeLog 4303 SHA256 ad9641aa0c9d1307d74f508e67eb8d42758a2b6dbf35f1caa8561fb43ac8c930 SHA512 c4de75988949bb507cdd22caea693fe62f2a6a9888a2522a026cffb25a4314ab684a1ce69e26f4d52392ec09a2d49c3b98dc2167872cbfc85b289fae6306b93f WHIRLPOOL c49ef3981e747252cc8ca2a9884a5fbde9695836efac0d18b9ea992bd316c8fb7128029ab9398e03d0c94f32e3e850bc9ca547838a382bb646a6556c11a9356d
+MISC ChangeLog-2015 17890 SHA256 08b63248ac76271dd30a94c2a598a2207e13b0aca534156457930ca311f37b8f SHA512 da7af8757916180f14b55d14661410d3bd11660b63af1f6a5e9c2965026256ebc159f96446ce0d9d9d3c9c8d68b512f988e40891b3d50723d67e774ae24285d8 WHIRLPOOL d0f68110ca06eabc8f795aca31806d7017330abe93d5ad994a0d4defaf8d02fc64bdabad6dc750add6ffb22aed86a23baabee1a72cbf1a8f3f0d37dd0014cf41
+MISC metadata.xml 849 SHA256 48d377b1fdd65063154003d97f33824a7143563636f1880bf1c5a2211f8b5167 SHA512 e1aaa46f73a6cc929dc87530053ab0f15d632a1998d3ac13991ac94610d578deeeb8e4e786bbe42512c7231d99701c9bf59047cffba0bb48044e80f96f36663b WHIRLPOOL 16fe7ff6b40e7716b67c00dcd2558947e4b19df69d88344877d97a09ff2e4fa9523dd7dea44d58d17f33c2584cca0779fa4ba17d2fa6c7d13ba6f5531c73c0c7
diff --git a/dev-libs/xerces-c/files/50xerces-c b/dev-libs/xerces-c/files/50xerces-c
new file mode 100644
index 000000000000..6fdb7ffbdee9
--- /dev/null
+++ b/dev-libs/xerces-c/files/50xerces-c
@@ -0,0 +1 @@
+XERCESC_NLS_HOME="/usr/share/xerces-c/msg"
diff --git a/dev-libs/xerces-c/files/xerces-c-3.1.4-fix-build-system.patch b/dev-libs/xerces-c/files/xerces-c-3.1.4-fix-build-system.patch
new file mode 100644
index 000000000000..6b991d24b56f
--- /dev/null
+++ b/dev-libs/xerces-c/files/xerces-c-3.1.4-fix-build-system.patch
@@ -0,0 +1,61 @@
+* Fix build system when USE="-threads"
+* Add DESTDIR in order to prevent sandbox failure
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -124,6 +124,7 @@
+ AC_CXX_HAVE_LSTRING
+
+ ACX_PTHREAD
++AM_CONDITIONAL([THREADS], [test "x${acx_pthread_ok}" = "xyes"])
+
+ # Checks for library functions.
+ #AC_FUNC_ERROR_AT_LINE
+--- a/src/xercesc/util/MsgLoaders/MsgCatalog/Makefile.in
++++ b/src/xercesc/util/MsgLoaders/MsgCatalog/Makefile.in
+@@ -5,7 +5,7 @@
+ prefix = @prefix@
+ INSTALL = @INSTALL@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+-mkdir_p = @mkdir_p@
++mkdir_p = @MKDIR_P@
+
+ include $(top_srcdir)/version.incl
+
+@@ -48,11 +48,11 @@
+ # for installing the library
+ # for installing the library
+ install: $(RESTARGET)
+- $(mkdir_p) $(prefix)/msg
+- $(INSTALL_PROGRAM) $(RESTARGET) $(prefix)/msg
++ $(mkdir_p) $(DESTDIR)/$(prefix)/share/xerces-c/msg
++ $(INSTALL_PROGRAM) $(RESTARGET) $(DESTDIR)/$(prefix)/share/xerces-c/msg
+
+ uninstall:
+- -rm -f $(prefix)/msg/$(RESFILES)
++ -rm -f $(DESTDIR)/$(prefix)/share/xerces-c/msg/$(RESFILES)
+
+
+ # Needed to support "make dist"
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -21,7 +21,7 @@
+
+ check_PROGRAMS = ${testprogs}
+
+-LDADD = ${top_builddir}/src/libxerces-c.la
++LDADD = $(top_builddir)/src/libxerces-c.la $(PTHREAD_LIBS)
+ # the -I${top_builddir}/src is needed to pick the xercesc/util/Xerces_autoconf_config.hpp
+ # header file when doing out-of-tree builds
+ AM_CPPFLAGS = -I${top_builddir}/src -I${top_srcdir}/src
+@@ -86,8 +86,10 @@
+ # src/ParserTest/ParserTest_Parser.cpp \
+ # src/ParserTest/ParserTest_Parser.hpp
+
++if THREADS
+ testprogs += ThreadTest
+ ThreadTest_SOURCES = src/ThreadTest/ThreadTest.cpp
++endif
+
+ # Fails to compile under gcc 4 (ambiguous calls to NullPointerException)
+ # dcargill says this is obsolete and we can delete it.
diff --git a/dev-libs/xerces-c/metadata.xml b/dev-libs/xerces-c/metadata.xml
new file mode 100644
index 000000000000..14a0b7619ff6
--- /dev/null
+++ b/dev-libs/xerces-c/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+</maintainer>
+<longdescription>xerces-c is a C++ library specializing in XML parsing. It is released by the Apache Foundation</longdescription>
+<use>
+ <flag name="iconv">Use iconv (<pkg>virtual/libiconv</pkg>) as message loader
+ and transcoder (in general it would be possible to use iconv only as
+ message loader and something else like icu or the native method as
+ transcoder and vice-versa, but this is a less common case and hard to
+ handle)</flag>
+ <flag name="threads">Enable threading support through pthread (or other
+ libraries on AIX, IRIX, HPUX, Solars). Highly recommended</flag>
+</use>
+</pkgmetadata>
diff --git a/dev-libs/xerces-c/xerces-c-3.1.4-r1.ebuild b/dev-libs/xerces-c/xerces-c-3.1.4-r1.ebuild
new file mode 100644
index 000000000000..fb393626069d
--- /dev/null
+++ b/dev-libs/xerces-c/xerces-c-3.1.4-r1.ebuild
@@ -0,0 +1,116 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools
+
+DESCRIPTION="A validating XML parser written in a portable subset of C++"
+HOMEPAGE="http://xerces.apache.org/xerces-c/"
+SRC_URI="mirror://apache/xerces/c/3/sources/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x64-macos"
+
+IUSE="cpu_flags_x86_sse2 curl doc elibc_Darwin elibc_FreeBSD examples iconv icu static-libs test threads"
+
+RDEPEND="icu? ( dev-libs/icu:0= )
+ curl? ( net-misc/curl )
+ virtual/libiconv"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )
+ test? ( dev-lang/perl )"
+
+DOCS=( CREDITS KEYS NOTICE README version.incl )
+PATCHES=( "${FILESDIR}/${PN}-3.1.4-fix-build-system.patch" )
+
+pkg_setup() {
+ export ICUROOT="/usr"
+
+ if use iconv && use icu; then
+ ewarn "This package can use iconv or icu for loading messages"
+ ewarn "and transcoding, but not both. ICU takes precedence."
+ fi
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local msgloader
+ if use icu; then
+ msgloader="icu"
+ elif use iconv; then
+ msgloader="iconv"
+ else
+ msgloader="inmemory"
+ fi
+
+ local transcoder
+ if use icu; then
+ transcoder="icu"
+ elif use elibc_Darwin; then
+ transcoder="macosunicodeconverter"
+ elif use elibc_FreeBSD; then
+ transcoder="iconv"
+ else
+ transcoder="gnuiconv"
+ fi
+ # for interix maybe: transcoder="windows"
+
+ # 'cfurl' is only available on OSX and 'socket' isn't supposed to work.
+ # But the docs aren't clear about it, so we would need some testing...
+ local netaccessor
+ if use curl; then
+ netaccessor="curl"
+ elif use elibc_Darwin; then
+ netaccessor="cfurl"
+ else
+ netaccessor="socket"
+ fi
+
+ econf \
+ --disable-pretty-make \
+ --enable-msgloader-${msgloader} \
+ --enable-transcoder-${transcoder} \
+ --enable-netaccessor-${netaccessor} \
+ $(use_enable cpu_flags_x86_sse2 sse2) \
+ $(use_enable threads) \
+ $(use_enable static-libs static)
+}
+
+src_compile() {
+ default
+
+ if use doc; then
+ cd doc || die
+ doxygen || die "making docs failed"
+ HTML_DOCS=( doc/html/. )
+ fi
+}
+
+src_install () {
+ default
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+
+ if use examples; then
+ # clean out object files, executables, Makefiles
+ # and the like before installing examples
+ find samples/ \( -type f -executable -o -iname 'runConfigure' -o -iname '*.o' \
+ -o -iname '.libs' -o -iname 'Makefile*' \) -exec rm -rf '{}' + || die
+ docinto examples
+ dodoc -r samples/.
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+
+ # To make sure an appropriate NLS msg file is around when using
+ # the iconv msgloader ICU has the messages compiled in.
+ if use iconv && ! use icu; then
+ doenvd "${FILESDIR}/50xerces-c"
+ fi
+}