diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 21:03:06 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 21:03:06 +0100 |
commit | 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch) | |
tree | 7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-libs/xerces-c | |
parent | 30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff) |
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-libs/xerces-c')
-rw-r--r-- | dev-libs/xerces-c/Manifest | 5 | ||||
-rw-r--r-- | dev-libs/xerces-c/files/50xerces-c | 1 | ||||
-rw-r--r-- | dev-libs/xerces-c/files/xerces-c-3.1.4-fix-build-system.patch | 61 | ||||
-rw-r--r-- | dev-libs/xerces-c/metadata.xml | 18 | ||||
-rw-r--r-- | dev-libs/xerces-c/xerces-c-3.1.4-r1.ebuild | 116 |
5 files changed, 201 insertions, 0 deletions
diff --git a/dev-libs/xerces-c/Manifest b/dev-libs/xerces-c/Manifest new file mode 100644 index 000000000000..e2bc73f06982 --- /dev/null +++ b/dev-libs/xerces-c/Manifest @@ -0,0 +1,5 @@ +AUX 50xerces-c 43 BLAKE2B 8ebb0cf0aa79e028271751f981c9b0818af24bf3640a5109ecca19b39b9a67b88fc1d5ddfce5203b1c226f80ca8e1b6cc06897f3ce8eee11eb1bd923c702b8ce SHA512 030808e28a2095ecc143e4b5add8577eceb599e43eca6a59ed874d64a042b263245116e539791dca697f74e9336b23561321b16417e42d5b56c5b21597e1c3eb +AUX xerces-c-3.1.4-fix-build-system.patch 2080 BLAKE2B 02e67cf0c737c30405b967619aa8deee0c1f1c8b9635265226b111ca729b23bcc1bb1d094ba3342269051cb9a819b281b0985d2c1785bfa524f3844b29d65636 SHA512 38ec4237425e63aaf00e4b969ad0c478bb788b803272f7406f38ea250e5ed1ba4e78f061959fbe180956058d1d7f3b56d31451450872809999b2c6be29add4dc +DIST xerces-c-3.1.4.tar.gz 6992545 BLAKE2B 463e721843632b13f4b5c845f14cf9ab4f093085558858b435ae5a3122951ab590f9e56f43add1aeaf7dc244814710be804ab0331a1d1e8073919ad9d3b61068 SHA512 8afd775bac0345a2714b77a1ae2cfb8ae67f0239ec7370de7d89612dec64d2e1df48612c875fe239ab6f2eb31914c2d3914617e6b34a1bae0bbb14e4dbc787b5 +EBUILD xerces-c-3.1.4-r1.ebuild 2824 BLAKE2B 07765e9c4ab0af4f1eac7b3630faee0b5c4eedf4d48e3934e69ef24554ec2fcb5bd354404e1ad4c99c5260519002c2bba6d994303a9eec80938a30c7141140c6 SHA512 0bc0fd5c0b5bf2346700ba8435fe3fd48f08494166494d1ff5c36a0f348f563ba972100a7095583ff5f4569262d515a15ea6fa5e83468572179215d1f99aa5b7 +MISC metadata.xml 849 BLAKE2B 4d7f00d4864bd2b347723a029ff58cc7c9f84867ebcc45392a94b2d063cdbde84a4290e2302d9fbdabf98c7cf3a3edb04a18ce60d6c5bd9c474a492f5acc4b2f SHA512 e1aaa46f73a6cc929dc87530053ab0f15d632a1998d3ac13991ac94610d578deeeb8e4e786bbe42512c7231d99701c9bf59047cffba0bb48044e80f96f36663b 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..7ccfabeb38f0 --- /dev/null +++ b/dev-libs/xerces-c/xerces-c-3.1.4-r1.ebuild @@ -0,0 +1,116 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit autotools prefix + +DESCRIPTION="A validating XML parser written in a portable subset of C++" +HOMEPAGE="https://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 "$(prefixify_ro "${FILESDIR}/50xerces-c")" + fi +} |