Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/med/files/, sci-libs/med/
Date: Tue, 01 Dec 2020 07:56:18
Message-Id: 1606809362.682260b51f9e3ae1337c15b5b725f1c50f978a97.juippis@gentoo
1 commit: 682260b51f9e3ae1337c15b5b725f1c50f978a97
2 Author: Bernd Waibel <waebbl <AT> gmail <DOT> com>
3 AuthorDate: Wed Nov 25 23:39:58 2020 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Tue Dec 1 07:56:02 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=682260b5
7
8 sci-libs/med: bump to 4.1.0
9
10 Closes: https://bugs.gentoo.org/756208
11 Package-Manager: Portage-3.0.10, Repoman-3.0.2
12 Signed-off-by: Bernd Waibel <waebbl <AT> gmail.com>
13 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
14
15 sci-libs/med/Manifest | 1 +
16 ...pecific-Adjust-install-path-for-build-dir.patch | 26 +++++
17 ...e-add-option-for-building-Fortran-library.patch | 39 ++++++++
18 sci-libs/med/med-4.1.0.ebuild | 109 +++++++++++++++++++++
19 4 files changed, 175 insertions(+)
20
21 diff --git a/sci-libs/med/Manifest b/sci-libs/med/Manifest
22 index cec3ed3d3f8..fc47f435034 100644
23 --- a/sci-libs/med/Manifest
24 +++ b/sci-libs/med/Manifest
25 @@ -1 +1,2 @@
26 DIST med-4.0.0.tar.gz 47849098 BLAKE2B 0bc6710f7b5156e09962e3125349573989429e614a203f649843f00dea06217040ebee70e481eed9c0dd304cb7d167efcd216c3600f6954a74f262cc845fff63 SHA512 2840437010481fc5f12a56e3282f8ca5e94df541899e2b511756702f86d0f87dbf2f6e086d8e591e2bd370d8f4bab8089e7f7f939fea16354a23e2b5a4d96cd7
27 +DIST med-4.1.0.tar.gz 50375039 BLAKE2B 514ca19baf15e349ecbce870b318b37c51bfb57ac9b03c2b2c1b28836fec7fcf2dce573b9ea155f358d5e0bcee120c12a31598cd4f1e44837eca787553bb70d4 SHA512 94d07663c2f6a3cd497f54b480c3d742476d2a25172feb567980c9e75d49f4661aa2c6aaf570470938265997154e348bc1608065b86d42afda52d4e6361fedf8
28
29 diff --git a/sci-libs/med/files/med-4.1.0-0001-Gentoo-specific-Adjust-install-path-for-build-dir.patch b/sci-libs/med/files/med-4.1.0-0001-Gentoo-specific-Adjust-install-path-for-build-dir.patch
30 new file mode 100644
31 index 00000000000..e066385def8
32 --- /dev/null
33 +++ b/sci-libs/med/files/med-4.1.0-0001-Gentoo-specific-Adjust-install-path-for-build-dir.patch
34 @@ -0,0 +1,26 @@
35 +From ccc372d4fa95ea2e083505ec5c536a48c49dd151 Mon Sep 17 00:00:00 2001
36 +From: Bernd Waibel <waebbl@×××××.com>
37 +Date: Wed, 25 Nov 2020 21:08:46 +0100
38 +Subject: [PATCH] [Gentoo-specific] Adjust install path for build dir
39 +
40 +Signed-off-by: Bernd Waibel <waebbl@×××××.com>
41 +---
42 + tools/mdump/CMakeLists.txt | 4 ++--
43 + 1 file changed, 2 insertions(+), 2 deletions(-)
44 +
45 +diff --git a/tools/mdump/CMakeLists.txt b/tools/mdump/CMakeLists.txt
46 +index 991b5af..dd2018a 100644
47 +--- a/tools/mdump/CMakeLists.txt
48 ++++ b/tools/mdump/CMakeLists.txt
49 +@@ -44,6 +44,6 @@ CONFIGURE_FILE(xmdump3.in ${PROJECT_BINARY_DIR}/xmdump3 @ONLY)
50 + CONFIGURE_FILE(xmdump4.in ${PROJECT_BINARY_DIR}/xmdump4 @ONLY)
51 +
52 + INSTALL(PROGRAMS ${PROJECT_BINARY_DIR}/xmdump2 ${PROJECT_BINARY_DIR}/xmdump3 ${PROJECT_BINARY_DIR}/xmdump4 DESTINATION bin)
53 +-INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink mdump4 mdump WORKING_DIRECTORY ${DESTDIR}${CMAKE_INSTALL_PREFIX}/bin)")
54 +-INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink xmdump4 xmdump WORKING_DIRECTORY ${DESTDIR}${CMAKE_INSTALL_PREFIX}/bin)")
55 ++INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink mdump4 mdump WORKING_DIRECTORY \"\$ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/bin\")")
56 ++INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink xmdump4 xmdump WORKING_DIRECTORY \"\$ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/bin\")")
57 +
58 +--
59 +2.29.2
60 +
61
62 diff --git a/sci-libs/med/files/med-4.1.0-0002-Re-add-option-for-building-Fortran-library.patch b/sci-libs/med/files/med-4.1.0-0002-Re-add-option-for-building-Fortran-library.patch
63 new file mode 100644
64 index 00000000000..b5c3364b799
65 --- /dev/null
66 +++ b/sci-libs/med/files/med-4.1.0-0002-Re-add-option-for-building-Fortran-library.patch
67 @@ -0,0 +1,39 @@
68 +From 3c8eb1ca6be13f185f20ee726f91f31d717947d2 Mon Sep 17 00:00:00 2001
69 +From: Bernd Waibel <waebbl@×××××.com>
70 +Date: Sat, 28 Nov 2020 21:52:29 +0100
71 +Subject: [PATCH] Re-add option for building Fortran library
72 +
73 +Signed-off-by: Bernd Waibel <waebbl@×××××.com>
74 +---
75 + CMakeLists.txt | 15 +++++++++------
76 + 1 file changed, 9 insertions(+), 6 deletions(-)
77 +
78 +diff --git a/CMakeLists.txt b/CMakeLists.txt
79 +index 2262275..7cb014c 100644
80 +--- a/CMakeLists.txt
81 ++++ b/CMakeLists.txt
82 +@@ -6,12 +6,15 @@ PROJECT(MEDFile C CXX)
83 + ## See http://www.cmake.org/Bug/view.php?id=10227
84 + #ENABLE_LANGUAGE(Fortran OPTIONAL)
85 +
86 +-INCLUDE(CheckLanguage)
87 +-CHECK_LANGUAGE(Fortran)
88 +-IF(CMAKE_Fortran_COMPILER)
89 +- ENABLE_LANGUAGE(Fortran)
90 +-ELSE()
91 +- MESSAGE(STATUS "No Fortran support")
92 ++OPTION (MEDFILE_BUILD_FORTRAN "Build MED-file fortran library" ON)
93 ++IF (MEDFILE_BUILD_FORTRAN)
94 ++ INCLUDE(CheckLanguage)
95 ++ CHECK_LANGUAGE(Fortran)
96 ++ IF(CMAKE_Fortran_COMPILER)
97 ++ ENABLE_LANGUAGE(Fortran)
98 ++ ELSE()
99 ++ MESSAGE(STATUS "No Fortran support")
100 ++ ENDIF()
101 + ENDIF()
102 +
103 + ## Version number
104 +--
105 +2.29.2
106 +
107
108 diff --git a/sci-libs/med/med-4.1.0.ebuild b/sci-libs/med/med-4.1.0.ebuild
109 new file mode 100644
110 index 00000000000..ab5056e4a4d
111 --- /dev/null
112 +++ b/sci-libs/med/med-4.1.0.ebuild
113 @@ -0,0 +1,109 @@
114 +# Copyright 1999-2020 Gentoo Authors
115 +# Distributed under the terms of the GNU General Public License v2
116 +
117 +EAPI=7
118 +
119 +FORTRAN_NEEDED=fortran
120 +
121 +PYTHON_COMPAT=( python3_{7..9} )
122 +
123 +inherit cmake fortran-2 python-single-r1
124 +
125 +DESCRIPTION="A library to store and exchange meshed data or computation results"
126 +HOMEPAGE="https://www.salome-platform.org/user-section/about/med"
127 +SRC_URI="https://files.salome-platform.org/Salome/other/${P}.tar.gz"
128 +LICENSE="LGPL-3"
129 +
130 +SLOT="0"
131 +KEYWORDS="~amd64 ~x86"
132 +IUSE="doc fortran mpi python test"
133 +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
134 +RESTRICT="!test? ( test ) python? ( test )"
135 +
136 +RDEPEND="
137 + !sci-libs/libmed
138 + dev-lang/tk:0=
139 + >=sci-libs/hdf5-1.10.2:=[fortran?,mpi?]
140 + mpi? ( virtual/mpi[fortran?] )
141 + python? ( ${PYTHON_DEPS} )
142 +"
143 +DEPEND="${RDEPEND}"
144 +BDEPEND="python? ( >=dev-lang/swig-3.0.8 )"
145 +
146 +PATCHES=(
147 + "${FILESDIR}/${P}-0001-Gentoo-specific-Adjust-install-path-for-build-dir.patch"
148 + "${FILESDIR}/${P}-0002-Re-add-option-for-building-Fortran-library.patch"
149 +)
150 +
151 +DOCS=( AUTHORS ChangeLog NEWS README README.CMAKE TODO )
152 +
153 +pkg_setup() {
154 + use python && python-single-r1_pkg_setup
155 + use fortran && fortran-2_pkg_setup
156 +}
157 +
158 +src_prepare() {
159 + if use python; then
160 + # fixes for correct libdir name
161 + local pysite=$(python_get_sitedir)
162 + pysite="${pysite##/usr/}"
163 + sed \
164 + -e 's@SET(_install_dir lib/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages/med)@SET(_install_dir '${pysite}'/med)@' \
165 + -i ./python/CMakeLists.txt || die "sed on ./python/CMakeLists.txt failed"
166 + fi
167 + for cm in ./src/CMakeLists.txt ./tools/medimport/CMakeLists.txt
168 + do
169 + sed -i -e "s@INSTALL(TARGETS \(.*\) DESTINATION lib)@INSTALL(TARGETS \1 DESTINATION $(get_libdir))@" \
170 + "${cm}" || die "sed on ${cm} failed"
171 + done
172 + sed -e 's/med-fichier/med/' -i CMakeLists.txt || die "fix paths failed"
173 + sed -e 's|doc/med-${MED_STR_VERSION}|doc/med-${MED_STR_VERSION}/html|' \
174 + -i CMakeLists.txt || die "fix doc path failed"
175 +
176 + cmake_src_prepare
177 +}
178 +
179 +src_configure() {
180 + local mycmakeargs=(
181 + # as indicated in the CMakeLists.txt, the shipped documentation is generated by a custom doxygen,
182 + # so let's avoid rebuilding it because it will be different
183 + -DMEDFILE_BUILD_DOC=OFF
184 + -DMEDFILE_BUILD_FORTRAN=$(usex fortran)
185 + -DMEDFILE_BUILD_PYTHON=$(usex python)
186 + -DMEDFILE_BUILD_SHARED_LIBS=ON
187 + -DMEDFILE_BUILD_STATIC_LIBS=OFF
188 + -DMEDFILE_BUILD_TESTS=$(usex test)
189 + -DMEDFILE_INSTALL_DOC=$(usex doc)
190 + -DMEDFILE_USE_MPI=$(usex mpi)
191 + -DMEDFILE_USE_UNICODE=ON
192 + )
193 + cmake_src_configure
194 +}
195 +
196 +src_install() {
197 + cmake_src_install
198 +
199 + # we don't need old 2.3.6 include files
200 + rm -r "${ED}"/usr/include/2.3.6 || die "failed to delete obsolete include dir"
201 +
202 + # the optimization done in CMakeLists.txt has been disabled so
203 + # we need to do it manually
204 + use python && python_optimize
205 +
206 + # Prevent test executables being installed
207 + if use test; then
208 + rm -r "${ED}"/usr/bin/testc || die "failed to delete C test executables"
209 + if use fortran; then
210 + rm -r "${ED}"/usr/bin/testf || die "failed to delete fortran test executables"
211 + fi
212 + if use python; then
213 + rm -r "${ED}"/usr/bin/testpy || die "failed to delete python test executables"
214 + fi
215 + fi
216 +}
217 +
218 +src_test() {
219 + # override parallel mode only for tests
220 + local myctestargs=( "-j 1" )
221 + cmake_src_test
222 +}