blob: 30e11866e47f457066179a99ea2e2458d8c68a07 [file] [log] [blame]
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal flag-o-matic
DESCRIPTION="a configuration file parser library"
HOMEPAGE="https://github.com/martinh/libconfuse"
SRC_URI="https://github.com/martinh/libconfuse/releases/download/v${PV}/${P}.tar.xz"
LICENSE="ISC"
SLOT="0/2.1.0"
KEYWORDS="*"
IUSE="nls static-libs"
BDEPEND="
sys-devel/flex
sys-devel/libtool
virtual/pkgconfig
nls? ( sys-devel/gettext )
"
RDEPEND="
nls? ( virtual/libintl[${MULTILIB_USEDEP}] )
"
PATCHES=(
# Upstream commit to fix CVE-2022-40320:
# https://github.com/libconfuse/libconfuse/commit/d73777c2c3566fb2647727bb56d9a2295b81669b
"${FILESDIR}"/confuse-3.3-fix-CVE-2022-40320.patch
)
DOCS=( AUTHORS )
src_prepare() {
default
multilib_copy_sources
}
multilib_src_configure() {
# https://github.com/libconfuse/libconfuse/pull/167
append-lfs-flags
# examples are normally compiled but not installed. They
# fail during a mingw crosscompile.
local ECONF_SOURCE=${BUILD_DIR}
econf \
--enable-shared \
--disable-examples \
$(use_enable nls) \
$(use_enable static-libs static)
}
multilib_src_install_all() {
doman doc/man/man3/*.3
dodoc -r doc/html
docinto examples
dodoc examples/*.{c,conf}
find "${D}" -name '*.la' -delete || die
}