sci-libs/coinor-osi: new EAPI=7 version 0.108.6.
authorMichael Orlitzky <mjo@gentoo.org>
Wed, 6 May 2020 22:26:53 +0000 (18:26 -0400)
committerMichael Orlitzky <mjo@gentoo.org>
Fri, 8 May 2020 12:20:33 +0000 (08:20 -0400)
Standard version bump and EAPI update to clean things up. I'm trying
to comment the weirdness that pervades the coinor-* ebuilds as I
encounter it. This new version drops support for USE=glpk, because
upstream has abandoned it: they've documented that they only support
ancient versions of glpk not present... well, anywhere, anymore.

Closes: https://bugs.gentoo.org/521978
Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
sci-libs/coinor-osi/Manifest
sci-libs/coinor-osi/coinor-osi-0.106.6.ebuild [deleted file]
sci-libs/coinor-osi/coinor-osi-0.108.6.ebuild [new file with mode: 0644]
sci-libs/coinor-osi/metadata.xml

index 7f52f0fd4826864d710abc6bcba12112115cfcaa..979276bc8a2cfa39f76123e428f0d8fb414dce49 100644 (file)
@@ -1 +1 @@
-DIST Osi-0.106.6.tgz 7490371 BLAKE2B 76579c536eb5ffe6b7a79e4e28ee438bf06cdae45f7934435a7174df7bfe4d2a03b2ea79454b4f15df893f968dad34cda6c66503b853842d9c7815702fd9d048 SHA512 25d2dd1791b73329fa9bc32f7b4a4f3d0600ce600868bd14d902dd0ea1c6f5a2eca4bff01ac65ea2843e725fd5c218fca6def9d6974e6af9692c47973b6202ef
+DIST coinor-osi-0.108.6.tar.gz 1015556 BLAKE2B b22e2afb3de728275c10163897deab7889be42bb595bc5c3a5f1163caca6da2ec454ce9c96378420bbfea272465b43d92c405a990351b05dc848dbd50dbbef5a SHA512 757a404487a58a99eaf778a08898befd3431d0a6b64e46c429d3bb83d57c99bd396736dda3a75a1f1c05d3e397925041b386280deef6e23fa1ba5277b81f1d8d
diff --git a/sci-libs/coinor-osi/coinor-osi-0.106.6.ebuild b/sci-libs/coinor-osi/coinor-osi-0.106.6.ebuild
deleted file mode 100644 (file)
index d7d293c..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit autotools-utils multilib
-
-MYPN=Osi
-
-DESCRIPTION="COIN-OR Open Solver Interface"
-HOMEPAGE="https://projects.coin-or.org/Osi/"
-SRC_URI="http://www.coin-or.org/download/source/${MYPN}/${MYPN}-${PV}.tgz"
-
-LICENSE="EPL-1.0"
-SLOT="0/1"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="doc examples glpk static-libs test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-       sci-libs/coinor-utils:=
-       glpk? ( sci-mathematics/glpk:= )"
-DEPEND="${RDEPEND}
-       virtual/pkgconfig
-       doc? ( app-doc/doxygen[dot] )
-       test? ( sci-libs/coinor-sample )"
-
-S="${WORKDIR}/${MYPN}-${PV}/${MYPN}"
-
-src_prepare() {
-       # needed for the --with-coin-instdir
-       dodir /usr
-       sed -i \
-               -e "s:lib/pkgconfig:$(get_libdir)/pkgconfig:g" \
-               configure || die
-       autotools-utils_src_prepare
-}
-
-src_configure() {
-       local myeconfargs=(
-               --enable-dependency-linking
-               --with-coin-instdir="${ED}"/usr
-               $(use_with doc dot)
-       )
-       if use glpk; then
-               myeconfargs+=(
-                       --with-glpk-incdir="${EPREFIX}"/usr/include
-                       --with-glpk-lib=-lglpk
-               )
-       else
-               myeconfargs+=( --without-glpk )
-       fi
-       autotools-utils_src_configure
-}
-
-src_compile() {
-       autotools-utils_src_compile all $(usex doc doxydoc "")
-}
-
-src_test() {
-       autotools-utils_src_test test
-}
-
-src_install() {
-       use doc && HTML_DOC=("${BUILD_DIR}/doxydocs/html/")
-       autotools-utils_src_install
-       # already installed
-       rm "${ED}"/usr/share/coin/doc/${MYPN}/{README,AUTHORS,LICENSE} || die
-       if use examples; then
-               insinto /usr/share/doc/${PF}
-               doins -r examples
-       fi
-}
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 (file)
index 0000000..8b9cf0f
--- /dev/null
@@ -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
+}
index db78d09130677e98331dc13335a2ee645cbf4a22..af6af3b5df7c8f5714c3e4ba8e44600a52037b9a 100644 (file)
     solvers as well as the ability to "finish off" a mixed-integer
     problem calling the solver library's MIP solver.
   </longdescription>
-  <use>
-    <flag name="glpk">
-      Enable GNU Linear Programming Kit
-      <pkg>sci-mathematics/glpk</pkg> support
-    </flag>
-  </use>
   <upstream>
     <remote-id type="github">coin-or/Osi</remote-id>
   </upstream>