From: "Marek Szuba" <marecki@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/metis/
Date: Fri, 16 Jul 2021 11:43:43 +0000 (UTC) [thread overview]
Message-ID: <1626435806.9280e069ddb743ca233d2091b7ccb5a74e3c1841.marecki@gentoo> (raw)
commit: 9280e069ddb743ca233d2091b7ccb5a74e3c1841
Author: Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 16 10:08:57 2021 +0000
Commit: Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Fri Jul 16 11:43:26 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9280e069
sci-libs/metis: support USE="doc double-precision examples int64"
USE flags: all of these were implemented (incorrectly in case of the two
type switchers, I might add) for the METIS version bundled in
sci-libs/parmetis yet not here.
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>
sci-libs/metis/metadata.xml | 6 ++-
sci-libs/metis/metis-5.1.0-r5.ebuild | 79 ++++++++++++++++++++++++++++++++++++
2 files changed, 84 insertions(+), 1 deletion(-)
diff --git a/sci-libs/metis/metadata.xml b/sci-libs/metis/metadata.xml
index 142ea93c83a..cfc70289ed3 100644
--- a/sci-libs/metis/metadata.xml
+++ b/sci-libs/metis/metadata.xml
@@ -11,5 +11,9 @@
orderings for sparse matrices. The algorithms implemented in METIS are
based on the multilevel recursive-bisection, multilevel k-way, and
multi-constraint partitioning schemes.
-</longdescription>
+ </longdescription>
+ <use>
+ <flag name="double-precision">Use double- rather than single-precision floating-point representation</flag>
+ <flag name="int64">Use 64- rather than 32-bit integer representation (needed for > 2^31 vertices)</flag>
+ </use>
</pkgmetadata>
diff --git a/sci-libs/metis/metis-5.1.0-r5.ebuild b/sci-libs/metis/metis-5.1.0-r5.ebuild
new file mode 100644
index 00000000000..f10620aef76
--- /dev/null
+++ b/sci-libs/metis/metis-5.1.0-r5.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="A package for unstructured serial graph partitioning"
+HOMEPAGE="https://www-users.cs.umn.edu/~karypis/metis/metis/"
+SRC_URI="http://glaros.dtc.umn.edu/gkhome/fetch/sw/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc double-precision examples int64 openmp"
+
+RDEPEND="!sci-libs/parmetis"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-shared-GKlib.patch
+ "${FILESDIR}"/${P}-multilib.patch
+ "${FILESDIR}"/${P}-remove-GKlib-O3.patch
+)
+
+src_prepare() {
+ if use int64; then
+ sed -i -e '/^#define IDXTYPEWIDTH/s/32/64/' include/metis.h || die
+ fi
+
+ if use double-precision; then
+ sed -i -e '/^#define REALTYPEWIDTH/s/32/64/' include/metis.h || die
+ fi
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DGKLIB_PATH="${S}"/GKlib
+ -DSHARED=yes
+ -DOPENMP=$(usex openmp)
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ cd graphs || die
+ local PATH="${BUILD_DIR}"/programs/:${PATH}
+
+ ndmetis mdual.graph || die
+ mpmetis metis.mesh 2 || die
+ gpmetis test.mgraph 4 || die
+ gpmetis copter2.graph 4 || die
+ graphchk 4elt.graph || die
+}
+
+src_install() {
+ cmake_src_install
+ use doc && dodoc manual/manual.pdf
+ if use examples; then
+ docinto examples
+ dodoc -r programs graphs
+ fi
+
+ cat >> "${T}"/metis.pc <<- EOF || die
+ prefix=${EPREFIX}/usr
+ exec_prefix=\${prefix}
+ libdir=\${exec_prefix}/$(get_libdir)
+ includedir=\${prefix}/include
+
+ Name: METIS
+ Description: Software for partioning unstructured graphes and meshes
+ Version: ${PV}
+ Cflags: -I\${includedir}/metis
+ Libs: -L\${libdir} -lmetis
+ EOF
+ insinto /usr/$(get_libdir)/pkgconfig
+ doins "${T}"/metis.pc
+}
next reply other threads:[~2021-07-16 11:43 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-16 11:43 Marek Szuba [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-03-10 13:19 [gentoo-commits] repo/gentoo:master commit in: sci-libs/metis/ Sam James
2024-03-10 13:07 Arthur Zamarin
2024-03-10 12:13 Arthur Zamarin
2024-03-10 12:13 Arthur Zamarin
2024-03-10 12:13 Arthur Zamarin
2023-12-06 17:57 Ionen Wolkens
2023-12-01 3:30 Sam James
2023-08-05 11:40 Arthur Zamarin
2023-07-29 20:39 Arthur Zamarin
2023-07-17 6:12 Sam James
2023-07-17 6:12 Sam James
2023-07-14 18:02 Arthur Zamarin
2023-06-12 6:01 Arthur Zamarin
2023-06-03 9:50 WANG Xuerui
2023-05-03 10:55 Jakov Smolić
2023-05-03 8:49 Andrew Ammerlaan
2023-05-02 17:36 Arthur Zamarin
2022-12-01 3:21 WANG Xuerui
2022-10-09 16:10 Sam James
2022-09-19 6:42 Michał Górny
2021-10-06 6:22 Jakov Smolić
2021-10-06 6:06 Agostino Sarubbo
2021-10-05 6:48 Agostino Sarubbo
2021-10-04 19:19 Sam James
2021-10-04 19:19 Sam James
2021-10-04 19:17 Sam James
2021-10-04 19:16 Sam James
2021-10-04 17:44 Sam James
2021-07-20 7:41 Andrew Ammerlaan
2021-07-16 11:43 Marek Szuba
2021-07-16 11:43 Marek Szuba
2021-07-14 16:14 Marek Szuba
2020-11-07 17:57 Sam James
2020-07-21 10:03 Andreas Sturmlechner
2020-07-21 10:03 Andreas Sturmlechner
2020-07-19 16:03 Sam James
2020-07-07 6:58 Sergei Trofimovich
2020-06-22 6:57 Agostino Sarubbo
2020-06-21 17:08 Agostino Sarubbo
2020-06-21 17:03 Agostino Sarubbo
2020-01-11 16:33 Ulrich Müller
2019-05-21 20:30 Aaron Bauman
2017-07-12 18:40 Alexis Ballier
2017-07-11 8:41 Alexis Ballier
2017-07-01 9:52 Sergei Trofimovich
2017-07-01 9:52 Sergei Trofimovich
2017-07-01 9:52 Sergei Trofimovich
2017-04-22 16:03 Justin Lecher
2017-04-22 16:03 Justin Lecher
2017-03-24 12:05 Nicolas Bock
2016-08-11 17:18 David Seifert
2016-06-07 16:47 Tobias Klausmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1626435806.9280e069ddb743ca233d2091b7ccb5a74e3c1841.marecki@gentoo \
--to=marecki@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox