summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2011-08-01 10:14:26 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2011-08-01 10:14:26 +0000
commit58d1fc8f9b484eeb90d03b0bc260814789621ca9 (patch)
treea55ce51dfc4c83940f03bcda941239c12ea79959 /dev-libs/expat
parentVersion bump and remove old (4.96 will be the next stable candidate if possib... (diff)
downloadgentoo-2-58d1fc8f9b484eeb90d03b0bc260814789621ca9.tar.gz
gentoo-2-58d1fc8f9b484eeb90d03b0bc260814789621ca9.tar.bz2
gentoo-2-58d1fc8f9b484eeb90d03b0bc260814789621ca9.zip
Build libexpatu (unicode) and libexpatw (unicode wchar_t) libraries wrt #306655 by Gilles Dartiguelongue and Tiziano Müller
(Portage version: 2.2.0_alpha47/cvs/Linux x86_64)
Diffstat (limited to 'dev-libs/expat')
-rw-r--r--dev-libs/expat/ChangeLog6
-rw-r--r--dev-libs/expat/expat-2.0.1-r5.ebuild72
2 files changed, 77 insertions, 1 deletions
diff --git a/dev-libs/expat/ChangeLog b/dev-libs/expat/ChangeLog
index 5b85cb99773c..39033ad6fd3b 100644
--- a/dev-libs/expat/ChangeLog
+++ b/dev-libs/expat/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for dev-libs/expat
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/expat/ChangeLog,v 1.99 2011/07/29 16:33:13 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/expat/ChangeLog,v 1.100 2011/08/01 10:14:26 ssuominen Exp $
+
+ 01 Aug 2011; Samuli Suominen <ssuominen@gentoo.org> +expat-2.0.1-r5.ebuild:
+ Build libexpatu (unicode) and libexpatw (unicode wchar_t) libraries wrt
+ #306655 by Gilles Dartiguelongue and Tiziano Müller
*expat-2.0.1-r4 (29 Jul 2011)
diff --git a/dev-libs/expat/expat-2.0.1-r5.ebuild b/dev-libs/expat/expat-2.0.1-r5.ebuild
new file mode 100644
index 000000000000..ba4d8d99b597
--- /dev/null
+++ b/dev-libs/expat/expat-2.0.1-r5.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/expat/expat-2.0.1-r5.ebuild,v 1.1 2011/08/01 10:14:26 ssuominen Exp $
+
+EAPI=4
+inherit eutils libtool toolchain-funcs
+
+DESCRIPTION="XML parsing libraries"
+HOMEPAGE="http://expat.sourceforge.net/"
+SRC_URI="mirror://sourceforge/expat/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="elibc_FreeBSD examples static-libs"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-check_stopped_parser.patch \
+ "${FILESDIR}"/${P}-fix_bug_1990430.patch \
+ "${FILESDIR}"/${P}-CVE-2009-3560-revised.patch
+
+ elibtoolize
+ epunt_cxx
+
+ mkdir "${S}"-build{,u,w} || die
+}
+
+src_configure() {
+ local myconf="$(use_enable static-libs static)"
+
+ local d
+ for d in build buildu buildw; do
+ pushd "${S}"-${d}
+ [[ ${d} == buildu ]] && export GENTOO_CPPFLAGS="-UXML_UNICODE"
+ [[ ${d} == buildw ]] && export GENTOO_CPPFLAGS="-UXML_UNICODE -DXML_UNICODE_WCHAR_T"
+ CPPFLAGS="${CPPFLAGS} ${GENTOO_CPPFLAGS}" ECONF_SOURCE="${S}" econf ${myconf}
+ popd
+ done
+}
+
+src_compile() {
+ cd "${S}-build"
+ emake
+ cd "${S}-buildu"
+ emake buildlib LIBRARY=libexpatu.la
+ cd "${S}-buildw"
+ emake buildlib LIBRARY=libexpatw.la
+}
+
+src_install() {
+ dodoc Changes README
+ dohtml doc/*
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}/examples
+ doins examples/*.c
+ fi
+
+ cd "${S}-build"
+ emake DESTDIR="${D}" install
+ cd "${S}-buildu"
+ emake installlib DESTDIR="${D}" LIBRARY=libexpatu.la
+ cd "${S}-buildw"
+ emake installlib DESTDIR="${D}" LIBRARY=libexpatw.la
+
+ use static-libs || rm -f "${D}"usr/lib*/libexpat{,u,w}.la
+
+ # libgeom in /lib and ifconfig in /sbin require it on FreeBSD since we
+ # stripped the libbsdxml copy starting from freebsd-lib-8.2-r1
+ use elibc_FreeBSD && gen_usr_ldscript -a expat{,u,w}
+}