commit: 4b22c880c86b4ee9f9854942f0651eea9a2a3093 Author: Michael Orlitzky <mjo <AT> gentoo <DOT> org> AuthorDate: Tue Feb 17 13:11:15 2026 +0000 Commit: Michael Orlitzky <mjo <AT> gentoo <DOT> org> CommitDate: Tue Feb 17 13:47:23 2026 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4b22c880
sci-mathematics/glpk: disable ODBC support Both ODBC libraries (iODBC and unixODBC) are unmaintained in Gentoo, and iODBC fails to build. GLPK itself is very lightly maintained and is far from the state of the art in LP solvers, so I am guessing / hoping that no one is using it to solve problems from a spreadsheet. This allows us to simplify the ebuild a little, and avoids the headaches associated with unmaintained dependencies that may not build. Bug: https://bugs.gentoo.org/925077 Bug: https://bugs.gentoo.org/944767 Closes: https://bugs.gentoo.org/955395 Signed-off-by: Michael Orlitzky <mjo <AT> gentoo.org> sci-mathematics/glpk/glpk-5.0-r4.ebuild | 79 +++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/sci-mathematics/glpk/glpk-5.0-r4.ebuild b/sci-mathematics/glpk/glpk-5.0-r4.ebuild new file mode 100644 index 000000000000..8e4ad52dad0c --- /dev/null +++ b/sci-mathematics/glpk/glpk-5.0-r4.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic + +DESCRIPTION="GNU Linear Programming Kit" +HOMEPAGE="https://www.gnu.org/software/glpk/" +SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0/40" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="doc examples gmp mysql" + +BDEPEND="virtual/pkgconfig" +DEPEND=" + sci-libs/amd:0= + sci-libs/colamd:= + virtual/zlib:= + gmp? ( dev-libs/gmp:0= ) + mysql? ( + dev-db/mysql-connector-c + dev-libs/libltdl + )" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-4.65-fix-mysql-include-prefix.patch + "${FILESDIR}"/${PN}-4.65-debundle-system-libs.patch + "${FILESDIR}"/${PN}-5.0-aliasing.patch +) + +src_prepare() { + # Newer GNU standards fail to compile thanks to "bool", while using + # ISO C17 breaks thread safety... and also fails to compile. + append-cflags -std=gnu17 + + default + + eautoreconf +} + +src_configure() { + econf --disable-static \ + --disable-odbc \ + $(use_enable mysql dl) \ + $(use_enable mysql) \ + $(use_with gmp) +} + +src_install() { + default + + if use examples; then + # The top-level Makefile descends into the "examples" directory + # unconditionally, building a program and excreting build + # artifacts that we don't want to install. Note: this still + # leaves the example program /usr/bin/glpsol installed. An + # additional "emake ... uninstall" could probably take care + # of that if desired. + emake -C examples clean + + # Installing the Makefiles for the examples does the user no + # good without the top-level Makefile. + rm examples/Makefile{.in,.am,} \ + || die "failed to remove example Makefiles" + + insinto "/usr/share/doc/${PF}" + doins -r examples + docompress -x "/usr/share/doc/${PF}/examples" + fi + + use doc && dodoc doc/*.pdf doc/notes/*.pdf doc/*.txt + + # no static archives + find "${D}" -name '*.la' -delete || die +}
