You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-libs/link-grammar/link-grammar-5.12.3.ebuild

119 lines
2.9 KiB

# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..11} )
inherit autotools python-r1 out-of-source
DESCRIPTION="A Syntactic English parser"
HOMEPAGE="https://www.abisource.com/projects/link-grammar/ https://www.link.cs.cmu.edu/link/"
SRC_URI="https://www.abisource.com/downloads/${PN}/${PV}/${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0/5"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc ~x86"
IUSE="aspell +hunspell python"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
# XXX: sqlite is automagic
# Does not build with >=sci-mathematics/minisat-2, bug #593662
RDEPEND="
dev-db/sqlite:3
dev-libs/libpcre2:=
aspell? ( app-text/aspell )
hunspell? ( app-text/hunspell )
python? ( ${PYTHON_DEPS} )"
DEPEND="${RDEPEND}"
BDEPEND="
dev-lang/swig:0
dev-build/autoconf-archive
virtual/pkgconfig"
PATCHES=(
# upstreamed (https://github.com/opencog/link-grammar/pull/1471)
"${FILESDIR}"/${P}-Wimplicit-function-declaration.patch
)
QA_CONFIG_IMPL_DECL_SKIP=(
# _AC_UNDECLARED_BUILTIN false positive
strchr
)
pkg_setup() {
if use aspell && use hunspell; then
ewarn "You have enabled 'aspell' and 'hunspell' support, but both cannot coexist,"
ewarn "only hunspell will be built. Press Ctrl+C and set only 'aspell' USE flag if"
ewarn "you want aspell support."
fi
}
src_prepare() {
default
eautoreconf
}
my_src_configure() {
local myconf=(
--disable-maintainer-mode
--disable-editline
# java is hopelessly broken, invokes maven at build time (bug #806157)
--disable-java-bindings
--disable-perl-bindings
--disable-sat-solver
--with-regexlib=pcre2
$(use_enable aspell)
$(use_enable hunspell)
$(usev hunspell --with-hunspell-dictdir="${EPREFIX}"/usr/share/myspell)
)
econf \
--disable-python-bindings \
"${myconf[@]}"
if use python; then
python_configure() {
econf \
--enable-python-bindings \
"${myconf[@]}"
}
python_foreach_impl run_in_build_dir python_configure
fi
}
my_src_compile() {
local -x MAIN_BUILD_DIR="${BUILD_DIR}"
default
if use python; then
python_compile() {
emake -C bindings/python \
VPATH="${S}:${MAIN_BUILD_DIR}" \
_clinkgrammar_la_DEPENDENCIES="${MAIN_BUILD_DIR}"/link-grammar/liblink-grammar.la \
_clinkgrammar_la_LIBADD="${MAIN_BUILD_DIR}"/link-grammar/liblink-grammar.la
}
python_foreach_impl run_in_build_dir python_compile
fi
}
my_src_install() {
local -x MAIN_BUILD_DIR="${BUILD_DIR}"
default
if use python; then
python_install() {
emake -C bindings/python \
VPATH="${S}:${MAIN_BUILD_DIR}" \
_clinkgrammar_la_DEPENDENCIES="${MAIN_BUILD_DIR}"/link-grammar/liblink-grammar.la \
_clinkgrammar_la_LIBADD="${MAIN_BUILD_DIR}"/link-grammar/liblink-grammar.la \
DESTDIR="${D}" \
install
}
python_foreach_impl run_in_build_dir python_install
fi
# no static archives
find "${ED}" -name '*.la' -delete || die
}