dev-libs/expat: 2.2.9 + de-warn insinto
authorSebastian Pipping <sping@gentoo.org>
Tue, 28 Jan 2020 16:45:20 +0000 (17:45 +0100)
committerSebastian Pipping <sping@gentoo.org>
Tue, 28 Jan 2020 16:50:29 +0000 (17:50 +0100)
Signed-off-by: Sebastian Pipping <sping@gentoo.org>
Package-Manager: Portage-2.3.84, Repoman-2.3.20

dev-libs/expat/Manifest
dev-libs/expat/expat-2.2.9.ebuild [new file with mode: 0644]

index 60480d79ac53609600a0117495468d1cead846a3..68589064f597ccbe4537433c752cc04241ca515c 100644 (file)
@@ -1 +1,2 @@
 DIST expat-2.2.8.tar.xz 422324 BLAKE2B 1f3e8bbce7f05aa080ca647d12a4ff9bf6d21cd31366d70daabcf8db48985e0b644faac5e251e0a559a74f0a27b247ede64b6f117940a5f7f70dc1cce0f0036a SHA512 102a3af89af37a961f81ade2dfb4f3e13bf779110decff9f1462f21079aa6959009871c39b933d9bf47ebc3ee50d3f8d5b41859dce833d290f17886a2aa80aa9
+DIST expat-2.2.9.tar.xz 422460 BLAKE2B ea0e0bd005bbfd355e819e2b157859878a20ad9a6807cc5a10a6656f062e2443adb483adb0452d751b3d460834e3f613b8ecf7cdaf743be1b15815d005d01fa6 SHA512 e082874efcc4b00709e2c0192c88fb15dfc4f33fc3a2b09e619b010ea93baaf7e7572683f738463db0ce2350cab3de48a0c38af6b74d1c4f5a9e311f499edab0
diff --git a/dev-libs/expat/expat-2.2.9.ebuild b/dev-libs/expat/expat-2.2.9.ebuild
new file mode 100644 (file)
index 0000000..208b078
--- /dev/null
@@ -0,0 +1,99 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+AUTOTOOLS_AUTO_DEPEND=no
+inherit autotools eutils libtool multilib toolchain-funcs multilib-minimal usr-ldscript
+
+DESCRIPTION="Stream-oriented XML parser library"
+HOMEPAGE="https://libexpat.github.io/"
+SRC_URI="https://github.com/libexpat/libexpat/releases/download/R_${PV//\./_}/expat-${PV}.tar.xz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
+IUSE="elibc_FreeBSD examples static-libs unicode"
+BDEPEND="unicode? ( ${AUTOTOOLS_DEPEND} )"
+
+DOCS=( README.md )
+
+src_prepare() {
+       default
+
+       # fix interpreter to be a recent/good shell
+       sed -i -e "1s:/bin/sh:${BASH}:" conftools/get-version.sh || die
+       if use unicode; then
+               cp -R "${S}" "${S}"w || die
+               pushd "${S}"w >/dev/null
+               find -name Makefile.am \
+                       -exec sed \
+                       -e 's,libexpat\.la,libexpatw.la,' \
+                       -e 's,libexpat_la,libexpatw_la,' \
+                       -i {} + || die
+               eautoreconf
+               popd >/dev/null
+       fi
+}
+
+multilib_src_configure() {
+       local myconf="$(use_enable static-libs static) --without-docbook"
+
+       mkdir -p "${BUILD_DIR}"w || die
+
+       if use unicode; then
+               pushd "${BUILD_DIR}"w >/dev/null
+               CPPFLAGS="${CPPFLAGS} -DXML_UNICODE" ECONF_SOURCE="${S}"w econf ${myconf}
+               popd >/dev/null
+       fi
+
+       ECONF_SOURCE="${S}" econf ${myconf}
+}
+
+multilib_src_compile() {
+       emake
+
+       if use unicode; then
+               pushd "${BUILD_DIR}"w >/dev/null
+               emake -C lib
+               popd >/dev/null
+       fi
+}
+
+multilib_src_install() {
+       emake install DESTDIR="${D}"
+
+       if use unicode; then
+               pushd "${BUILD_DIR}"w >/dev/null
+               emake -C lib install DESTDIR="${D}"
+               popd >/dev/null
+
+               pushd "${ED}"/usr/$(get_libdir)/pkgconfig >/dev/null
+               cp expat.pc expatw.pc
+               sed -i -e '/^Libs/s:-lexpat:&w:' expatw.pc || die
+               popd >/dev/null
+       fi
+
+       if multilib_is_native_abi ; then
+               # libgeom in /lib and ifconfig in /sbin require libexpat on FreeBSD since
+               # we stripped the libbsdxml copy starting from freebsd-lib-8.2-r1
+               use elibc_FreeBSD && gen_usr_ldscript -a expat
+       fi
+}
+
+multilib_src_install_all() {
+       einstalldocs
+
+       doman doc/xmlwf.1
+
+       # Note: Use of HTML_DOCS would add unwanted "doc" subfolder
+       docinto html
+       dodoc doc/*.{css,html,png}
+
+       if use examples; then
+               docinto examples
+               dodoc examples/*.c
+               docompress -x usr/share/doc/${PF}/examples
+       fi
+
+       find "${D}" -name '*.la' -type f -delete || die
+}