mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-10 15:45:15 -04:00
128 lines
3.3 KiB
Bash
128 lines
3.3 KiB
Bash
# Copyright 1999-2022 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
FORTRAN_NEEDED="fortran"
|
|
MYPN="${PN^^}"
|
|
PYTHON_COMPAT=( python3_{8..10} )
|
|
|
|
inherit cmake python-single-r1 fortran-2
|
|
|
|
DESCRIPTION="Next generation of ADIOS developed in the Exascale Computing Program"
|
|
HOMEPAGE="
|
|
https://csmd.ornl.gov/software/adios2
|
|
https://github.com/ornladios/adios2
|
|
"
|
|
SRC_URI="https://github.com/ornladios/${MYPN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
|
|
S="${WORKDIR}/${MYPN}-${PV}"
|
|
|
|
LICENSE="Apache-2.0"
|
|
SLOT="0"
|
|
KEYWORDS="~amd64"
|
|
IUSE="blosc bzip2 endian-reverse examples fortran hdf5 mpi png profile python sodium sst szip test zeromq zfp"
|
|
|
|
RDEPEND="
|
|
dev-cpp/nlohmann_json
|
|
dev-cpp/yaml-cpp:=
|
|
dev-libs/atl
|
|
dev-libs/dill
|
|
>dev-libs/ffs-1.6.0
|
|
dev-libs/kwsys:=
|
|
dev-libs/perfstubs:=[timers]
|
|
dev-libs/pugixml
|
|
net-libs/enet
|
|
>net-libs/evpath-4.5.0
|
|
|
|
blosc? ( dev-libs/c-blosc:= )
|
|
bzip2? ( app-arch/bzip2 )
|
|
hdf5? ( sci-libs/hdf5:=[mpi=] )
|
|
mpi? ( virtual/mpi[cxx] )
|
|
png? ( media-libs/libpng:= )
|
|
python? (
|
|
${PYTHON_DEPS}
|
|
$(python_gen_cond_dep '
|
|
dev-python/numpy[${PYTHON_USEDEP}]
|
|
dev-python/pybind11[${PYTHON_USEDEP}]
|
|
')
|
|
mpi? ( $(python_gen_cond_dep 'dev-python/mpi4py[${PYTHON_USEDEP}]') )
|
|
)
|
|
sodium? ( dev-libs/libsodium:= )
|
|
sst? ( sys-block/libfabric:= )
|
|
szip? ( virtual/szip )
|
|
zeromq? ( net-libs/zeromq:= )
|
|
zfp? ( dev-libs/zfp )
|
|
"
|
|
DEPEND="
|
|
${RDEPEND}
|
|
test? ( dev-cpp/gtest )
|
|
"
|
|
BDEPEND="virtual/pkgconfig"
|
|
|
|
PATCHES=(
|
|
"${FILESDIR}/${P}-system-libs.patch"
|
|
"${FILESDIR}/${P}-sandbox.patch"
|
|
)
|
|
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
|
RESTRICT="!test? ( test )"
|
|
|
|
pkg_setup() {
|
|
use fortran && fortran-2_pkg_setup
|
|
use python && python-single-r1_pkg_setup
|
|
}
|
|
|
|
src_configure() {
|
|
local mycmakeargs=(
|
|
-DBUILD_SHARED_LIBS=ON
|
|
-DADIOS2_USE_BP5=OFF
|
|
-DADIOS2_USE_CUDA=OFF
|
|
-DADIOS2_USE_DataMan=OFF
|
|
-DADIOS2_USE_DataSpaces=OFF
|
|
-DADIOS2_USE_EXTERNAL_ATL=ON
|
|
-DADIOS2_USE_EXTERNAL_DEPENDENCIES=ON
|
|
-DADIOS2_USE_EXTERNAL_DILL=ON
|
|
-DADIOS2_USE_EXTERNAL_ENET=ON
|
|
-DADIOS2_USE_EXTERNAL_FFS=ON
|
|
-DADIOS2_USE_EXTERNAL_EVPATH=ON
|
|
-DADIOS2_USE_EXTERNAL_GTEST=ON
|
|
-DADIOS2_USE_EXTERNAL_NLOHMANN_JSON=ON
|
|
-DADIOS2_USE_EXTERNAL_PUGIXML=ON
|
|
-DADIOS2_USE_EXTERNAL_PYBIND11=ON
|
|
-DADIOS2_USE_EXTERNAL_YAMLCPP=ON
|
|
-DADIOS2_USE_IME=OFF
|
|
-DADIOS2_USE_LIBPRESSIO=OFF
|
|
-DADIOS2_USE_MGARD=OFF
|
|
|
|
-DADIOS2_BUILD_EXAMPLES="$(usex examples)"
|
|
-DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL="$(usex examples)"
|
|
-DADIOS2_USE_Blosc="$(usex blosc)"
|
|
-DADIOS2_USE_BZip2="$(usex bzip2)"
|
|
-DADIOS2_USE_Endian_Reverse="$(usex endian-reverse)"
|
|
-DADIOS2_USE_Fortran="$(usex fortran)"
|
|
-DADIOS2_USE_HDF5="$(usex hdf5)"
|
|
-DADIOS2_USE_MPI="$(usex mpi)"
|
|
-DADIOS2_USE_PNG="$(usex png)"
|
|
-DADIOS2_USE_Profiling="$(usex profile)"
|
|
-DADIOS2_USE_Python="$(usex python)"
|
|
-DADIOS2_USE_Sodium="$(usex sodium)"
|
|
-DADIOS2_USE_SST="$(usex sst)"
|
|
-DADIOS2_USE_SZ="$(usex szip)"
|
|
-DADIOS2_USE_ZeroMQ="$(usex zeromq)"
|
|
-DADIOS2_USE_ZFP="$(usex zfp)"
|
|
-DBUILD_TESTING="$(usex python)"
|
|
)
|
|
cmake_src_configure
|
|
}
|
|
|
|
src_prepare() {
|
|
rm -r thirdparty/{atl,dill,enet,EVPath,ffs,GTest,KWSys,mingw-w64,pugixml,pybind11,yaml-cpp} || die
|
|
rm -r thirdparty/nlohmann_json/nlohmann_json_wrapper/single_include || die
|
|
rm -r thirdparty/perfstubs/perfstubs || die
|
|
cmake_src_prepare
|
|
}
|
|
|
|
src_install() {
|
|
cmake_src_install
|
|
dodoc ReadMe.md
|
|
}
|