diff options
Diffstat (limited to 'sci-libs/lemon/lemon-1.3.1.ebuild')
-rw-r--r-- | sci-libs/lemon/lemon-1.3.1.ebuild | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/sci-libs/lemon/lemon-1.3.1.ebuild b/sci-libs/lemon/lemon-1.3.1.ebuild new file mode 100644 index 000000000000..3a35fa7919de --- /dev/null +++ b/sci-libs/lemon/lemon-1.3.1.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2018 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit cmake-utils + +DESCRIPTION="C++ template static library of common data structures and algorithms" +HOMEPAGE="https://lemon.cs.elte.hu/trac/lemon/" +SRC_URI="https://lemon.cs.elte.hu/pub/sources/${P}.tar.gz" + +LICENSE="Boost-1.0" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+coin doc glpk static-libs test" + +REQUIRED_USE="|| ( coin glpk )" + +RDEPEND=" + coin? ( + sci-libs/coinor-cbc:= + sci-libs/coinor-clp:= + ) + glpk? ( sci-mathematics/glpk:= ) +" +DEPEND="${RDEPEND} + doc? ( + app-doc/doxygen + app-text/ghostscript-gpl + dev-libs/mathjax + ) +" + +PATCHES=( + "${FILESDIR}"/${P}-multilib.patch + "${FILESDIR}"/${PN}-1.3-as-needed.patch +) + +src_prepare() { + cmake-utils_src_prepare + cmake_comment_add_subdirectory demo + + use doc || cmake_comment_add_subdirectory doc + use test || cmake_comment_add_subdirectory test + + for t in \ + max_clique \ + max_flow \ + graph_utils \ + random \ + time_measure \ + tsp; do + sed -i -e "/${t}_test/d" test/CMakeLists.txt || die + done + sed -i \ + -e '/ADD_TEST(lp_test lp_test)/d' \ + -e '/ADD_DEPENDENCIES(check lp_test)/d' \ + test/CMakeLists.txt || die +} + +src_configure() { + local mycmakeargs=( + -DBUILD_SHARED_LIBS=TRUE + -DLEMON_ENABLE_COIN=$(usex coin) + -DLEMON_ENABLE_GLPK=$(usex glpk) + ) + use coin && mycmakeargs+=( -DCOIN_ROOT_DIR="${EPREFIX}/usr" ) + if use doc; then + mycmakeargs+=( + -DLEMON_DOC_MATHJAX_RELPATH="${EPREFIX}/usr/share/mathjax" + -DLEMON_DOC_SOURCE_BROWSER=$(usex doc) + -DLEMON_DOC_USE_MATHJAX=$(usex doc) + ) + fi + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + # TODO: Upstream needs to see the light of GNUInstallDirs + if use doc; then + mv "${D}"/usr/share/doc/lemon/html "${D}"/usr/share/doc/${PF} || die + rmdir "${D}"/usr/share/doc/lemon || die + fi +} + +src_test() { + emake -C "${BUILD_DIR}" check +} |