dev-libs/marisa: Add live ebuild.
authorArfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
Sat, 28 Sep 2019 02:15:03 +0000 (02:15 +0000)
committerMike Gilbert <floppym@gentoo.org>
Sun, 29 Sep 2019 02:56:13 +0000 (22:56 -0400)
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
dev-libs/marisa/marisa-9999.ebuild [new file with mode: 0644]

diff --git a/dev-libs/marisa/marisa-9999.ebuild b/dev-libs/marisa/marisa-9999.ebuild
new file mode 100644 (file)
index 0000000..6942f85
--- /dev/null
@@ -0,0 +1,104 @@
+# Copyright 2014-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+PYTHON_COMPAT=(python{3_6,3_7})
+DISTUTILS_OPTIONAL="1"
+
+inherit autotools distutils-r1
+
+if [[ "${PV}" == "9999" ]]; then
+       inherit git-r3
+
+       EGIT_REPO_URI="https://github.com/s-yata/marisa-trie"
+fi
+
+DESCRIPTION="Matching Algorithm with Recursively Implemented StorAge"
+HOMEPAGE="https://github.com/s-yata/marisa-trie https://code.google.com/archive/p/marisa-trie/"
+if [[ "${PV}" == "9999" ]]; then
+       SRC_URI=""
+else
+       SRC_URI="https://github.com/s-yata/marisa-trie/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+fi
+
+LICENSE="|| ( BSD-2 LGPL-2.1+ )"
+SLOT="0"
+KEYWORDS=""
+IUSE="python static-libs"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+BDEPEND="python? (
+               ${PYTHON_DEPS}
+               dev-lang/swig
+       )"
+DEPEND="python? ( ${PYTHON_DEPS} )"
+RDEPEND="${DEPEND}"
+
+if [[ "${PV}" != "9999" ]]; then
+       S="${WORKDIR}/marisa-trie-${PV}"
+fi
+
+src_prepare() {
+       default
+       eautoreconf
+
+       sed -e "s:^\([[:space:]]*\)libraries=:\1include_dirs=[\"../../include\"],\n\1library_dirs=[\"../../lib/marisa/.libs\"],\n&:" -i bindings/python/setup.py || die
+
+       if use python; then
+               pushd bindings/python > /dev/null || die
+               distutils-r1_src_prepare
+               popd > /dev/null || die
+       fi
+}
+
+src_configure() {
+       local -x CPPFLAGS="${CPPFLAGS} ${CXXFLAGS}"
+
+       local options=(
+               # Preprocessor macros dependent on CPPFLAGS are checked.
+               --enable-sse2
+               --enable-sse3
+               --enable-ssse3
+               --enable-sse4.1
+               --enable-sse4.2
+               --enable-sse4
+               --enable-sse4a
+               --enable-popcnt
+               $(use_enable static-libs static)
+       )
+
+       econf "${options[@]}"
+
+       if use python; then
+               pushd bindings/python > /dev/null || die
+               distutils-r1_src_configure
+               popd > /dev/null || die
+       fi
+}
+
+src_compile() {
+       default
+
+       if use python; then
+               emake -C bindings swig-python
+               pushd bindings/python > /dev/null || die
+               distutils-r1_src_compile
+               popd > /dev/null || die
+       fi
+}
+
+src_install() {
+       default
+       find "${D}" -name "*.la" -type f -delete || die
+
+       (
+               docinto html
+               dodoc docs/*
+       )
+
+       if use python; then
+               pushd bindings/python > /dev/null || die
+               distutils-r1_src_install
+               popd > /dev/null || die
+       fi
+}