public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
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 &gt; 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
+}


             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