summaryrefslogtreecommitdiff
path: root/dev-libs/xerces-c
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/xerces-c')
-rw-r--r--dev-libs/xerces-c/Manifest4
-rw-r--r--dev-libs/xerces-c/files/xerces-c-3.1.4-fix-build-system.patch61
-rw-r--r--dev-libs/xerces-c/xerces-c-3.1.4-r1.ebuild116
-rw-r--r--dev-libs/xerces-c/xerces-c-3.2.2.ebuild110
4 files changed, 291 insertions, 0 deletions
diff --git a/dev-libs/xerces-c/Manifest b/dev-libs/xerces-c/Manifest
index 590fce80d856..1f358a0d5a3d 100644
--- a/dev-libs/xerces-c/Manifest
+++ b/dev-libs/xerces-c/Manifest
@@ -1,7 +1,11 @@
AUX 50xerces-c 43 BLAKE2B 8ebb0cf0aa79e028271751f981c9b0818af24bf3640a5109ecca19b39b9a67b88fc1d5ddfce5203b1c226f80ca8e1b6cc06897f3ce8eee11eb1bd923c702b8ce SHA512 030808e28a2095ecc143e4b5add8577eceb599e43eca6a59ed874d64a042b263245116e539791dca697f74e9336b23561321b16417e42d5b56c5b21597e1c3eb
+AUX xerces-c-3.1.4-fix-build-system.patch 2080 BLAKE2B 02e67cf0c737c30405b967619aa8deee0c1f1c8b9635265226b111ca729b23bcc1bb1d094ba3342269051cb9a819b281b0985d2c1785bfa524f3844b29d65636 SHA512 38ec4237425e63aaf00e4b969ad0c478bb788b803272f7406f38ea250e5ed1ba4e78f061959fbe180956058d1d7f3b56d31451450872809999b2c6be29add4dc
AUX xerces-c-3.2.2-fix-XERCESC-2161.patch 42804 BLAKE2B c55aa5ff9d0ca8b716aaffb25435b0a1fbfc8684dc601dc009e3e44f3608c9c21ca3190a25d4813f7e34d75f070ca5de5554e35a2408d65f168b6a8715a156e1 SHA512 04d8cf6e220b7a7dc09a8dba4ff763dd8ccb133a81a5338d64a5cdf2c039f2d51958ec7eeea8ca04eeed8433c3239df8d74e6c697ac8c2c3476e8917d02507a5
AUX xerces-c-3.2.2-fix-XERCESC-2163.patch 715 BLAKE2B 39ae9de0166675c2269da164aaf6c637ba04761c12c5d8b227d466575b056d64846bced57651c70926a78403da16fd0e86ba4b267dfe70a144bcf3cced3d1536 SHA512 c5c0e753d22b61fa5047cef3748cf3baaf30f4c6ba4d89152d856f2f65fe311841ea590ec0c9291347b5b7f96047f3e9c7b524798ac2ac96bcfbc8b40d634596
+DIST xerces-c-3.1.4.tar.gz 6992545 BLAKE2B 463e721843632b13f4b5c845f14cf9ab4f093085558858b435ae5a3122951ab590f9e56f43add1aeaf7dc244814710be804ab0331a1d1e8073919ad9d3b61068 SHA512 8afd775bac0345a2714b77a1ae2cfb8ae67f0239ec7370de7d89612dec64d2e1df48612c875fe239ab6f2eb31914c2d3914617e6b34a1bae0bbb14e4dbc787b5
DIST xerces-c-3.2.2.tar.gz 7100953 BLAKE2B d167299797189ef181c384ac49095e8bc4cf4e0c7d646e72840a19f56c6eea060168d2c2d29c29ce6cc76dd44e403bea4c3dcde67f964b87f3abc807ad0b14ad SHA512 13709b47b61d957d736f34b774dbc7fbd85171eedebd0cada41fd1d17929e6c42904c882b1e1d4f9b4fd464938b62e5ebb127187b4974dfade6a593e31471e80
+EBUILD xerces-c-3.1.4-r1.ebuild 2824 BLAKE2B 07765e9c4ab0af4f1eac7b3630faee0b5c4eedf4d48e3934e69ef24554ec2fcb5bd354404e1ad4c99c5260519002c2bba6d994303a9eec80938a30c7141140c6 SHA512 0bc0fd5c0b5bf2346700ba8435fe3fd48f08494166494d1ff5c36a0f348f563ba972100a7095583ff5f4569262d515a15ea6fa5e83468572179215d1f99aa5b7
EBUILD xerces-c-3.2.2-r1.ebuild 2956 BLAKE2B 00df5adb4b7200a4bf69549d7f317116d962e5a4631d02c257b12d44b035c05a026aec628eb9ef538a135173889fab37dcc0382f7fddef36c0692f8dc90f8110 SHA512 911ba0ef96cc8f5ecc6ef4e72cf3c8e7829bc2f2c97d14ad1b9323b382d3c0588e694041bd8d7e36d3064bc6b415af896e80f8f1543ff344ef338aca54a185cf
+EBUILD xerces-c-3.2.2.ebuild 2759 BLAKE2B 6bb440b553a8e3766b5aabd52cbd4da8ead25c04d4c0ed77d9131dac911eb1e3156bab6be73cc20a951224c65d87e4320d0bce0327ca634ab90a1a5de2169ff8 SHA512 0784c58a373d2ae567de3a6b6582199c893f89ef5bb584a90876ada3cce88d0fc4d761b2a516ee47d815d9be23c73eb455a9189fa41bff1ffe6f425ece83b805
EBUILD xerces-c-9999.ebuild 2868 BLAKE2B bd1be084d8090c1538260577ab8e89ec8aaf9abbf83c5c8fdaa046e2e44daf0acc996deafc832ad2635043cce5642a5b350223a58a7bb34e0bd4321a1e7893a1 SHA512 d1261c22979dffe67756acfac50fe395d98b56836f246e40acce0aeba1d0b79a8c5fc5d7cb54eff355f848d40aebd9fa36b3829ab00928193739a7823e7672d4
MISC metadata.xml 768 BLAKE2B fabc57ee82dc82444461b1ec25ebda2af68a8eb00c6f44cc24de70daf96fd245acafc04d1bb75ffbb780e1b0877d7862a119264b81402df2e9c2f20ff252a166 SHA512 e447b67df2d7e7c3fb7cddc1dfeaf7c4da734ba71b1b0138abf63f8d0c5c42d0f2dd8cf6a281d4a88da32f4c073d81fab91f3fbca92d50d6bc9855a64814784f
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/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
+}
diff --git a/dev-libs/xerces-c/xerces-c-3.2.2.ebuild b/dev-libs/xerces-c/xerces-c-3.2.2.ebuild
new file mode 100644
index 000000000000..a7d0dd1ec9bb
--- /dev/null
+++ b/dev-libs/xerces-c/xerces-c-3.2.2.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils 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 )
+PATCHES=(
+ "${FILESDIR}/${P}-fix-XERCESC-2161.patch"
+)
+
+pkg_setup() {
+ export ICUROOT="${EPREFIX}/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_configure() {
+ # '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
+
+ 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"
+
+ local mycmakeargs=(
+ -Dnetwork-accessor="${netaccessor}"
+ -Dmessage-loader="${msgloader}"
+ -Dtranscoder="${transcoder}"
+ -Dthreads:BOOL="$(usex threads)"
+ -Dsse2:BOOL="$(usex cpu_flags_x86_sse2)"
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+
+ use doc && cmake-utils_src_compile doc-style createapidocs doc-xml
+}
+
+src_install () {
+ cmake-utils_src_install
+
+ # 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
+}