diff options
Diffstat (limited to 'sci-libs/coinor-osi/coinor-osi-0.108.6.ebuild')
-rw-r--r-- | sci-libs/coinor-osi/coinor-osi-0.108.6.ebuild | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/sci-libs/coinor-osi/coinor-osi-0.108.6.ebuild b/sci-libs/coinor-osi/coinor-osi-0.108.6.ebuild new file mode 100644 index 000000000000..8b9cf0f637fc --- /dev/null +++ b/sci-libs/coinor-osi/coinor-osi-0.108.6.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +MY_PN=Osi + +DESCRIPTION="COIN-OR Open Solver Interface" +HOMEPAGE="https://github.com/coin-or/Osi/" +SRC_URI="https://github.com/coin-or/${MY_PN}/archive/releases/${PV}.tar.gz + -> ${P}.tar.gz" +LICENSE="EPL-1.0" + +# major soname component +SLOT="0/1" + +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" + +# No USE=glpk because upstream only supports an ancient version of it. The +# following issues were all closed by... documenting that it doesn't work: +# +# * https://github.com/coin-or/Osi/issues/71 +# * https://github.com/coin-or/Osi/issues/107 +# * https://github.com/coin-or/Osi/issues/118 +# +IUSE="doc examples static-libs test" +RESTRICT="!test? ( test )" + +# Fortran is NOT needed, but the ./configure scripts for all of the CoinOR +# packages contain a check for it. Gentoo bug 601648 and upstream issue, +# +# https://github.com/coin-or/CoinUtils/issues/132 +# +BDEPEND="virtual/fortran + virtual/pkgconfig + doc? ( app-doc/doxygen[dot] ) + test? ( sci-libs/coinor-sample )" +DEPEND="sci-libs/coinor-utils:=" +REPEND="${DEPEND}" + +S="${WORKDIR}/${MY_PN}-releases-${PV}/${MY_PN}" + +src_prepare() { + # Needed to make the --with-coin-instdir in src_configure happy. + dodir /usr + + # They don't need to guess at this, but they do, and get it wrong... + sed -e "s:lib/pkgconfig:$(get_libdir)/pkgconfig:g" \ + -i configure \ + || die "failed to fix the pkgconfig path in ${S}/configure" + + default +} + +src_configure() { + local myeconfargs=( + --enable-dependency-linking + --with-coin-instdir="${ED}"/usr + $(use_with doc dot) + ) + + econf "${myeconfargs[@]}" + +} + +src_compile() { + emake all $(usex doc doxydoc "") +} + +src_test() { + # NOT redundant! The build system has a "make check" target that does + # nothing, so if you don't specify "test" here, you'll get a no-op. + emake test +} + +src_install() { + use doc && HTML_DOC=("${BUILD_DIR}/doxydocs/html/") + + emake DESTDIR="${D}" install + + # Duplicate junk, and in the wrong location. + rm -r "${ED}/usr/share/coin/doc/${MY_PN}" || die + + use examples && dodoc -r examples +} |