aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlessandro Barbieri <lssndrbarbieri@gmail.com>2022-06-30 12:25:11 +0200
committerAlessandro Barbieri <lssndrbarbieri@gmail.com>2022-06-30 12:26:17 +0200
commitfe6fcdd17ca1f612a11b4e5d25c91eecd7d954fc (patch)
tree7522bc2669690cec4cc797fe6edb4a0822dc8872 /sys-cluster
parentx11-terms/mlterm-canna: also install fb and wl modules (diff)
downloadguru-fe6fcdd17ca1f612a11b4e5d25c91eecd7d954fc.tar.gz
guru-fe6fcdd17ca1f612a11b4e5d25c91eecd7d954fc.tar.bz2
guru-fe6fcdd17ca1f612a11b4e5d25c91eecd7d954fc.zip
sys-cluster/scorep: new version that respect *FLAGS
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
Diffstat (limited to 'sys-cluster')
-rw-r--r--sys-cluster/scorep/Manifest1
-rw-r--r--sys-cluster/scorep/scorep-7.1-r1.ebuild167
2 files changed, 168 insertions, 0 deletions
diff --git a/sys-cluster/scorep/Manifest b/sys-cluster/scorep/Manifest
index 1464caa23..73dec39d8 100644
--- a/sys-cluster/scorep/Manifest
+++ b/sys-cluster/scorep/Manifest
@@ -1 +1,2 @@
DIST scorep-7.1.tar.gz 19979160 BLAKE2B be0f3d6534410c9c510e22110f92227dcdf52b77eba735913c92bcd67fed915d59a6988090f90abd777a9c4b0d821de7264d7b40d0687c8f684e4af72e42c43b SHA512 19da94e64eb9e3fb27f2c37087df2acc511645aa16abf80bb73c19eddab9efa004325d64eb0031df2f10a250976c9c2b1faf3169ebd32909703bf678c9abeb1a
+DIST scorep-edf930df.tar.gz 20238984 BLAKE2B 9a469102a5bace67633efcf8d90908bd42f7b3a90b34139034d94aace9ebf31d38a96266257df41c3b1c754eef69b9bc5fa32be5565d1b3f59f00314a04b8e98 SHA512 1332c12facc64f68c3e382fbc578834a845eec69528603eb860b6e46b9d69c079d0c962e343f02fbe51976546c02860c3f0b4a8b96882bdb606a9577020f5c84
diff --git a/sys-cluster/scorep/scorep-7.1-r1.ebuild b/sys-cluster/scorep/scorep-7.1-r1.ebuild
new file mode 100644
index 000000000..e44d04bb6
--- /dev/null
+++ b/sys-cluster/scorep/scorep-7.1-r1.ebuild
@@ -0,0 +1,167 @@
+# Copyright 2019-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FORTRAN_NEED_OPENMP=1
+FORTRAN_STANDARD=90
+LLVM_MAX_SLOT=14
+
+inherit llvm fortran-2 toolchain-funcs
+
+DESCRIPTION="Scalable Performance Measurement Infrastructure for Parallel Codes"
+HOMEPAGE="https://www.vi-hps.org/projects/score-p"
+SRC_URI="https://perftools.pages.jsc.fz-juelich.de/cicd/${PN}/branches/gentoo-${PN}-score/sources.edf930df.tar.gz -> ${PN}-edf930df.tar.gz"
+# https://perftools.pages.jsc.fz-juelich.de/cicd/${PN}/tags/${P}/${P}.tar.gz
+S="${WORKDIR}/sources.edf930df"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug gcc-plugin llvm mpi online-access opencl openshmem pmi unwind"
+#TODO: openacc
+
+CDEPEND="
+ dev-libs/cubelib
+ dev-libs/cubew
+ dev-libs/papi
+ sys-cluster/opari2
+ >=sys-cluster/otf2-3.0
+ sys-libs/binutils-libs:=
+ sys-libs/zlib
+
+ llvm? (
+ sys-devel/clang:"${LLVM_MAX_SLOT}"
+ <sys-devel/llvm-"${LLVM_MAX_SLOT}":=
+ || (
+ sys-devel/llvm:12
+ sys-devel/llvm:13
+ sys-devel/llvm:"${LLVM_MAX_SLOT}"
+ )
+ )
+ mpi? ( virtual/mpi )
+ openshmem? ( sys-cluster/SOS )
+ pmi? ( || ( sys-cluster/slurm sys-cluster/pmix[pmi] ) )
+ unwind? ( || ( sys-libs/libunwind sys-libs/llvm-libunwind ) )
+"
+RDEPEND="
+ ${CDEPEND}
+ opencl? ( virtual/opencl )
+"
+DEPEND="
+ ${CDEPEND}
+ opencl? ( dev-util/opencl-headers )
+"
+
+pkg_setup() {
+ use llvm && llvm_pkg_setup
+ fortran-2_pkg_setup
+}
+
+src_prepare() {
+ tc-export CC CXX FC F77 CPP AR
+ # eautoreconf will need custom autotools
+ rm build-config/common/platforms/platform-* || die
+
+ cat > build-config/common/platforms/platform-backend-user-provided <<-EOF || die
+ CC=${CC}
+ CXX=${CXX}
+ FC=${FC}
+ F77=${F77}
+ CPP=${CPP}
+ CXXCPP=${CPP}
+ EOF
+
+ cat > build-config/common/platforms/platform-frontend-user-provided <<-EOF || die
+ CC_FOR_BUILD=${CC}
+ F77_FOR_BUILD=${F77}
+ FC_FOR_BUILD=${FC}
+ CXX_FOR_BUILD=${CXX}
+ LDFLAGS_FOR_BUILD=${LDFLAGS}
+ CFLAGS_FOR_BUILD=${CFLAGS}
+ CXXFLAGS_FOR_BUILD=${CXXFLAGS}
+ CPPFLAGS_FOR_BUILD=${CPPFLAGS}
+ FCFLAGS_FOR_BUILD=${FCFLAGS}
+ FFLAGS_FOR_BUILD=${FFLAGS}
+ EOF
+
+ cat > build-config/common/platforms/platform-mpi-user-provided <<-EOF || die
+ MPICC=mpicc
+ MPICXX=mpicxx
+ MPIF77=mpif77
+ MPIFC=mpif90
+ MPI_CPPFLAGS=${CPPFLAGS}
+ MPI_CFLAGS=${CFLAGS}
+ MPI_CXXFLAGS=${CXXFLAGS}
+ MPI_FFLAGS=${FFLAGS}
+ MPI_FCFLAGS=${FCFLAGS}
+ MPI_LDFLAGS=${LDFLAGS}
+ EOF
+
+ cat > build-config/common/platforms/platform-shmem-user-provided <<-EOF || die
+ SHMEMCC=oshcc
+ SHMEMCXX=oshc++
+ SHMEMF77=oshfort
+ SHMEMFC=oshfort
+ SHMEM_CPPFLAGS=${CPPFLAGS}
+ SHMEM_CFLAGS=${CFLAGS}
+ SHMEM_CXXFLAGS=${CXXFLAGS}
+ SHMEM_FFLAGS=${FFLAGS}
+ SHMEM_FCFLAGS=${FCFLAGS}
+ SHMEM_LDFLAGS=${LDFLAGS}
+ SHMEM_LIBS=-lsma
+ SHMEM_LIB_NAME=libsma
+ SHMEM_NAME=sandia-openshmem
+ EOF
+
+ rm -r vendor || die
+ default
+}
+
+src_configure() {
+
+ local myconf=(
+ --disable-cuda
+ --disable-experimental-platform
+ --disable-openacc
+ --disable-platform-mic
+ --disable-static
+ --enable-shared
+ --with-cubelib
+ --with-cubew
+ --with-custom-compilers
+ --with-libbfd
+ --with-opari2
+ --with-otf2
+ --with-papi-header="/usr/include"
+ --with-papi-lib="/usr/$(get_libdir)"
+ --without-libcuda
+ --without-libcudart
+ --without-libcupti
+ --without-liblustreapi
+ --without-libnvidia-ml
+ --without-librca
+ --without-pdt
+
+ $(use_enable debug)
+ $(use_with gcc-plugin)
+ $(use_with online-access)
+ $(use_with opencl libOpenCL)
+ $(use_with openshmem shmem openshmem)
+ $(use_with pmi)
+ $(use_with unwind libunwind)
+ )
+ if use llvm; then
+ myconf+=( "--with-llvm=$(get_llvm_prefix)/bin" )
+ else
+ myconf+=( "--without-llvm" )
+ fi
+ use mpi || myconf+=( "--without-mpi" )
+
+ econf CXXFLAGS_FOR_BUILD_SCORE="${CXXFLAGS}" CFLAGS_FOR_BUILD_SCORE="${CFLAGS}" LDFLAGS_FOR_BUILD_SCORE="${LDFLAGS}" "${myconf[@]}"
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}