Skip to content

Commit

Permalink
dev-libs/expat: 2.4.1
Browse files Browse the repository at this point in the history
Ping libexpat/libexpat#491
Signed-off-by: Sebastian Pipping <sping@gentoo.org>
Package-Manager: Portage-3.0.18, Repoman-3.0.3
  • Loading branch information
hartwork committed May 23, 2021
1 parent 99322e4 commit da6c3ff
Show file tree
Hide file tree
Showing 2 changed files with 101 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-libs/expat/Manifest
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
DIST expat-2.2.10.tar.xz 425432 BLAKE2B 5d84d7dec5aae6ca7906bd2a2b8a249457111e064295b83b6c9927b5ef0dc97e7220bac1da17781e24541259ae81b60a2314cd372bfbdfc2e08fab082377df4a SHA512 a8e0c8a9cf7e6fbacdc6e709f3c99c533ab550fba52557d24259bb8b360f9697624c7500c0e9886fa57ee2b529aadd0d1835d66fe8112e15c20df75cd3eb090f
DIST expat-2.3.0.tar.xz 433508 BLAKE2B b547cbca23f2ca11bef326225b8e2958a3539dbb14789c33fb0f2aede35bfbe12981d151624b0497ab2ad488ec06529ae2a996e514b19b39622ae7fc29f47832 SHA512 dde8a9a094b18d795a0e86ca4aa68488b352dc67019e0d669e8b910ed149628de4c2a49bc3a5b832f624319336a01f9e4debe03433a43e1c420f36356d886820
DIST expat-2.4.1.tar.xz 445024 BLAKE2B 2ae66d284a03176ef7290093f59bb7ad98011dfbf3c7c3515ba4e4b99f849474def6ce6d9844c944fed22d86ac4ea1a38863646be914d9432eda7b69d890be65 SHA512 9dc760dbf701f75e55c4479d81417622f8c750d8473498458a382a4c2932a2976a059cb3589f88855188e5173ec7868d285c4601428e0ca625df7a59cf975191
100 changes: 100 additions & 0 deletions dev-libs/expat/expat-2.4.1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7
AUTOTOOLS_AUTO_DEPEND=no
AT_NOEAUTOHEADER=yes # because expat_config.h.in would need post-processing
inherit autotools 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 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~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}

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
}

0 comments on commit da6c3ff

Please sign in to comment.