Diff metis-5.1.0-r5 with a metis-5.2.1-r2

/usr/portage/sci-libs/metis/metis-5.2.1-r2.ebuild 2023-10-09 14:52:35.088368491 +0300
1 1
# Copyright 1999-2023 Gentoo Authors
2 2
# Distributed under the terms of the GNU General Public License v2
3 3

  
4
EAPI=7
4
EAPI=8
5 5

  
6 6
inherit cmake
7 7

  
8 8
DESCRIPTION="A package for unstructured serial graph partitioning"
9
HOMEPAGE="http://glaros.dtc.umn.edu/gkhome/metis/metis/overview"
10
SRC_URI="http://glaros.dtc.umn.edu/gkhome/fetch/sw/${PN}/${P}.tar.gz"
9
HOMEPAGE="https://github.com/KarypisLab/METIS"
10
SRC_URI="https://github.com/KarypisLab/METIS/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
11
S="${WORKDIR}/METIS-${PV}"
11 12

  
12 13
LICENSE="Apache-2.0"
13 14
SLOT="0"
14
KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux"
15
IUSE="doc double-precision examples int64 openmp"
16

  
17
RDEPEND="!<sci-libs/parmetis-4.0.3-r2"
15
KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~arm64-macos ~x64-macos"
16
IUSE="double-precision examples int64 openmp"
18 17

  
19 18
PATCHES=(
20
	"${FILESDIR}"/${P}-shared-GKlib.patch
21 19
	"${FILESDIR}"/${P}-multilib.patch
22
	"${FILESDIR}"/${P}-remove-GKlib-O3.patch
20
	"${FILESDIR}"/${P}-respect-user-flags.patch
21
	# https://github.com/KarypisLab/METIS/pull/52 Bug 905822
22
	"${FILESDIR}"/${P}-add-gklib-as-required.patch
23 23
)
24 24

  
25
DEPEND="sci-libs/gklib"
26
RDEPEND="${DEPEND}"
27

  
25 28
src_prepare() {
29
	local idxwidth realwidth
30

  
26 31
	if use int64; then
27
		sed -i -e '/^#define IDXTYPEWIDTH/s/32/64/' include/metis.h || die
32
		idxwidth="#define IDXTYPEWIDTH 64"
33
	else
34
		idxwidth="#define IDXTYPEWIDTH 32"
28 35
	fi
29 36

  
30 37
	if use double-precision; then
31
		sed -i -e '/^#define REALTYPEWIDTH/s/32/64/' include/metis.h || die
38
		realwidth="#define REALTYPEWIDTH 64"
39
	else
40
		realwidth="#define REALTYPEWIDTH 32"
32 41
	fi
33 42

  
34 43
	cmake_src_prepare
44

  
45
	# From Makefile
46
	mkdir -p build/xinclude || die
47
	echo ${idxwidth} > build/xinclude/metis.h || die
48
	echo ${realwidth} >> build/xinclude/metis.h || die
49
	cat include/metis.h >> build/xinclude/metis.h || die
50
	cp include/CMakeLists.txt build/xinclude || die
35 51
}
36 52

  
37 53
src_configure() {
38 54
	local mycmakeargs=(
39
		-DGKLIB_PATH="${S}"/GKlib
40 55
		-DSHARED=yes
41 56
		-DOPENMP=$(usex openmp)
42 57
	)
......
56 71

  
57 72
src_install() {
58 73
	cmake_src_install
59
	use doc && dodoc manual/manual.pdf
74
	dodoc manual/manual.pdf
60 75
	if use examples; then
61 76
		docinto examples
62 77
		dodoc -r programs graphs
......
71 86
		Name: METIS
72 87
		Description: Software for partioning unstructured graphes and meshes
73 88
		Version: ${PV}
74
		Cflags: -I\${includedir}/metis
75
		Libs: -L\${libdir} -lmetis
89
		Cflags: -I\${includedir}
90
		Libs: -L\${libdir} -lmetis -lGKlib
76 91
	EOF
77 92
	insinto /usr/$(get_libdir)/pkgconfig
78 93
	doins "${T}"/metis.pc
Thank you!