diff --git a/TODO.md b/TODO.md index 0bcc9e5b44..e7aac09c13 100644 --- a/TODO.md +++ b/TODO.md @@ -42,7 +42,6 @@ Name | Buildsystem | Category | User | Need help | Dependency [geopm](https://geopm.github.io/) | autotools | power | Alessandro-Barbieri | ✖ | ✔ [warewulf](https://warewulf.lbl.gov/) | autotools | cluster | Alessandro-Barbieri | ✖ | ✔ [scalasca](https://scalasca.org/) | autotools | cluster | Alessandro-Barbieri | ✖ | ✔ -[scorep](https://www.vi-hps.org/projects/score-p/) | autotools | cluster | Alessandro-Barbieri | ✖ | ✔ [jmodelica](https://github.com/jnorthrup/jmodelica) | autotools | science | Alessandro-Barbieri | ✔ | ✔ [flux-core](https://github.com/flux-framework/flux-core) | autotools | cluster | Alessandro-Barbieri | ✔ | ✔ [GPI-2](https://github.com/cc-hpc-itwm/GPI-2) | autotools | cluster | Alessandro-Barbieri | ✖ | ✔ diff --git a/dev-libs/cubelib/Manifest b/dev-libs/cubelib/Manifest new file mode 100644 index 0000000000..863b809cb9 --- /dev/null +++ b/dev-libs/cubelib/Manifest @@ -0,0 +1 @@ +DIST cubelib-4.7.tar.gz 6163552 BLAKE2B e07e78011501fe19240f22133cf9a9202176ca21410412be19674d43e8177ce7683cb19414eacacf6a56f261602414db55ba65abc8948846c1dbbc0737636fc9 SHA512 cf328b3300170ba832bda13374f7e8e59a920308fc1604f03eb5f172ab6dd6d3ccd0b6517eb68bf58b07a08174dded0f80fe7f37ca63727ce397e095801864f1 diff --git a/dev-libs/cubelib/cubelib-4.7.ebuild b/dev-libs/cubelib/cubelib-4.7.ebuild new file mode 100644 index 0000000000..56f15aa3bc --- /dev/null +++ b/dev-libs/cubelib/cubelib-4.7.ebuild @@ -0,0 +1,38 @@ +# Copyright 2019-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="General purpose C++ library and tools" +HOMEPAGE="https://www.scalasca.org/scalasca/software/cube-4.x" +SRC_URI="https://apps.fz-juelich.de/scalasca/releases/cube/${PV}/dist/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" + +DEPEND="dev-cpp/gtest" + +src_prepare() { + rm -r vendor/googletest || die + default + eautoreconf +} + +src_configure() { + local myconf=( + --disable-platform-mic + ) + econf "${myconf[@]}" +} + +src_install() { + default + mv "${ED}/usr/share/doc/cubelib/example" "${ED}/usr/share/doc/${PF}/" || die + rm -r "${ED}/usr/share/doc/cubelib" || die + dodoc OPEN_ISSUES README + docompress -x "${ED}/usr/share/doc/${PF}/example" + find "${ED}" -name '*.a' -delete || die +} diff --git a/dev-libs/cubelib/metadata.xml b/dev-libs/cubelib/metadata.xml new file mode 100644 index 0000000000..6c0bdfd682 --- /dev/null +++ b/dev-libs/cubelib/metadata.xml @@ -0,0 +1,8 @@ + + + + + lssndrbarbieri@gmail.com + Alessandro Barbieri + + diff --git a/dev-libs/cubew/Manifest b/dev-libs/cubew/Manifest new file mode 100644 index 0000000000..1903bd55e3 --- /dev/null +++ b/dev-libs/cubew/Manifest @@ -0,0 +1 @@ +DIST cubew-4.7.tar.gz 1347200 BLAKE2B 5083ca74a1125e81bc2a5493bb26119bbb478a16847cc4ef3cf6afbad9289bcffff8a0bc2b480b9cf711560d33f5a7fa207b7a20ffde343eac8e05385d3e778f SHA512 21bfef1fadb93d6089503ee86b54bbd2aca67a3a0f33ad64a1bd50b507dbf1a3047b4a454f9225f0379353d31f74e4b6a3a6851b776f44bd0ececb3322466f3d diff --git a/dev-libs/cubew/cubew-4.7.ebuild b/dev-libs/cubew/cubew-4.7.ebuild new file mode 100644 index 0000000000..9fc2ad4731 --- /dev/null +++ b/dev-libs/cubew/cubew-4.7.ebuild @@ -0,0 +1,51 @@ +# Copyright 2019-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="High performance C Writer library" +HOMEPAGE="https://www.scalasca.org/scalasca/software/cube-4.x" +SRC_URI="https://apps.fz-juelich.de/scalasca/releases/cube/${PV}/dist/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" +IUSE="advanced-memory memory-tracking memory-tracing +zlib" + +RDEPEND=" + sys-libs/binutils-libs + zlib? ( sys-libs/zlib ) +" +DEPEND="${RDEPEND}" + +REQUIRED_USE=" + memory-tracking? ( advanced-memory ) + memory-tracing? ( advanced-memory ) +" + +src_prepare() { + default + eautoreconf +} + +src_configure() { + local myconf=( + --disable-platform-mic + $(use_with advanced-memory) + $(use_with memory-tracking) + $(use_with memory-tracing) + $(use_with zlib compression) + ) + econf "${myconf[@]}" +} + +src_install() { + default + mv "${ED}/usr/share/doc/cubew" "${ED}/usr/share/doc/${PF}" || die + dodoc OPEN_ISSUES README + docompress -x "${ED}/usr/share/doc/${PF}/example" + find "${ED}" -name '*.la' -delete || die + find "${ED}" -name '*.a' -delete || die +} diff --git a/dev-libs/cubew/metadata.xml b/dev-libs/cubew/metadata.xml new file mode 100644 index 0000000000..01baafc10e --- /dev/null +++ b/dev-libs/cubew/metadata.xml @@ -0,0 +1,13 @@ + + + + + lssndrbarbieri@gmail.com + Alessandro Barbieri + + + Enables advanced memory features such as usage of an external memory allocator + Enables internal memory tracking + Enables internal memory tracing more intensive memory usage report. + + diff --git a/dev-python/check-manifest/Manifest b/dev-python/check-manifest/Manifest deleted file mode 100644 index 1990a386a0..0000000000 --- a/dev-python/check-manifest/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST check-manifest-0.46.tar.gz 34419 BLAKE2B 9152ca60756c503c744192ab72668858ba7fe491745c48337aab2b135f9d491319bb383af901110abf61a7b439e01bba4d5c22f2042aca6cf1e0b990ce15726f SHA512 301caa9c95f4ae3655c290217867df7e9de9967c1a603a32e4a0e220651de555c3dd716b109b1b1dda8e2547396bce8b742fd08091a4879943aefc56e8008d96 diff --git a/dev-python/check-manifest/check-manifest-0.46.ebuild b/dev-python/check-manifest/check-manifest-0.46.ebuild deleted file mode 100644 index b201cf09c4..0000000000 --- a/dev-python/check-manifest/check-manifest-0.46.ebuild +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -PYTHON_COMPAT=( python3_{8..9} ) -DISTUTILS_USE_SETUPTOOLS=rdepend - -inherit distutils-r1 - -DESCRIPTION="Tool to check the completeness of MANIFEST.in for Python packages" -HOMEPAGE=" - https://github.com/mgedmin/check-manifest - https://pypi.org/project/check-manifest/ -" -SRC_URI="https://github.com/mgedmin/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64" - -RDEPEND=" - dev-python/toml[${PYTHON_USEDEP}] -" -DEPEND=" - ${RDEPEND} - test? ( - dev-python/mock[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -python_test() { - epytest \ - --deselect tests.py::Tests::test_build_sdist_pep517_isolated \ - --deselect tests.py::Tests::test_build_sdist_pep517_no_isolation -} diff --git a/dev-python/check-manifest/metadata.xml b/dev-python/check-manifest/metadata.xml deleted file mode 100644 index 68672b0eee..0000000000 --- a/dev-python/check-manifest/metadata.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - -Are you a Python developer? Have you uploaded packages to the Python Package Index? Have you accidentally uploaded broken packages with some files missing? If so, check-manifest is for you. - - - mgedmin/check-manifest - check-manifest - - diff --git a/dev-util/rust-analyzer/rust-analyzer-20220606.ebuild b/dev-util/rust-analyzer/rust-analyzer-20220606.ebuild index e97bd5d4b4..993c69d76a 100644 --- a/dev-util/rust-analyzer/rust-analyzer-20220606.ebuild +++ b/dev-util/rust-analyzer/rust-analyzer-20220606.ebuild @@ -69,6 +69,7 @@ CRATES=" libmimalloc-sys-0.1.24 lock_api-0.4.7 log-0.4.16 + lsp-server-0.6.0 lsp-types-0.93.0 matchers-0.1.0 matches-0.1.9 diff --git a/net-misc/maestral/Manifest b/net-misc/maestral/Manifest index 42374d8506..1e9645ccec 100644 --- a/net-misc/maestral/Manifest +++ b/net-misc/maestral/Manifest @@ -1,3 +1,3 @@ DIST maestral-1.5.2.tar.gz 8277812 BLAKE2B df901a0a98a51f3c611cd3aa3ff4d4662fa10cdd595df2214f1a4c9fd0da8c787531a21671261df7196869d1822c69884299f2bcecd0e4190bb81fcb55a8885f SHA512 eafed2a3dbc55e3ee9417da393864ec94c76724949855805e99e3c65c29b1d33aeeb2ac063c0a4c115d3f03c002dbe899b6ec1ec6ebcb0a29386a39eabdeb769 DIST maestral-1.5.3.tar.gz 8280040 BLAKE2B dcda43880cea3fb00098b6bf87e43318a523a7c9d83886efff58be715cde17f67504b31735a006b951963e5cf0ef70b4b6431cb84200722cae186053a01edd63 SHA512 aa21277623f4e6f3283cd989be910eeb1caa3a842abca595b27a551c1c9bd1e7ef083e495ee0f096190accd91835939cb2f4a26624feae0046d8770d53aaac2f -DIST maestral-1.6.2.tar.gz 7982890 BLAKE2B 5a5b5f1c3a3e9000379c720b820c79ff3b6acabb2d7ca2716980299434dd9f6a900b56a4ad0808e9253f292c8d4d62680306071233b85313dad128717bbbb1f8 SHA512 ff02c89e9b1367bd9485b513c66d09912f88a6b45149c5764d8566c2a6ee2713adbb07de9bbe914b602d5aa06abe734af3e73e98bdba4b75a3bdcfba7c82979d +DIST maestral-1.6.3.tar.gz 7984215 BLAKE2B 1abf2d35b3637bdaa72d1f545d7ab235e0549bd184c052099aed504b2435db1ab3b395360b053b69ccfa5ef048457f85fb83ef900f6aac1905ef09f109cbcb2d SHA512 58185048a5603a1d5883d44c2bd652515598e99a632aaeedbf84102faf0dcd1cf2172240563ecc2bc2e804bd90ca59d6599255d3d97c9844d6dacd7f05952859 diff --git a/net-misc/maestral/maestral-1.6.2.ebuild b/net-misc/maestral/maestral-1.6.3.ebuild similarity index 100% rename from net-misc/maestral/maestral-1.6.2.ebuild rename to net-misc/maestral/maestral-1.6.3.ebuild diff --git a/profiles/package.mask b/profiles/package.mask index ba4836d7f6..d242e5545c 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -47,3 +47,9 @@ dev-python/threadloop # Anna Vyalkova (2022-06-04) # Incompatible with recent pytest. No revdeps. Removal on 2022-07-05. dev-python/thriftrw + +# Alexey Sokolov (2022-06-10) +# Dead upstream. Doesn't work with py3.10. Removal on 2022-07-15. +# https://bugs.gentoo.org/848399 +# Feel free to unmask if you want to take maintainership. +net-p2p/nuxhash diff --git a/sci-misc/linuxcnc/linuxcnc-9999.ebuild b/sci-misc/linuxcnc/linuxcnc-9999.ebuild index 00d229f692..6166db9846 100644 --- a/sci-misc/linuxcnc/linuxcnc-9999.ebuild +++ b/sci-misc/linuxcnc/linuxcnc-9999.ebuild @@ -1,101 +1,101 @@ -# Copyright 1999-2015 Gentoo Foundation +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# $Header: $ -# Thanks to the original author's code, slis@gentoo.org's code, because the original code is outdated, this ebuild has been modified portably -EAPI="7" +EAPI=8 PYTHON_COMPAT=( python3_10 ) +PYTHON_REQUIRED_USE="tk" -inherit autotools eutils flag-o-matic multilib python-single-r1 git-r3 +inherit autotools desktop git-r3 python-single-r1 -DESCRIPTION="LinuxCNC " +DESCRIPTION="LinuxCNC" HOMEPAGE="http://linuxcnc.org/" #SRC_URI="mirror://sourceforge/gentoocnc/distfiles/${P}.tar.gz" #SRC_URI="https://github.com/LinuxCNC/linuxcnc/archive/2.7.zip" EGIT_REPO_URI="https://github.com/LinuxCNC/linuxcnc.git https://gitclone.com/github.com/LinuxCNC/linuxcnc.git" - S="${WORKDIR}"/linuxcnc-9999/src LICENSE="LGPL-3" -SLOT="linuxcnc-9999" -KEYWORDS="~amd64 ~x86" -IUSE="+python +uspace +X +gtk -rt gstreamer modbus simulator usb" +SLOT="9999" +KEYWORDS="" +IUSE="+gtk modbus rt simulator usb +X" # TODO: add shmdrv use flag -# --disable-python uses python anyways and fails so python is a required use flag -REQUIRED_USE=" - python - python? ( ${PYTHON_REQUIRED_USE} ) - rt? ( !simulator ) - " - -DEPEND="dev-lang/tcl - dev-lang/tk - dev-tcltk/tkimg - dev-tcltk/tclx - dev-libs/boost[python] - modbus? ( - - jack9603301@163.com - - - Build with RT_PREEMPT threads modules - Build with posix threads (no realtime) - Build modbus libraries - Build with xenomai userland threads - Build with realtime threads support - + + jack9603301@163.com + Chunhui Ouyang + + + Build with RT_PREEMPT threads modules + Build with posix threads (no realtime) + Build modbus libraries + + + diff --git a/sys-cluster/OpenHPC-meta/OpenHPC-meta-2.1.ebuild b/sys-cluster/OpenHPC-meta/OpenHPC-meta-2.1.ebuild index fee1dd24e4..0b38f75acb 100644 --- a/sys-cluster/OpenHPC-meta/OpenHPC-meta-2.1.ebuild +++ b/sys-cluster/OpenHPC-meta/OpenHPC-meta-2.1.ebuild @@ -68,6 +68,7 @@ RDEPEND=" sys-cluster/extrae[${PYTHON_SINGLE_USEDEP}] sys-cluster/mpi-benchmarks sys-cluster/osu-micro-benchmarks + sys-cluster/scorep[mpi,unwind] ) python? ( @@ -107,7 +108,6 @@ RDEPEND=" # perf-tools #scalasca #tau - #scorep # slurm-server #pdsh-slurm diff --git a/sys-cluster/SOS/SOS-1.5.0-r1.ebuild b/sys-cluster/SOS/SOS-1.5.0-r1.ebuild index 3ac0bd9858..a4ebf34c73 100644 --- a/sys-cluster/SOS/SOS-1.5.0-r1.ebuild +++ b/sys-cluster/SOS/SOS-1.5.0-r1.ebuild @@ -11,7 +11,7 @@ DESCRIPTION="implementation of the OpenSHMEM specification" HOMEPAGE="https://github.com/Sandia-OpenSHMEM/SOS" SRC_URI="https://github.com/Sandia-OpenSHMEM/SOS/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" -LICENSE="BSD public-domain mpich2" +LICENSE="BSD public-domain" SLOT="0" KEYWORDS="~amd64" IUSE_OFI_MR=" @@ -26,13 +26,12 @@ IUSE_TOTAL_DATA_ORDERING=" " IUSE="${IUSE_OFI_MR} ${IUSE_TOTAL_DATA_ORDERING} av-map bounce-buffers cma completion-polling cxx debug error-checking fortran long-fortran-header manual-progress memcpy ofi ofi-fence openmp -+pmi-mpi pmi-simple portals4 profiling pthread-mutexes remote-virtual-addressing threads ++pmi portals4 profiling pthread-mutexes remote-virtual-addressing threads thread-completion ucx xpmem" RDEPEND=" ofi? ( sys-block/libfabric ) - pmi-simple? ( sys-cluster/pmix[pmi] ) - pmi-mpi? ( virtual/mpi ) + pmi? ( || ( sys-cluster/slurm sys-cluster/pmix[pmi] ) ) portals4? ( sys-cluster/portals4 ) ucx? ( sys-cluster/ucx ) xpmem? ( sys-kernel/xpmem ) @@ -42,7 +41,6 @@ DEPEND="${RDEPEND}" REQUIRED_USE=" ^^ ( ${IUSE_OFI_MR/+/} ) ^^ ( ${IUSE_TOTAL_DATA_ORDERING/+/} ) - ^^ ( pmi-mpi pmi-simple ) ?? ( cma xpmem ) ?? ( ofi portals4 ) " @@ -79,7 +77,7 @@ src_prepare() { } src_configure() { - if use pmi-mpi; then + if use pmi; then export CC=mpicc export CXX=mpicxx fi @@ -96,6 +94,7 @@ src_configure() { local myconf=( --disable-picky + --disable-pmi-simple --disable-rpm-prefix --enable-ofi-mr="${ofimr}" --enable-total-data-ordering="${tda}" @@ -111,8 +110,7 @@ src_configure() { $(use_enable memcpy) $(use_enable ofi-fence) $(use_enable openmp) - $(use_enable pmi-mpi) - $(use_enable pmi-simple) + $(use_enable pmi pmi-mpi) $(use_enable profiling) $(use_enable pthread-mutexes) $(use_enable remote-virtual-addressing) @@ -121,7 +119,7 @@ src_configure() { $(use_with cma) $(use_with ofi) - $(use_with pmi-mpi pmi) + $(use_with pmi) $(use_with portals4) $(use_with ucx) $(use_with xpmem) diff --git a/sys-cluster/SOS/metadata.xml b/sys-cluster/SOS/metadata.xml index a1df257ecd..fcba7b257c 100644 --- a/sys-cluster/SOS/metadata.xml +++ b/sys-cluster/SOS/metadata.xml @@ -19,8 +19,7 @@ Use libfabric as transport layer Use FI_FENCE feature to optimize put-with-signal operations - Use MPI for process management - Include support for interfacing with a PMI 1.0 launcher. The launcher must be provided by a separate package, such as MPICH, Hydra, or SLURM. + Use MPI for process management Use portals4 as transport layer Enable profiling (pshmem) interface Use pthread mutexes instead of internal queueing locks diff --git a/sys-cluster/adios2/adios2-2.8.1.ebuild b/sys-cluster/adios2/adios2-2.8.1-r1.ebuild similarity index 97% rename from sys-cluster/adios2/adios2-2.8.1.ebuild rename to sys-cluster/adios2/adios2-2.8.1-r1.ebuild index 5901f6ca00..1313f90294 100644 --- a/sys-cluster/adios2/adios2-2.8.1.ebuild +++ b/sys-cluster/adios2/adios2-2.8.1-r1.ebuild @@ -109,7 +109,7 @@ src_configure() { -DADIOS2_USE_SZ="$(usex szip)" -DADIOS2_USE_ZeroMQ="$(usex zeromq)" -DADIOS2_USE_ZFP="$(usex zfp)" - -DBUILD_TESTING=$(usex test) + -DBUILD_TESTING="$(usex python)" ) cmake_src_configure } @@ -121,10 +121,6 @@ src_prepare() { cmake_src_prepare } -src_compile() { - cmake_src_compile -} - src_install() { cmake_src_install dodoc ReadMe.md diff --git a/sys-cluster/mpi-benchmarks/files/mpi-benchmarks-2021.3-makefile.patch b/sys-cluster/mpi-benchmarks/files/mpi-benchmarks-2021.3-makefile.patch index 2ba8660e19..fbf00de646 100644 --- a/sys-cluster/mpi-benchmarks/files/mpi-benchmarks-2021.3-makefile.patch +++ b/sys-cluster/mpi-benchmarks/files/mpi-benchmarks-2021.3-makefile.patch @@ -116,7 +116,7 @@ -$(BINARY): $(IMB_OBJ) $(BECHMARK_SUITE_OBJ) $(ADDITIONAL_OBJ) $(YAML_CPP_LIB) - $(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ $^ $(LDFLAGS) +$(BINARY): $(IMB_OBJ) $(BECHMARK_SUITE_OBJ) $(ADDITIONAL_OBJ) -+ $(CXX) $(CPPFLAGS) $(CXXFLAGS) -fPIE -o $@ $^ $(LDFLAGS) $(YAML_CPP_LIB) -lmpi_cxx -lmpi ++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) -fPIE -o $@ $^ $(LDFLAGS) $(YAML_CPP_LIB) %.o: %.cpp - $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $< diff --git a/sys-cluster/mpi-benchmarks/mpi-benchmarks-2021.3.ebuild b/sys-cluster/mpi-benchmarks/mpi-benchmarks-2021.3.ebuild index 44f0cf6178..3a98c36bc4 100644 --- a/sys-cluster/mpi-benchmarks/mpi-benchmarks-2021.3.ebuild +++ b/sys-cluster/mpi-benchmarks/mpi-benchmarks-2021.3.ebuild @@ -22,6 +22,12 @@ DEPEND="${RDEPEND}" PATCHES=( "${FILESDIR}/${P}-makefile.patch" ) +src_configure() { + export CC=mpicc + export CXX=mpicxx + default +} + src_install() { dodoc ReadMe_IMB.txt README.md dobin IMB-* diff --git a/sys-cluster/opari2/Manifest b/sys-cluster/opari2/Manifest new file mode 100644 index 0000000000..663a51e4fc --- /dev/null +++ b/sys-cluster/opari2/Manifest @@ -0,0 +1 @@ +DIST opari2-2.0.6.tar.gz 1355638 BLAKE2B 343f747de622fd6bf03c8aa7c250c6293868427e9e5f6e077a72b618afd683b6f4e30d8ff8e1c2f01b28bbb401e1522df9803006bd109c859b688b6cbf383a0e SHA512 253dd353c3dbda148a5ca22124163362528db76343ec668d1fa6f45556befb6ef44c1b6cf2d8977ba712866c5f95db5d1461b943b14c2418cb45c3627882b573 diff --git a/sys-cluster/opari2/metadata.xml b/sys-cluster/opari2/metadata.xml new file mode 100644 index 0000000000..28fe2fe904 --- /dev/null +++ b/sys-cluster/opari2/metadata.xml @@ -0,0 +1,13 @@ + + + + + lssndrbarbieri@gmail.com + Alessandro Barbieri + + +OPARI2 is a tool to automatically instrument C, C++ and Fortran source code files in which pragmas (C/C++) or directives (Fortran) are used. Currently OpenMP and POMP user instrumentation are supported. Function calls to the pomp2_lib.h and pomp2_user_lib.h are inserted around or as replacement for supported directives. By implementing the respective APIs, detailed measurements regarding the runtime behavior of an applications can be made. A conforming implementation needs to implement all functions associated with the supported programming model. The original OPARI was developed to perform source-to-source instrumentation of OpenMP programs. Therefore the main focus of this document still lies on support for OpenMP. +OpenMP 3.0 introduced tasking to OpenMP. To support this feature the POMP2 adapter needs to do some bookkeeping in regard to specific task IDs. The pomp2_lib.c provided with this package includes the necessary code so it is strongly advised to use it as a basis for writing an adapter to your own tool. +A detailed description of the first OPARI version has been published by Mohr et al. in "Design and prototype of a performance tool interface for OpenMP" (Journal of supercomputing, 23, 2002). + + diff --git a/sys-cluster/opari2/opari2-2.0.6.ebuild b/sys-cluster/opari2/opari2-2.0.6.ebuild new file mode 100644 index 0000000000..a55ddf1e8c --- /dev/null +++ b/sys-cluster/opari2/opari2-2.0.6.ebuild @@ -0,0 +1,29 @@ +# Copyright 2019-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="OpenMP Pragma And Region Instrumentor" +HOMEPAGE="https://www.vi-hps.org/projects/score-p" +SRC_URI="https://perftools.pages.jsc.fz-juelich.de/cicd/${PN}/tags/${P}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND="" +DEPEND="${RDEPEND}" + +src_prepare() { + default + eautoreconf +} + +src_install() { + default + dodoc OPEN_ISSUES README + find "${ED}" -name '*.la' -delete || die + find "${ED}" -name '*.a' -delete || die +} diff --git a/sys-cluster/portals4/portals4-1.0_alpha1_p20190109-r3.ebuild b/sys-cluster/portals4/portals4-1.0_alpha1_p20190109-r3.ebuild index 7f62a9b5dd..8a664a57db 100644 --- a/sys-cluster/portals4/portals4-1.0_alpha1_p20190109-r3.ebuild +++ b/sys-cluster/portals4/portals4-1.0_alpha1_p20190109-r3.ebuild @@ -32,12 +32,11 @@ RDEPEND=" dev-libs/libxml2 knem? ( sys-cluster/knem ) - pmi? ( sys-cluster/pmix[pmi] ) + pmi? ( || ( sys-cluster/slurm sys-cluster/pmix[pmi] ) ) ppe? ( sys-kernel/xpmem ) " DEPEND=" ${RDEPEND} - test? ( sys-cluster/pmix[pmi] ) " PATCHES=( "${FILESDIR}/${PN}-fix-PPE-related-compile-and-link-errors.patch" ) @@ -47,6 +46,7 @@ REQUIRED_USE=" knem? ( transport_shmem ) reliable-udp? ( transport_udp ) + test? ( pmi ) " src_prepare() { diff --git a/sys-cluster/scorep/Manifest b/sys-cluster/scorep/Manifest new file mode 100644 index 0000000000..1464caa239 --- /dev/null +++ b/sys-cluster/scorep/Manifest @@ -0,0 +1 @@ +DIST scorep-7.1.tar.gz 19979160 BLAKE2B be0f3d6534410c9c510e22110f92227dcdf52b77eba735913c92bcd67fed915d59a6988090f90abd777a9c4b0d821de7264d7b40d0687c8f684e4af72e42c43b SHA512 19da94e64eb9e3fb27f2c37087df2acc511645aa16abf80bb73c19eddab9efa004325d64eb0031df2f10a250976c9c2b1faf3169ebd32909703bf678c9abeb1a diff --git a/sys-cluster/scorep/metadata.xml b/sys-cluster/scorep/metadata.xml new file mode 100644 index 0000000000..b371d2d2e4 --- /dev/null +++ b/sys-cluster/scorep/metadata.xml @@ -0,0 +1,16 @@ + + + + + lssndrbarbieri@gmail.com + Alessandro Barbieri + + + Enable support for the GCC plug-in instrumentation + Enable the user library wrapping feature + Enable Online Access + Build with libOpenCL support + Use the SHMEM compiler + Build with libpmi support + + diff --git a/sys-cluster/scorep/scorep-7.1.ebuild b/sys-cluster/scorep/scorep-7.1.ebuild new file mode 100644 index 0000000000..b71364f089 --- /dev/null +++ b/sys-cluster/scorep/scorep-7.1.ebuild @@ -0,0 +1,126 @@ +# Copyright 2019-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_MAX_SLOT=14 + +inherit autotools 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}/tags/${P}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" +IUSE="debug gcc-plugin llvm mpi online-access opencl openshmem pmi unwind" + +CDEPEND=" + dev-libs/cubelib + dev-libs/cubew + dev-libs/papi + sys-cluster/opari2 + sys-cluster/otf2 + sys-libs/binutils-libs:= + sys-libs/zlib + + llvm? ( + sys-devel/clang:"${LLVM_MAX_SLOT}" + testmpi.c <<- EOF +#include "mpi.h" +#include "stdio.h" + +int main(){ + #ifdef OPEN_MPI + printf("%s","openmpi"); + #endif + + #ifdef MPICH + printf("%s%i","mpich",MPICH_NAME); + #endif + return 0; +} +EOF + edo ${CC} testmpi.c -o testmpi + ./testmpi || die +} diff --git a/sys-cluster/sionlibl/sionlibl-1.7.7-r3.ebuild b/sys-cluster/sionlibl/sionlibl-1.7.7-r3.ebuild index a8bae06a20..48de3e3ec4 100644 --- a/sys-cluster/sionlibl/sionlibl-1.7.7-r3.ebuild +++ b/sys-cluster/sionlibl/sionlibl-1.7.7-r3.ebuild @@ -8,7 +8,7 @@ DOCS_CONFIG_NAME="doxy" FORTRAN_NEEDED="fortran" PYTHON_COMPAT=( pypy3 python3_{8..11} ) -inherit docs flag-o-matic fortran-2 python-any-r1 toolchain-funcs +inherit docs edo flag-o-matic fortran-2 python-any-r1 toolchain-funcs DESCRIPTION="Scalable I/O library for parallel access to task-local files" HOMEPAGE="https://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html" @@ -22,10 +22,6 @@ IUSE="+cxx debug deep-est-sdv doc examples +fortran hostname-regex +mpi +ompi +o RDEPEND=" mpi? ( virtual/mpi ) - ompi? ( - || ( sys-devel/gcc:*[openmp] sys-libs/libomp ) - virtual/mpi - ) openmp? ( || ( sys-devel/gcc:*[openmp] sys-libs/libomp ) ) sionfwd? ( sys-cluster/SIONfwd ) " @@ -34,7 +30,10 @@ DEPEND=" ${PYTHON_DEPS} " -REQUIRED_USE="?? ( hostname-regex deep-est-sdv )" +REQUIRED_USE=" + ompi? ( mpi openmp ) + ?? ( hostname-regex deep-est-sdv ) +" PATCHES=( "${FILESDIR}/${PN}-respect-flags-v3.patch" "${FILESDIR}/${PN}-build-shared-libraries.patch" @@ -43,7 +42,6 @@ PATCHES=( pkg_setup() { FORTRAN_NEED_OPENMP=0 use openmp && FORTRAN_NEED_OPENMP=1 - use ompi && FORTRAN_NEED_OPENMP=1 fortran-2_pkg_setup } @@ -77,7 +75,11 @@ src_configure() { #custom configure? use cxx || myconf+=( "--disable-cxx" ) use fortran || myconf+=( "--disable-fortran" ) - use mpi || myconf+=( "--disable-mpi" ) + if use mpi; then + myconf+=( "--mpi=$(detect_mpi_implementation || die)" ) + else + myconf+=( "--disable-mpi" ) + fi use ompi || myconf+=( "--disable-ompi" ) use openmp || myconf+=( "--disable-omp" ) use parutils || myconf+=( "--disable-parutils" ) @@ -85,7 +87,7 @@ src_configure() { use python && myconf+=( "--enable-python=3" ) use sionfwd && myconf+=( "--enable-sionfwd=${EPREFIX}/usr" ) - ./configure "${myconf[@]}" || die + edo ./configure "${myconf[@]}" } src_compile() { @@ -134,3 +136,23 @@ src_install() { #find "${ED}" -name '*.a' -delete || die find "${ED}" -name '*.la' -delete || die } + +detect_mpi_implementation() { + cat > testmpi.c <<- EOF +#include "mpi.h" +#include "stdio.h" + +int main(){ + #ifdef OPEN_MPI + printf("%s","openmpi"); + #endif + + #ifdef MPICH + printf("%s%i","mpich",MPICH_NAME); + #endif + return 0; +} +EOF + edo ${CC} testmpi.c -o testmpi + ./testmpi || die +} diff --git a/sys-kernel/uek-sources/Manifest b/sys-kernel/uek-sources/Manifest index f8316e3991..cc400d5dca 100644 --- a/sys-kernel/uek-sources/Manifest +++ b/sys-kernel/uek-sources/Manifest @@ -8,3 +8,4 @@ DIST linux-uek-5.4.17-2136.305.5.tar.gz 175486059 BLAKE2B e51fd6ddc031f3a901ad5e DIST linux-uek-5.4.17-2136.306.1.tar.gz 175487701 BLAKE2B 4ea72ec404ef2e88492f46feafdf052f9fff0efd16522f7fcb24c708141b21ab16b9919bd30399c15780126091e083b082a4d47fd5a1aa1743179ac8a11012e0 SHA512 d0fb863acde2fb680f78fb3eb855fa4a4e7bc54c1ea1b4003d3f7a33bffdfbdbfc28c7c3e650deae08a493a0fbda31b085b827ad6b40f5bb31724253925b6935 DIST linux-uek-5.4.17-2136.307.2.tar.gz 175498423 BLAKE2B f3e95673891cdf2750d0ff19205c8a0b265de4c171125e69eaf2ee85b72cabe23265de74759a691b824525221f3824b365a9dc67d03e281dc64eaae539903bde SHA512 2b692a5ed58afcf0f351216dee1dda92a8033002c373afd8ab8afcda19b1ca48b46b4cd34c8d299391e44fee57c13be3edaca19a398f6bf3505e37eb7d2e21b5 DIST linux-uek-5.4.17-2136.308.4.tar.gz 176328838 BLAKE2B 0c7187afad5cc21e86eef121fff81a94f13ddad98c1533ed9d1024a28aabcee95eadb403eba33733371e58a6f481ebb7cc42a03af124ab2517475a3d86f8e2ce SHA512 44ba9c17d930624eb502ecc66ecd6b48c3d3686284f45030522d816e26ad0f74c6f92437ba4d39c9c4335182ffec198791ddd7232b49e8de21620862b1cf5648 +DIST linux-uek-5.4.17-2136.308.6.tar.gz 176312971 BLAKE2B bc39d9f6c743d7b025e085b8bb86b7c5c42dd29254961aa079f393367bd382c282ebd4c95ecc99624be2dde2721e08c551030fade4f96542c5a2270019d209a6 SHA512 46158400a97eb7b6d687f2814fb09d41415607bc698cf3b3407d226c8da95bd20d955bedbddba474167eb8409dc43616bbd367b5266bbe941960ea508c249285 diff --git a/sys-kernel/uek-sources/uek-sources-5.4.17.2136.308.6.ebuild b/sys-kernel/uek-sources/uek-sources-5.4.17.2136.308.6.ebuild new file mode 100644 index 0000000000..4233972387 --- /dev/null +++ b/sys-kernel/uek-sources/uek-sources-5.4.17.2136.308.6.ebuild @@ -0,0 +1,67 @@ +# Copyright 2021-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +KERNEL_VERSION=$(ver_cut 1-3) +KERNEL_TRUNK=$(ver_cut 1-2) +UEK_PATCH_VERSION=$(ver_cut 4-6) +UEK_VERSION="${KERNEL_VERSION}-${UEK_PATCH_VERSION}" + +ETYPE="sources" + +K_GENPATCHES_VER="192" +K_SECURITY_UNSUPPORTED="1" +CKV="${KERNEL_VERSION}_p${UEK_PATCH_VERSION}" + +inherit kernel-2 +detect_version +detect_arch + +DESCRIPTION="Unbreakable Enterprise Kernel (UEK) sources built from Oracle" +HOMEPAGE="https://github.com/oracle/linux-uek" +SRC_URI=" + https://github.com/oracle/linux-uek/archive/refs/tags/v${UEK_VERSION}.tar.gz + -> linux-uek-${UEK_VERSION}.tar.gz + https://dev.gentoo.org/~mpagano/genpatches/tarballs/genpatches-${KERNEL_TRUNK}-${K_GENPATCHES_VER}.base.tar.xz + https://dev.gentoo.org/~mpagano/genpatches/tarballs/genpatches-${KERNEL_TRUNK}-${K_GENPATCHES_VER}.experimental.tar.xz + https://dev.gentoo.org/~mpagano/genpatches/tarballs/genpatches-${KERNEL_TRUNK}-${K_GENPATCHES_VER}.extras.tar.xz +" +S="${WORKDIR}/linux-uek-${UEK_VERSION}" + +LICENSE="GPL-2" +KEYWORDS="~amd64" +IUSE="+gentoo experimental" + +PATCHES=( + "${FILESDIR}"/uek-sources-5.4.17.2136.303.1-ip6_sock_set_v6only.patch + "${FILESDIR}"/uek-sources-5.4.17.2136.303.2-O3.patch +) + +src_unpack() { + default + + # remove all backup files + find . -iname "*~" -print -exec rm {} \; 2>/dev/null + + unpack_set_extraversion + unpack_fix_install_path + + env_setup_xmakeopts +} + +src_prepare() { + use gentoo && PATCHES+=( + "${WORKDIR}"/1500_XATTR_USER_PREFIX.patch + "${WORKDIR}"/1510_fs-enable-link-security-restrictions-by-default.patch + "${WORKDIR}"/2000_BT-Check-key-sizes-only-if-Secure-Simple-Pairing-enabled.patch + "${WORKDIR}"/2600_enable-key-swapping-for-apple-mac.patch + "${WORKDIR}"/2920_sign-file-patch-for-libressl.patch + "${WORKDIR}"/4567_distro-Gentoo-Kconfig.patch + ) + use experimental && PATCHES+=( + "${WORKDIR}"/5000_shifts-ubuntu-20.04.patch + "${WORKDIR}"/5010_enable-cpu-optimizations-universal.patch + ) + default +}