diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2020-04-12 03:41:30 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2020-04-12 03:41:30 +0100 |
commit | 623ee73d661e5ed8475cb264511f683407d87365 (patch) | |
tree | 993eb27c93ec7a2d2d19550300d888fc1fed9e69 /sys-cluster/hpx | |
parent | ceeeb463cc1eef97fd62eaee8bf2196ba04bc384 (diff) |
gentoo Easter resync : 12.04.2020
Diffstat (limited to 'sys-cluster/hpx')
-rw-r--r-- | sys-cluster/hpx/Manifest | 11 | ||||
-rw-r--r-- | sys-cluster/hpx/files/hpx-1.4.1-boost.patch | 30 | ||||
-rw-r--r-- | sys-cluster/hpx/files/hpx-1.4.1-disable-failing-tests.patch | 157 | ||||
-rw-r--r-- | sys-cluster/hpx/files/hpx-1.4.1-python.patch | 37 | ||||
-rw-r--r-- | sys-cluster/hpx/hpx-1.2.1.ebuild | 82 | ||||
-rw-r--r-- | sys-cluster/hpx/hpx-1.4.1.ebuild | 119 | ||||
-rw-r--r-- | sys-cluster/hpx/hpx-9999.ebuild | 71 | ||||
-rw-r--r-- | sys-cluster/hpx/metadata.xml | 24 |
8 files changed, 416 insertions, 115 deletions
diff --git a/sys-cluster/hpx/Manifest b/sys-cluster/hpx/Manifest index 61e4a9bc6839..c9df3931e30a 100644 --- a/sys-cluster/hpx/Manifest +++ b/sys-cluster/hpx/Manifest @@ -1,4 +1,7 @@ -DIST hpx_1.2.1.tar.gz 3919474 BLAKE2B 5f62f97a047c1b931068b671855bc9d7b8ff03d7f26793ee58445fb4c567d68c6c24c87844c7a6463901d784e11afe475120a41038e783a67cc75ede508473c5 SHA512 057724de1ef252e941a776174fa594a855255b5600461725a4da6e9002b1424a1e59be3f8a40673bb3db5a8aabd3c7b38abbb78042490befe247dd73c921b87c -EBUILD hpx-1.2.1.ebuild 1825 BLAKE2B e457a6e33e0aa9a5101a29435d696672489d3ffe2ea4378d74a9b767c34fcd801c2f63646fae744fafd7cbcdc92ce076eb11df2a79013007d40d707a24edfb5e SHA512 d52f213519a7a9282e83e819e58ed2df0331527b1f4339d3e79e124126a4a19d657387c01468508c08a1c38d3c7af2651166507105921aad1079db7da2f40dd9 -EBUILD hpx-9999.ebuild 1825 BLAKE2B e457a6e33e0aa9a5101a29435d696672489d3ffe2ea4378d74a9b767c34fcd801c2f63646fae744fafd7cbcdc92ce076eb11df2a79013007d40d707a24edfb5e SHA512 d52f213519a7a9282e83e819e58ed2df0331527b1f4339d3e79e124126a4a19d657387c01468508c08a1c38d3c7af2651166507105921aad1079db7da2f40dd9 -MISC metadata.xml 964 BLAKE2B 0f71483979af41ebf24ccf4a7b547048aaa6198d638b04963303cdbe0b3b7b86a66ff13dadaac501fcbb3c7992e3bdebffebcfbd3d82bad0fe5890e89d581b9f SHA512 2c80ae2fd03aebaa25fa19592b6f84cd343cc6c2733dde34023800805987ae91024d36b2c3246c449acdb0be18154648bc571328bb8acb8f561afc149666bf8e +AUX hpx-1.4.1-boost.patch 1067 BLAKE2B 25002fc609e2d4eef3f8645ecd4aa68ebb7db667fe66e3b33674e175857cbc8b71d8a0c1c86304ceb02df1e7ae7eb06c7a7e21c47d2b7b377fde974dce638416 SHA512 345fa5745f5be2286214d957d6b7d9497d429d8d9628db1d3f0420fdb7df5cefd9e4e06381706b55612b033f29effd085bd68e36122824ef633f23c475a3009d +AUX hpx-1.4.1-disable-failing-tests.patch 5828 BLAKE2B 2f550b50c8090b5ae88f665c0f862adb20046c7762045917892d435f497691063e9ce56f54aa1ab5b0451dbe9a9a8666c78d7ff6d5593ae7add9d688a87617b0 SHA512 b3b2882bcc3ea7a15ebe04f0f7596608664c21c4383f7e2619b9adf484fc976c6ab5cd820dd0c941af1e2f6000edf2e894ff7aa5f7fd6e0e2e6ec835b58dcbe8 +AUX hpx-1.4.1-python.patch 1095 BLAKE2B e0bf47364e01f96b065af8d3a1e0a23c536f66a56baa71903778528c801dd6ea6d7acf9a3f2acbb580f75d1493752b1c0c30c8ed3c9ee7f71da8c007c93739e3 SHA512 4eee43504e1e60b0ee61fc9d2ea2c61c3b1c7ef00dea38d3b913e7cd8ebbeb9561394ad4680a9b6e9e995a2d3b8478abea9d8221de055f3d810f24db39bf7760 +DIST hpx_1.4.1.tar.gz 4213023 BLAKE2B dc8a9cda3061359ea1bb8eba9ccee60dea308f5425cfe0f18d9003032726962d74d417b8748124c8e6a0b207624093ccf625c82e9e1a71fce8dde74d41d987d2 SHA512 f110d5e5c10ec396f6e762568c9ecd5b767cb6efe91168b5caa8fe1e07bb5870cd13b3392fa4e008a2cc0e044b02084a35b0866e943d9b9c7435599c131f1582 +EBUILD hpx-1.4.1.ebuild 2566 BLAKE2B 9546da2933c11e1e6a50cc56149a8fe416df47caa2d911926908409c3f003229f039389ad447ef784400c537c741fe724cb9ae3cce27725f7e089d4e71b8b8ee SHA512 4fea42c1e6c0bce3c5f959dfb2242686fab0002d5ed9bfea57b71aa3ce2354e07820b26a8334fd67232ef252075ffe406f08a5a7990aedecfe21ec763ada1f13 +EBUILD hpx-9999.ebuild 2440 BLAKE2B 2ad7756b471e832b5b6a7890686ca6c2dfc942bf0ea3ae6e92607b5709dd301d8a5ce121c78155ab730147cf4f767d436f979c9d83934bc5e11ccf1154416710 SHA512 5d683f05438d5e2f08d6872e6955cf8806d72f2f3bdb234b693bec0505263f1330d3bb8f196b104e08342e36e22cf442b2e7b77047c0a5f1715e1e31269bcbcd +MISC metadata.xml 1189 BLAKE2B a6fedaeaa9c32038109691eb64fd62dd0cf0bc2104710fa49d57a95b09674a23d4e38d03fa2e306734b587a8682c1a7007ed078988226c39f17ccacece740a52 SHA512 eddd398a02bfa3716a373a6cb909a881efd72c11d7e4ce05a722da1fb5d5e464b59999d5bf0de2e608f768d6ceb50ccd64d43e77088c19fa1b28a19b404469da diff --git a/sys-cluster/hpx/files/hpx-1.4.1-boost.patch b/sys-cluster/hpx/files/hpx-1.4.1-boost.patch new file mode 100644 index 000000000000..939f4f77813c --- /dev/null +++ b/sys-cluster/hpx/files/hpx-1.4.1-boost.patch @@ -0,0 +1,30 @@ +From 1a3615f30491320d48e45005ad7b032fb3c1821d Mon Sep 17 00:00:00 2001 +From: Kurt Kanzenbach <kurt@kmk-computers.de> +Date: Sun, 22 Mar 2020 12:49:59 +0100 +Subject: [PATCH] cmake: Remove passing of BOOST_ROOT + +That variable is not used and generates QA issues: + + * One or more CMake variables were not used by the project: + * BOOST_ROOT + +Signed-off-by: Kurt Kanzenbach <kurt@kmk-computers.de> +--- + tests/unit/build/CMakeLists.txt | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/tests/unit/build/CMakeLists.txt b/tests/unit/build/CMakeLists.txt +index 757f4887fba2..2163b853fbad 100644 +--- a/tests/unit/build/CMakeLists.txt ++++ b/tests/unit/build/CMakeLists.txt +@@ -38,7 +38,6 @@ function(create_cmake_test name hpx_dir) + "${CMAKE_COMMAND}" -E chdir "${build_dir}" "${CMAKE_COMMAND}" + "${PROJECT_SOURCE_DIR}/examples/hello_world_component" + -DHPX_DIR=${hpx_dir} +- -DBOOST_ROOT=${BOOST_ROOT} + ${ADDITIONAL_CMAKE_OPTIONS} + -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS_SAFE} + -DCMAKE_BUILD_TYPE=$<CONFIGURATION> VERBATIM) +-- +2.24.1 + diff --git a/sys-cluster/hpx/files/hpx-1.4.1-disable-failing-tests.patch b/sys-cluster/hpx/files/hpx-1.4.1-disable-failing-tests.patch new file mode 100644 index 000000000000..492cbaf23781 --- /dev/null +++ b/sys-cluster/hpx/files/hpx-1.4.1-disable-failing-tests.patch @@ -0,0 +1,157 @@ +From 10577db8e8ca556dc98b1c0010b7e53416e22b22 Mon Sep 17 00:00:00 2001 +From: Kurt Kanzenbach <kurt@kmk-computers.de> +Date: Tue, 17 Mar 2020 11:21:53 +0100 +Subject: [PATCH] tests: Disable failing tests + +Currently six tests are failing: + +|99% tests passed, 6 tests failed out of 712 +| +|Total Test time (real) = 2268.99 sec +| +|The following tests FAILED: +| 339 - tests.unit.modules.segmented_algorithms.distributed.tcp.partitioned_vector_adjacent_find1 (Failed) +| 454 - tests.regressions.dynamic_counters_loaded_1508 (Failed) +| 601 - tests.unit.component.launch_process (Timeout) +| 678 - tests.unit.threads.distributed.tcp.thread_stacksize (Failed) +| 681 - tests.unit.topology.numa_allocator (Failed) +| 712 - tests.unit.parcelset.distributed.tcp.put_parcels_with_coalescing (Failed) + +Needs to be further investigated. Disable them for now. + +Signed-off-by: Kurt Kanzenbach <kurt@kmk-computers.de> +--- + .../tests/unit/CMakeLists.txt | 2 +- + tests/regressions/CMakeLists.txt | 2 +- + tests/unit/component/CMakeLists.txt | 36 +++++++++---------- + tests/unit/parcelset/CMakeLists.txt | 2 +- + tests/unit/threads/CMakeLists.txt | 2 +- + tests/unit/topology/CMakeLists.txt | 6 ++-- + 6 files changed, 25 insertions(+), 25 deletions(-) + +diff --git a/libs/segmented_algorithms/tests/unit/CMakeLists.txt b/libs/segmented_algorithms/tests/unit/CMakeLists.txt +index 1ed7dbd7798a..17d5e4cca3b4 100644 +--- a/libs/segmented_algorithms/tests/unit/CMakeLists.txt ++++ b/libs/segmented_algorithms/tests/unit/CMakeLists.txt +@@ -7,7 +7,7 @@ + set(tests + partitioned_vector_adjacent_difference1 + partitioned_vector_adjacent_difference2 +- partitioned_vector_adjacent_find1 ++ # partitioned_vector_adjacent_find1 + partitioned_vector_adjacent_find2 + partitioned_vector_all_of1 + partitioned_vector_all_of2 +diff --git a/tests/regressions/CMakeLists.txt b/tests/regressions/CMakeLists.txt +index 5a70ab8bfc99..fa4574ee0bf3 100644 +--- a/tests/regressions/CMakeLists.txt ++++ b/tests/regressions/CMakeLists.txt +@@ -25,7 +25,7 @@ foreach(subdir ${subdirs}) + endforeach() + + set(tests +- dynamic_counters_loaded_1508 ++ # dynamic_counters_loaded_1508 + id_type_ref_counting_1032 + multiple_init + multiple_init_2918 +diff --git a/tests/unit/component/CMakeLists.txt b/tests/unit/component/CMakeLists.txt +index 8deacffedb7b..49511e82e478 100644 +--- a/tests/unit/component/CMakeLists.txt ++++ b/tests/unit/component/CMakeLists.txt +@@ -29,25 +29,25 @@ set(tests + ) + + if(HPX_WITH_NETWORKING) +- set(tests ${tests} +- launch_process +- ) ++ # set(tests ${tests} ++ # launch_process ++ # ) + + # add executable needed for launch_process_test +- add_hpx_executable(launched_process_test +- INTERNAL_FLAGS +- SOURCES launched_process.cpp +- EXCLUDE_FROM_ALL +- HPX_PREFIX ${HPX_BUILD_PREFIX} +- FOLDER "Tests/Unit/Components" +- COMPONENT_DEPENDENCIES launch_process_test_server) +- +- set(launch_process_FLAGS +- DEPENDENCIES iostreams_component process_component +- launch_process_test_server_component) +- set(launch_process_PARAMETERS +- --launch=$<TARGET_FILE:launched_process_test> +- --hpx:expect-connecting-localities) ++ # add_hpx_executable(launched_process_test ++ # INTERNAL_FLAGS ++ # SOURCES launched_process.cpp ++ # EXCLUDE_FROM_ALL ++ # HPX_PREFIX ${HPX_BUILD_PREFIX} ++ # FOLDER "Tests/Unit/Components" ++ # COMPONENT_DEPENDENCIES launch_process_test_server) ++ ++ # set(launch_process_FLAGS ++ # DEPENDENCIES iostreams_component process_component ++ # launch_process_test_server_component) ++ # set(launch_process_PARAMETERS ++ # --launch=$<TARGET_FILE:launched_process_test> ++ # --hpx:expect-connecting-localities) + endif() + + set(action_invoke_no_more_than_PARAMETERS +@@ -123,5 +123,5 @@ foreach(test ${tests}) + endforeach() + + if(HPX_WITH_NETWORKING) +- add_hpx_pseudo_dependencies(tests.unit.component.launch_process launched_process_test) ++ # add_hpx_pseudo_dependencies(tests.unit.component.launch_process launched_process_test) + endif() +diff --git a/tests/unit/parcelset/CMakeLists.txt b/tests/unit/parcelset/CMakeLists.txt +index 93c5844b9210..ec2ffacd0f99 100644 +--- a/tests/unit/parcelset/CMakeLists.txt ++++ b/tests/unit/parcelset/CMakeLists.txt +@@ -16,7 +16,7 @@ set(put_parcels_FLAGS DEPENDENCIES iostreams_component) + set(set_parcel_write_handler_PARAMETERS LOCALITIES 2) + + if(HPX_WITH_PARCEL_COALESCING) +- set(tests ${tests} put_parcels_with_coalescing) ++ # set(tests ${tests} put_parcels_with_coalescing) + set(put_parcels_with_coalescing_PARAMETERS LOCALITIES 2) + set(put_parcels_with_coalescing_FLAGS DEPENDENCIES iostreams_component parcel_coalescing) + endif() +diff --git a/tests/unit/threads/CMakeLists.txt b/tests/unit/threads/CMakeLists.txt +index df0a1eff4dbb..d542d24136b7 100644 +--- a/tests/unit/threads/CMakeLists.txt ++++ b/tests/unit/threads/CMakeLists.txt +@@ -17,7 +17,7 @@ set(tests + thread_id + thread_launching + thread_mf +- thread_stacksize ++ # thread_stacksize + thread_suspension_executor + thread_yield + ) +diff --git a/tests/unit/topology/CMakeLists.txt b/tests/unit/topology/CMakeLists.txt +index 8a8a26b294fb..9f6311395c61 100644 +--- a/tests/unit/topology/CMakeLists.txt ++++ b/tests/unit/topology/CMakeLists.txt +@@ -5,9 +5,9 @@ + # file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + + if (HPX_WITH_SHARED_PRIORITY_SCHEDULER AND HPX_WITH_CXX14_RETURN_TYPE_DEDUCTION) +- set(tests ${tests} +- numa_allocator +- ) ++ # set(tests ${tests} ++ # numa_allocator ++ # ) + + # NB. threads = -2 = threads = 'cores' + # NB. threads = -1 = threads = 'all' +-- +2.24.1 + diff --git a/sys-cluster/hpx/files/hpx-1.4.1-python.patch b/sys-cluster/hpx/files/hpx-1.4.1-python.patch new file mode 100644 index 000000000000..d28c8a61f238 --- /dev/null +++ b/sys-cluster/hpx/files/hpx-1.4.1-python.patch @@ -0,0 +1,37 @@ +From 641d9766c73d2ee08aac8e1e0dd123b9d6db0c25 Mon Sep 17 00:00:00 2001 +From: Kurt Kanzenbach <kurt@kmk-computers.de> +Date: Tue, 17 Mar 2020 16:20:35 +0100 +Subject: [PATCH] cmake: python: Use standard python interpreter + +These scripts are needed during build and run time. So, use a python interpreter +which works for both cases. + +Signed-off-by: Kurt Kanzenbach <kurt@kmk-computers.de> +--- + cmake/templates/hpxcxx.in | 2 +- + cmake/templates/hpxrun.py.in | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/cmake/templates/hpxcxx.in b/cmake/templates/hpxcxx.in +index 81f38f89367d..a0fd7837b066 100755 +--- a/cmake/templates/hpxcxx.in ++++ b/cmake/templates/hpxcxx.in +@@ -1,4 +1,4 @@ +-#! @PYTHON_EXECUTABLE@ ++#! /usr/bin/env python + # + # Copyright (c) 2014 Steven R. Brandt + # +diff --git a/cmake/templates/hpxrun.py.in b/cmake/templates/hpxrun.py.in +index 0e9f04a60495..7ccd2715a697 100755 +--- a/cmake/templates/hpxrun.py.in ++++ b/cmake/templates/hpxrun.py.in +@@ -1,4 +1,4 @@ +-#! @PYTHON_EXECUTABLE@ ++#! /usr/bin/env python + # + # Copyright (c) 2014 Thomas Heller + # +-- +2.24.1 + diff --git a/sys-cluster/hpx/hpx-1.2.1.ebuild b/sys-cluster/hpx/hpx-1.2.1.ebuild deleted file mode 100644 index d075974e0bd9..000000000000 --- a/sys-cluster/hpx/hpx-1.2.1.ebuild +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_6 ) - -if [[ ${PV} == 9999 ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/STEllAR-GROUP/hpx.git" -else - SRC_URI="https://stellar.cct.lsu.edu/files/${PN}_${PV}.tar.gz" - KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" - S="${WORKDIR}/${PN}_${PV}" -fi -inherit cmake fortran-2 python-any-r1 - -DESCRIPTION="C++ runtime system for parallel and distributed applications" -HOMEPAGE="https://stellar.cct.lsu.edu/tag/hpx/" - -SLOT="0" -LICENSE="Boost-1.0" -IUSE="doc examples jemalloc papi +perftools tbb test" -RESTRICT="!test? ( test )" - -REQUIRED_USE="?? ( jemalloc perftools tbb )" - -BDEPEND=" - virtual/pkgconfig - doc? ( >=dev-libs/boost-1.56.0-r1[tools] ) -" -RDEPEND=" - >=dev-libs/boost-1.49:= - >=sys-apps/hwloc-1.8 - >=sys-libs/libunwind-1 - sys-libs/zlib - papi? ( dev-libs/papi ) - perftools? ( >=dev-util/google-perftools-1.7.1 ) - tbb? ( dev-cpp/tbb ) -" -DEPEND="${RDEPEND} - test? ( ${PYTHON_DEPS} ) -" - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_configure() { - local mycmakeargs=( - -DHPX_WITH_EXAMPLES=OFF - -DHPX_WITH_DOCUMENTATION=$(usex doc) - -DHPX_WITH_PAPI=$(usex papi) - -DHPX_WITH_GOOGLE_PERFTOOLS=$(usex perftools) - -DBUILD_TESTING=$(usex test) - ) - if use jemalloc; then - mycmakeargs+=( -DHPX_WITH_MALLOC=jemalloc ) - elif use perftools; then - mycmakeargs+=( -DHPX_WITH_MALLOC=tcmalloc ) - elif use tbb; then - mycmakeargs+=( -DHPX_WITH_MALLOC=tbbmalloc ) - else - mycmakeargs+=( -DHPX_WITH_MALLOC=system ) - fi - - cmake_src_configure -} - -src_test() { - # avoid over-suscribing - cmake_build -j1 tests -} - -src_install() { - cmake_src_install - if use examples; then - mv "${D}/usr/bin/spin" "${D}/usr/bin/hpx_spin" || die - insinto /usr/share/doc/${PF} - doins -r examples - fi -} diff --git a/sys-cluster/hpx/hpx-1.4.1.ebuild b/sys-cluster/hpx/hpx-1.4.1.ebuild new file mode 100644 index 000000000000..9a3dc2abc763 --- /dev/null +++ b/sys-cluster/hpx/hpx-1.4.1.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6..8} ) + +if [[ ${PV} == 9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/STEllAR-GROUP/hpx.git" +else + SRC_URI="https://stellar.cct.lsu.edu/files/${PN}_${PV}.tar.gz" + KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +fi +inherit cmake fortran-2 python-single-r1 check-reqs + +DESCRIPTION="C++ runtime system for parallel and distributed applications" +HOMEPAGE="https://stellar.cct.lsu.edu/tag/hpx/" + +SLOT="0" +LICENSE="Boost-1.0" +IUSE="doc examples jemalloc mpi papi +perftools tbb test" +RESTRICT="!test? ( test )" + +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + ?? ( jemalloc perftools tbb ) +" + +BDEPEND=" + virtual/pkgconfig + doc? ( + ${PYTHON_DEPS} + app-doc/doxygen + $(python_gen_cond_dep ' + dev-python/sphinx[${PYTHON_MULTI_USEDEP}] + dev-python/sphinx_rtd_theme[${PYTHON_MULTI_USEDEP}] + >=dev-python/breathe-4.14[${PYTHON_MULTI_USEDEP}] + ') + ) + test? ( ${PYTHON_DEPS} ) +" +RDEPEND=" + ${PYTHON_DEPS} + dev-libs/boost:= + sys-apps/hwloc + sys-libs/zlib + mpi? ( virtual/mpi ) + papi? ( dev-libs/papi ) + perftools? ( dev-util/google-perftools ) + tbb? ( dev-cpp/tbb ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/${P}-boost.patch" + "${FILESDIR}/${P}-disable-failing-tests.patch" + "${FILESDIR}/${P}-python.patch" +) + +hpx_memory_requirement() { + # HPX needs enough main memory for compiling + # rule of thumb: 1G per job + if [[ -z ${MAKEOPTS} ]] ; then + echo "2G" + else + local jobs=`echo ${MAKEOPTS} | cut -d j -f 2` + echo "${jobs}G" + fi +} + +pkg_pretend() { + local CHECKREQS_MEMORY=$(hpx_memory_requirement) + check-reqs_pkg_setup +} + +pkg_setup() { + local CHECKREQS_MEMORY=$(hpx_memory_requirement) + check-reqs_pkg_setup + python-single-r1_pkg_setup +} + +src_configure() { + local mycmakeargs=( + -DHPX_WITH_EXAMPLES=OFF + -DHPX_WITH_DOCUMENTATION=$(usex doc) + -DHPX_WITH_PARCELPORT_MPI=$(usex mpi) + -DHPX_WITH_PAPI=$(usex papi) + -DHPX_WITH_GOOGLE_PERFTOOLS=$(usex perftools) + -DBUILD_TESTING=$(usex test) + ) + if use jemalloc; then + mycmakeargs+=( -DHPX_WITH_MALLOC=jemalloc ) + elif use perftools; then + mycmakeargs+=( -DHPX_WITH_MALLOC=tcmalloc ) + elif use tbb; then + mycmakeargs+=( -DHPX_WITH_MALLOC=tbbmalloc ) + else + mycmakeargs+=( -DHPX_WITH_MALLOC=system ) + fi + + cmake_src_configure +} + +src_compile() { + cmake_src_compile + use test && cmake_build tests +} + +src_test() { + # avoid over-suscribing + cmake_src_test -j1 +} + +src_install() { + cmake_src_install + use examples && dodoc -r examples/ + python_fix_shebang "${ED}" +} diff --git a/sys-cluster/hpx/hpx-9999.ebuild b/sys-cluster/hpx/hpx-9999.ebuild index d075974e0bd9..25019566f392 100644 --- a/sys-cluster/hpx/hpx-9999.ebuild +++ b/sys-cluster/hpx/hpx-9999.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python3_6 ) +PYTHON_COMPAT=( python3_{6..8} ) if [[ ${PV} == 9999 ]] ; then inherit git-r3 @@ -11,45 +11,74 @@ if [[ ${PV} == 9999 ]] ; then else SRC_URI="https://stellar.cct.lsu.edu/files/${PN}_${PV}.tar.gz" KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" - S="${WORKDIR}/${PN}_${PV}" fi -inherit cmake fortran-2 python-any-r1 +inherit cmake fortran-2 python-single-r1 check-reqs DESCRIPTION="C++ runtime system for parallel and distributed applications" HOMEPAGE="https://stellar.cct.lsu.edu/tag/hpx/" SLOT="0" LICENSE="Boost-1.0" -IUSE="doc examples jemalloc papi +perftools tbb test" +IUSE="doc examples jemalloc mpi papi +perftools tbb test" RESTRICT="!test? ( test )" -REQUIRED_USE="?? ( jemalloc perftools tbb )" +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + ?? ( jemalloc perftools tbb ) +" BDEPEND=" virtual/pkgconfig - doc? ( >=dev-libs/boost-1.56.0-r1[tools] ) + doc? ( + ${PYTHON_DEPS} + app-doc/doxygen + $(python_gen_cond_dep ' + dev-python/sphinx[${PYTHON_MULTI_USEDEP}] + dev-python/sphinx_rtd_theme[${PYTHON_MULTI_USEDEP}] + >=dev-python/breathe-4.14[${PYTHON_MULTI_USEDEP}] + ') + ) + test? ( ${PYTHON_DEPS} ) " RDEPEND=" - >=dev-libs/boost-1.49:= - >=sys-apps/hwloc-1.8 - >=sys-libs/libunwind-1 + ${PYTHON_DEPS} + dev-libs/boost:= + sys-apps/hwloc sys-libs/zlib + mpi? ( virtual/mpi ) papi? ( dev-libs/papi ) - perftools? ( >=dev-util/google-perftools-1.7.1 ) + perftools? ( dev-util/google-perftools ) tbb? ( dev-cpp/tbb ) " -DEPEND="${RDEPEND} - test? ( ${PYTHON_DEPS} ) -" +DEPEND="${RDEPEND}" + +hpx_memory_requirement() { + # HPX needs enough main memory for compiling + # rule of thumb: 1G per job + if [[ -z ${MAKEOPTS} ]] ; then + echo "2G" + else + local jobs=`echo ${MAKEOPTS} | cut -d j -f 2` + echo "${jobs}G" + fi +} + +pkg_pretend() { + local CHECKREQS_MEMORY=$(hpx_memory_requirement) + check-reqs_pkg_setup +} pkg_setup() { - use test && python-any-r1_pkg_setup + local CHECKREQS_MEMORY=$(hpx_memory_requirement) + check-reqs_pkg_setup + python-single-r1_pkg_setup } src_configure() { local mycmakeargs=( -DHPX_WITH_EXAMPLES=OFF -DHPX_WITH_DOCUMENTATION=$(usex doc) + -DHPX_WITH_PARCELPORT_MPI=$(usex mpi) -DHPX_WITH_PAPI=$(usex papi) -DHPX_WITH_GOOGLE_PERFTOOLS=$(usex perftools) -DBUILD_TESTING=$(usex test) @@ -67,16 +96,18 @@ src_configure() { cmake_src_configure } +src_compile() { + cmake_src_compile + use test && cmake_build tests +} + src_test() { # avoid over-suscribing - cmake_build -j1 tests + cmake_src_test -j1 } src_install() { cmake_src_install - if use examples; then - mv "${D}/usr/bin/spin" "${D}/usr/bin/hpx_spin" || die - insinto /usr/share/doc/${PF} - doins -r examples - fi + use examples && dodoc -r examples/ + python_fix_shebang "${ED}" } diff --git a/sys-cluster/hpx/metadata.xml b/sys-cluster/hpx/metadata.xml index af517a2b5293..f23d6af9310e 100644 --- a/sys-cluster/hpx/metadata.xml +++ b/sys-cluster/hpx/metadata.xml @@ -2,15 +2,21 @@ <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <longdescription> - HPX (High Performance ParalleX) is a general C++ runtime system - for parallel and distributed applications of any scale. It is the - first freely available, open source, feature-complete, modular, - and performance oriented implementation of the ParalleX execution - model. HPX is targeted at conventional architectures and, - currently, Linux based systems, such as SMP nodes and conventional - clusters. -</longdescription> - <!-- maintainer-needed --> + HPX (High Performance ParalleX) is a general C++ runtime system for parallel + and distributed applications of any scale. It is the first freely available, + open source, feature-complete, modular, and performance oriented + implementation of the ParalleX execution model. HPX is targeted at + conventional architectures and, currently, Linux based systems, such as SMP + nodes and conventional clusters. + </longdescription> + <maintainer type="person"> + <email>kurt@kmk-computers.de</email> + <name>Kurt Kanzenbach</name> + </maintainer> + <maintainer type="project"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> <use> <flag name="perftools">Use <pkg>dev-util/google-perftools</pkg> for memory allocation</flag> |