Diff hdf5-1.10.5-r1 with a hdf5-1.12.2-r4

/usr/portage/sci-libs/hdf5/hdf5-1.12.2-r4.ebuild 2023-10-09 14:52:35.076368491 +0300
1 1
# Copyright 1999-2022 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
FORTRAN_NEEDED="fortran"
6
FORTRAN_NEEDED=fortran
7 7

  
8
# We've reverted *back* to autotools from CMake because of
9
# https://github.com/HDFGroup/hdf5/issues/1814.
8 10
inherit autotools fortran-2 flag-o-matic toolchain-funcs prefix
9 11

  
10
MY_P="${PN}-${PV/_p/-patch}"
11
MAJOR_P="${PN}-$(ver_cut 1-2)"
12
MY_P=${PN}-${PV/_p/-patch}
13
MAJOR_P=${PN}-$(ver_cut 1-2)
12 14

  
13 15
DESCRIPTION="General purpose library and file format for storing scientific data"
14 16
HOMEPAGE="https://www.hdfgroup.org/HDF5/"
15 17
SRC_URI="https://www.hdfgroup.org/ftp/HDF5/releases/${MAJOR_P}/${MY_P}/src/${MY_P}.tar.bz2"
18
S="${WORKDIR}/${MY_P}"
16 19

  
17 20
LICENSE="NCSA-HDF"
18 21
SLOT="0/${PV%%_p*}"
19
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
22
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
20 23
IUSE="cxx debug examples fortran +hl mpi szip threads unsupported zlib"
21

  
22 24
REQUIRED_USE="
23 25
	!unsupported? (
24
			?? ( cxx mpi )
25
			threads? ( !cxx !mpi !fortran !hl )
26
	)"
26
		cxx? ( !mpi ) mpi? ( !cxx )
27
		threads? ( !cxx !mpi !fortran !hl )
28
	)
29
"
30

  
27 31
RDEPEND="
28 32
	mpi? ( virtual/mpi[romio] )
29 33
	szip? ( virtual/szip )
30
	zlib? ( sys-libs/zlib:0= )
31
"
32
DEPEND="${RDEPEND}
33
	sys-devel/libtool:2
34
	>=sys-devel/autoconf-2.69
35
"
36
S="${WORKDIR}/${MY_P}"
34
	zlib? ( sys-libs/zlib:0= )"
35
DEPEND="${RDEPEND}"
37 36

  
38 37
PATCHES=(
39
	"${FILESDIR}/${PN}-1.8.9-static_libgfortran.patch"
40
	"${FILESDIR}/${PN}-1.8.9-mpicxx.patch"
41
	"${FILESDIR}/${PN}-1.8.13-no-messing-ldpath.patch"
38
	"${FILESDIR}"/${PN}-1.8.9-static_libgfortran.patch
39
	"${FILESDIR}"/${PN}-1.12.2-no-messing-ldpath.patch
40
	"${FILESDIR}"/${PN}-1.12.2-no-strip-symbols.patch
42 41
)
43 42

  
44 43
pkg_setup() {
45
	tc-export CXX CC AR # workaround for bug 285148
44
	# Workaround for bug 285148
45
	tc-export CXX CC AR
46

  
46 47
	use fortran && fortran-2_pkg_setup
47 48

  
48 49
	if use mpi; then
......
50 51
			ewarn "Installing hdf5 with mpi enabled with a previous hdf5 with mpi disabled may fail."
51 52
			ewarn "Try to uninstall the current hdf5 prior to enabling mpi support."
52 53
		fi
53
		export CC="mpicc"
54
		use fortran && export FC="mpif90"
55
		append-ldflags -lmpi
54

  
55
		export CC=mpicc
56
		use fortran && export FC=mpif90
56 57
	elif has_version 'sci-libs/hdf5[mpi]'; then
57 58
		ewarn "Installing hdf5 with mpi disabled while having hdf5 installed with mpi enabled may fail."
58 59
		ewarn "Try to uninstall the current hdf5 prior to disabling mpi support."
......
60 61
}
61 62

  
62 63
src_prepare() {
63
	# respect gentoo examples directory
64
	default
65

  
66
	# Respect Gentoo examples directory
64 67
	sed \
65 68
		-e "s:hdf5_examples:doc/${PF}/examples:g" \
66 69
		-i $(find . -name Makefile.am) $(find . -name "run*.sh.in") || die
67 70
	sed \
68 71
		-e '/docdir/d' \
69 72
		-i config/commence.am || die
73

  
70 74
	if ! use examples; then
75
		# bug #409091
71 76
		sed -e '/^install:/ s/install-examples//' \
72
			-i Makefile.am || die #409091
77
			-i Makefile.am || die
73 78
	fi
74
	# enable shared libs by default for h5cc config utility
75
	sed -i -e "s/SHLIB:-no/SHLIB:-yes/g" tools/src/misc/h5cc.in || die
76
	hprefixify m4/libtool.m4
77 79

  
78
	# bug #775305
79
	use fortran && tc-enables-pie && append-fflags -fPIC
80
	# Enable shared libs by default for h5cc config utility
81
	sed -i -e "s/SHLIB:-no/SHLIB:-yes/g" bin/h5cc.in || die
82
	hprefixify m4/libtool.m4
80 83

  
81
	default
82
	eautomake
84
	eautoreconf
83 85
}
84 86

  
85 87
src_configure() {
86
	use sparc && tc-is-gcc && append-flags -fno-tree-ccp # bug 686620
87
	local myconf=(
88
		--disable-static
89
		--enable-deprecated-symbols
90
		--enable-build-mode=$(usex debug debug production)
91
		$(use_enable cxx)
92
		$(use_enable debug codestack)
93
		$(use_enable fortran)
94
		$(use_enable hl)
95
		$(use_enable mpi parallel)
96
		$(use_enable threads threadsafe)
97
		$(use_enable unsupported)
98
		$(use_with szip szlib)
99
		$(use_with threads pthread)
88
	# bug #686620
89
	use sparc && tc-is-gcc && append-flags -fno-tree-ccp
90

  
91
	econf \
92
		--disable-static \
93
		--enable-deprecated-symbols \
94
		--enable-build-mode=$(usex debug debug production) \
95
		$(use_enable cxx) \
96
		$(use_enable debug codestack) \
97
		$(use_enable fortran) \
98
		$(use_enable hl) \
99
		$(use_enable mpi parallel) \
100
		$(use_enable threads threadsafe) \
101
		$(use_enable unsupported) \
102
		$(use_with szip szlib) \
103
		$(use_with threads pthread) \
100 104
		$(use_with zlib)
101
	)
102
	econf "${myconf[@]}"
103 105
}
104 106

  
105 107
src_install() {
106
	default
108
	emake DESTDIR="${D}" EPREFIX="${EPREFIX}" install
109

  
110
	# No static archives
111
	find "${ED}" -name '*.la' -delete || die
107 112

  
108
	# no static archives
109
	find "${D}" -name '*.la' -delete || die
113
	# Remove "perf" executable due to file collisions with dev-util/perf.
114
	# Previously with the CMake build system we only installed h5perf, so
115
	# let's simply remove the file for now.
116
	use mpi && { rm "${ED}"/usr/bin/perf || die "rm failed" ; }
110 117
}
Thank you!