summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /sys-cluster/hpx
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sys-cluster/hpx')
-rw-r--r--sys-cluster/hpx/Manifest3
-rw-r--r--sys-cluster/hpx/files/hpx-0.9.8-cmake_dir.patch27
-rw-r--r--sys-cluster/hpx/files/hpx-0.9.8-install-path.patch69
-rw-r--r--sys-cluster/hpx/files/hpx-0.9.8-multilib.patch163
-rw-r--r--sys-cluster/hpx/hpx-0.9.10.ebuild78
-rw-r--r--sys-cluster/hpx/hpx-0.9.8.ebuild87
-rw-r--r--sys-cluster/hpx/hpx-0.9.9.ebuild80
-rw-r--r--sys-cluster/hpx/metadata.xml27
8 files changed, 534 insertions, 0 deletions
diff --git a/sys-cluster/hpx/Manifest b/sys-cluster/hpx/Manifest
new file mode 100644
index 000000000000..9948751f96a1
--- /dev/null
+++ b/sys-cluster/hpx/Manifest
@@ -0,0 +1,3 @@
+DIST hpx-0.9.9.tar.gz 3461235 SHA256 cb17ac303f49795300c6b803725036aa09b434a7a23a610744457d3481be3738 SHA512 95332c924548f7d07e24c56d3d72e8aa5977a1347666fb2a0f3782fec040e83e5760750a1696cf8152d7b3f8b90ce719fe24018086a5165429b3f9851c2f7e1f WHIRLPOOL 370646b98c89133a8fd23cb17ecaefc477e09b07508884f4343526050a12fae117f1fd0e24881b9896beca97ca08d4bad8526b39cfec1cad0ce48d8826ea3c43
+DIST hpx_0.9.10.tar.gz 3016064 SHA256 af84455003bbf49fd81477138e6c7e699b7c24a4933de04d709c1437a9ad6aad SHA512 4c5ce7014d781c47415818898b99e5379e1547dd5f54fdefc9202de149ca4a0e3bf13c863cdea9ef70f7e3eb2c808cfda35d723a7f681745b8514a1887cbbb75 WHIRLPOOL 2fbc2c32532eb8141e6eb86a8e99ed4a7d4a6bb87bff9b383c4e4b5b0628fb5d6975672eaf5423f87b13f2f1d07e039362450b0276fa120f5a5abc8d7077408c
+DIST hpx_0.9.8.7z 2089649 SHA256 9e04685b07e4155e6d3e00c944e5fe91c0c815a2b3bc7bc345eb59d8708bac91 SHA512 1789582ee776173d4aa67b512d2df225c734b98ffe59a8f1eee38b5112ac7c02e0c7c478f72062e5b6a5d5053ce1848729c374093378f63200acf51a208fb3c7 WHIRLPOOL b4b5a8a83aa4d07466ee0570b9fdadd906281e626eed2ce82e3a8e03681de1591a46af2254cbd387eb2d0bfac22c6796537fbbb37764be7dd424b97dd0d433c7
diff --git a/sys-cluster/hpx/files/hpx-0.9.8-cmake_dir.patch b/sys-cluster/hpx/files/hpx-0.9.8-cmake_dir.patch
new file mode 100644
index 000000000000..b5c66c284752
--- /dev/null
+++ b/sys-cluster/hpx/files/hpx-0.9.8-cmake_dir.patch
@@ -0,0 +1,27 @@
+From e565c2cce934f2d6fa6e80061c416a2e7df0f311 Mon Sep 17 00:00:00 2001
+From: Christoph Junghans <junghans@lanl.gov>
+Date: Tue, 20 May 2014 11:18:21 -0600
+Subject: [PATCH] make cmake_dir configure-able
+
+---
+ CMakeLists.txt | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8ad79cb..e6f392a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1981,7 +1981,9 @@ endforeach()
+ # Make list unique
+ list(REMOVE_DUPLICATES external_definitions)
+
+-set(cmake_dir cmake-${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
++if (NOT DEFINED cmake_dir)
++ set(cmake_dir cmake-${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
++endif(NOT DEFINED cmake_dir)
+
+ if(MSVC)
+ set(output_dir "${CMAKE_BINARY_DIR}/${CMAKE_BUILD_TYPE}")
+--
+1.8.5.5
+
diff --git a/sys-cluster/hpx/files/hpx-0.9.8-install-path.patch b/sys-cluster/hpx/files/hpx-0.9.8-install-path.patch
new file mode 100644
index 000000000000..f5c867b9b4a2
--- /dev/null
+++ b/sys-cluster/hpx/files/hpx-0.9.8-install-path.patch
@@ -0,0 +1,69 @@
+From 5c04f9c2d47a41f6113f45eeb4dd9f7968f2cd52 Mon Sep 17 00:00:00 2001
+From: Christoph Junghans <junghans@lanl.gov>
+Date: Tue, 20 May 2014 09:27:47 -0600
+Subject: [PATCH] fix make install non-empty DESTDIR
+
+Symlinks were created even when make install was called with a
+non-empty DESTDIR variable. Fixed by creating the symlinks in build
+directory first and then install them using common install.
+DESTDIR installation is needed for binary packages.
+---
+ CMakeLists.txt | 31 +++++++++++++++++++------------
+ 1 file changed, 19 insertions(+), 12 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 00a71c7..8d5df19 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1762,15 +1762,22 @@ if(NOT HPX_NO_INSTALL)
+
+ if(UNIX)
+ file(GLOB scripts "${CMAKE_SOURCE_DIR}/python/scripts/*.py")
++ execute_process(COMMAND "${CMAKE_COMMAND}" -E make_directory
++ "${CMAKE_BINARY_DIR}/python/scripts" )
+ foreach(script ${scripts})
+ get_filename_component(script_name ${script} NAME)
+ get_filename_component(script_name_we ${script} NAME_WE)
+- install(CODE
+- "set(bindir \"${CMAKE_INSTALL_PREFIX}/bin/\")
+- execute_process(
+- COMMAND \"\${CMAKE_COMMAND}\" -E create_symlink
+- \"${script_name}\" \"${script_name_we}\"
+- WORKING_DIRECTORY \"\${bindir}\")")
++
++ #make copy, so that we have intact symlink in CMAKE_BINARY_DIR
++ execute_process(
++ COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${script}" "${script_name}"
++ WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/python/scripts")
++
++ execute_process(
++ COMMAND "${CMAKE_COMMAND}" -E create_symlink "${script_name}" "${script_name_we}"
++ WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/python/scripts")
++
++ install(FILES "${CMAKE_BINARY_DIR}/python/scripts/${script_name_we}" DESTINATION "bin")
+ endforeach()
+ endif()
+
+@@ -1781,13 +1788,13 @@ if(NOT HPX_NO_INSTALL)
+ FILES_MATCHING PATTERN "*.py"
+ PATTERN ".git" EXCLUDE)
+
++ execute_process(COMMAND "${CMAKE_COMMAND}" -E make_directory "${CMAKE_BINARY_DIR}/python" )
++ #make symlink, so that we have intact hpx symlink in CMAKE_BINARY_DIR
++ execute_process(COMMAND "${CMAKE_COMMAND}" -E create_symlink "${CMAKE_SOURCE_DIR}/python/hpx"
++ "hpx-${HPX_VERSION}" WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/python")
+ # create a symlink in share pointing to the latest HPX installation
+- install(CODE
+- "set(sharedir \"${CMAKE_INSTALL_PREFIX}/share/\")
+- execute_process(
+- COMMAND \"\${CMAKE_COMMAND}\" -E create_symlink
+- \"hpx-${HPX_VERSION}\" \"hpx\"
+- WORKING_DIRECTORY \"\${sharedir}\")")
++ execute_process(COMMAND "${CMAKE_COMMAND}" -E create_symlink "hpx-${HPX_VERSION}" "hpx" WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/python")
++ install(DIRECTORY "${CMAKE_BINARY_DIR}/python/hpx" DESTINATION "share")
+
+ install( # Install external dependencies
+ DIRECTORY external/cache/boost
+--
+1.8.5.5
+
diff --git a/sys-cluster/hpx/files/hpx-0.9.8-multilib.patch b/sys-cluster/hpx/files/hpx-0.9.8-multilib.patch
new file mode 100644
index 000000000000..470e76e3b800
--- /dev/null
+++ b/sys-cluster/hpx/files/hpx-0.9.8-multilib.patch
@@ -0,0 +1,163 @@
+From 383acb45e75406fb94bb4fa86c162a78c05ab840 Mon Sep 17 00:00:00 2001
+From: Christoph Junghans <junghans@lanl.gov>
+Date: Tue, 20 May 2014 11:03:16 -0600
+Subject: [PATCH] added LIB cmake option to configure lib directory
+
+for multiarch distributions the lib directory needs to changed
+from 'lib' to 'lib64'/'lib32'. Add an cmake option to do this.
+---
+ CMakeLists.txt | 11 +++++++----
+ cmake/HPX_AddComponent.cmake | 2 +-
+ cmake/HPX_AddLibrary.cmake | 2 +-
+ plugins/binary_filter/bzip2/CMakeLists.txt | 2 +-
+ plugins/binary_filter/snappy/CMakeLists.txt | 2 +-
+ plugins/binary_filter/zlib/CMakeLists.txt | 2 +-
+ plugins/parcel/coalescing/CMakeLists.txt | 2 +-
+ src/CMakeLists.txt | 6 +++---
+ 8 files changed, 16 insertions(+), 13 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8d5df19..8ad79cb 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -192,6 +192,9 @@ else()
+ "64" ADVANCED)
+ endif()
+
++if (NOT DEFINED LIB)
++ set(LIB "lib")
++endif(NOT DEFINED LIB)
+ ###############################################################################
+ if(UNIX)
+ hpx_link_directories("${CMAKE_BINARY_DIR}/lib/hpx")
+@@ -2027,14 +2030,14 @@
+ if(NOT HPX_NO_INSTALL)
+ if(NOT ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug"))
+ install(FILES ${output_dir}/lib/pkgconfig/hpx_application.pc
+- DESTINATION lib/pkgconfig)
++ DESTINATION ${LIB}/pkgconfig)
+ install(FILES ${output_dir}/lib/pkgconfig/hpx_component.pc
+- DESTINATION lib/pkgconfig)
++ DESTINATION ${LIB}/pkgconfig)
+ else()
+ install(FILES ${output_dir}/lib/pkgconfig/hpx_application_debug.pc
+- DESTINATION lib/pkgconfig)
++ DESTINATION ${LIB}/pkgconfig)
+ install(FILES ${output_dir}/lib/pkgconfig/hpx_component_debug.pc
+- DESTINATION lib/pkgconfig)
++ DESTINATION ${LIB}/pkgconfig)
+ endif()
+ endif()
+
+diff --git a/cmake/HPX_AddComponent.cmake b/cmake/HPX_AddComponent.cmake
+index afbee24..babca54 100644
+--- a/cmake/HPX_AddComponent.cmake
++++ b/cmake/HPX_AddComponent.cmake
+@@ -258,7 +258,7 @@ macro(add_hpx_component name)
+ if(${name}_INSTALL_SUFFIX)
+ hpx_library_install("${name}_component" "${${name}_INSTALL_SUFFIX}")
+ else()
+- hpx_library_install(${name}_component lib/hpx)
++ hpx_library_install(${name}_component ${LIB}/hpx)
+ endif()
+
+ foreach(target ${${name}_INI})
+diff --git a/cmake/HPX_AddLibrary.cmake b/cmake/HPX_AddLibrary.cmake
+index 7f39700..8524a45 100644
+--- a/cmake/HPX_AddLibrary.cmake
++++ b/cmake/HPX_AddLibrary.cmake
+@@ -248,7 +248,7 @@ macro(add_hpx_library name)
+ if(${name}_INSTALL_SUFFIX)
+ hpx_library_install("${name}_lib" "${${name}_INSTALL_SUFFIX}")
+ else()
+- hpx_library_install(${name}_lib lib/hpx)
++ hpx_library_install(${name}_lib ${LIB}/hpx)
+ endif()
+ endif()
+ endmacro()
+diff --git a/plugins/binary_filter/bzip2/CMakeLists.txt b/plugins/binary_filter/bzip2/CMakeLists.txt
+index 2580164..b2fbf40 100644
+--- a/plugins/binary_filter/bzip2/CMakeLists.txt
++++ b/plugins/binary_filter/bzip2/CMakeLists.txt
+@@ -38,7 +38,7 @@ macro(add_bzip2_module)
+ add_hpx_pseudo_dependencies(plugins.compression.bzip2 compress_bzip2_lib)
+
+ if(NOT HPX_NO_INSTALL)
+- hpx_library_install(compress_bzip2_lib lib/hpx)
++ hpx_library_install(compress_bzip2_lib ${LIB}/hpx)
+ endif()
+ endif()
+ endmacro()
+diff --git a/plugins/binary_filter/snappy/CMakeLists.txt b/plugins/binary_filter/snappy/CMakeLists.txt
+index 6a7bbac..47e5966 100644
+--- a/plugins/binary_filter/snappy/CMakeLists.txt
++++ b/plugins/binary_filter/snappy/CMakeLists.txt
+@@ -30,7 +30,7 @@ macro(add_snappy_module)
+ add_hpx_pseudo_dependencies(plugins.compression.snappy compress_snappy_lib)
+
+ if(NOT HPX_NO_INSTALL)
+- hpx_library_install(compress_snappy_lib lib/hpx)
++ hpx_library_install(compress_snappy_lib ${LIB}/hpx)
+ endif()
+ endif()
+ endmacro()
+diff --git a/plugins/binary_filter/zlib/CMakeLists.txt b/plugins/binary_filter/zlib/CMakeLists.txt
+index 4a188ca..e4485f7 100644
+--- a/plugins/binary_filter/zlib/CMakeLists.txt
++++ b/plugins/binary_filter/zlib/CMakeLists.txt
+@@ -38,7 +38,7 @@ macro(add_zlib_module)
+ add_hpx_pseudo_dependencies(plugins.compression.zlib compress_zlib_lib)
+
+ if(NOT HPX_NO_INSTALL)
+- hpx_library_install(compress_zlib_lib lib/hpx)
++ hpx_library_install(compress_zlib_lib ${LIB}/hpx)
+ endif()
+ endif()
+ endmacro()
+diff --git a/plugins/parcel/coalescing/CMakeLists.txt b/plugins/parcel/coalescing/CMakeLists.txt
+index 093e427..889c10c 100644
+--- a/plugins/parcel/coalescing/CMakeLists.txt
++++ b/plugins/parcel/coalescing/CMakeLists.txt
+@@ -22,7 +22,7 @@ macro(add_coalescing_module)
+ add_hpx_pseudo_dependencies(plugins.parcel.coalescing parcel_coalescing_lib)
+
+ if(NOT HPX_NO_INSTALL)
+- hpx_library_install(parcel_coalescing_lib lib/hpx)
++ hpx_library_install(parcel_coalescing_lib ${LIB}/hpx)
+ endif()
+ endmacro()
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 4f4c79c..6190839 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -312,7 +312,7 @@ set_property(TARGET hpx_serialization APPEND
+ "HPX_COROUTINE_EXPORTS")
+
+ if(NOT HPX_NO_INSTALL)
+- hpx_library_install(hpx_serialization lib/hpx)
++ hpx_library_install(hpx_serialization ${LIB}/hpx)
+ endif()
+
+ ################################################################################
+@@ -403,7 +403,7 @@ set_property(TARGET hpx APPEND
+ "HPX_COROUTINE_EXPORTS") # Do we still need this?
+
+ if(NOT HPX_NO_INSTALL)
+- hpx_library_install(hpx lib/hpx)
++ hpx_library_install(hpx ${LIB}/hpx)
+ endif()
+
+ ################################################################################
+@@ -436,7 +436,7 @@ endif()
+ set_property(TARGET hpx_init PROPERTY FOLDER "Core")
+
+ if(NOT HPX_NO_INSTALL)
+- hpx_archive_install(hpx_init lib/hpx)
++ hpx_archive_install(hpx_init ${LIB}/hpx)
+ endif()
+
+ set(HPX_CONFIG_DEFINITIONS ${HPX_CONFIG_DEFINITIONS} PARENT_SCOPE)
+--
+1.8.5.5
+
diff --git a/sys-cluster/hpx/hpx-0.9.10.ebuild b/sys-cluster/hpx/hpx-0.9.10.ebuild
new file mode 100644
index 000000000000..b481d7d9ba67
--- /dev/null
+++ b/sys-cluster/hpx/hpx-0.9.10.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit cmake-utils fortran-2 multilib python-single-r1 versionator
+
+SRC_URI="http://stellar.cct.lsu.edu/files/${PN}_${PV}.tar.gz"
+KEYWORDS="~amd64 ~x86"
+S="${WORKDIR}/${PN}_${PV}"
+
+DESCRIPTION="C++ runtime system for parallel and distributed applications"
+HOMEPAGE="http://stellar.cct.lsu.edu/tag/hpx/"
+
+SLOT="0"
+LICENSE="Boost-1.0"
+IUSE="doc examples jemalloc papi +perftools tbb test"
+
+RDEPEND="
+ tbb? ( dev-cpp/tbb )
+ >=dev-libs/boost-1.49
+ papi? ( dev-libs/papi )
+ perftools? ( >=dev-util/google-perftools-1.7.1 )
+ >=sys-apps/hwloc-1.8
+ >=sys-libs/libunwind-1
+ sys-libs/zlib
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ test? ( dev-lang/python )
+ doc? ( >=dev-libs/boost-1.56.0-r1[tools] )
+"
+REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )
+ jemalloc? ( !perftools !tbb )
+ perftools? ( !jemalloc !tbb )
+ tbb? ( !jemalloc !perftools )
+ "
+
+pkg_setup() {
+ use test && python-single-r1_pkg_setup
+}
+
+src_configure() {
+ CMAKE_BUILD_TYPE=Release
+ local mycmakeargs=(
+ -DHPX_BUILD_EXAMPLES=OFF
+ -DHPX_MALLOC=system
+ -DLIB=$(get_libdir)
+ -Dcmake_dir=cmake
+ $(cmake-utils_use doc HPX_BUILD_DOCUMENTATION)
+ $(cmake-utils_use jemalloc HPX_JEMALLOC)
+ $(cmake-utils_use test BUILD_TESTING)
+ $(cmake-utils_use perftools HPX_GOOGLE_PERFTOOLS)
+ $(cmake-utils_use papi HPX_PAPI)
+ )
+
+ use perftools && mycmakeargs+=( -DHPX_MALLOC=tcmalloc )
+ use jemalloc && mycmakeargs+=( -DHPX_MALLOC=jemalloc )
+ use tbb && mycmakeargs+=( -DHPX_MALLOC=tbbmalloc )
+
+ cmake-utils_src_configure
+}
+
+src_test() {
+ # avoid over-suscribing
+ cmake-utils_src_make -j1 tests
+}
+
+src_install() {
+ cmake-utils_src_install
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r examples
+ fi
+}
diff --git a/sys-cluster/hpx/hpx-0.9.8.ebuild b/sys-cluster/hpx/hpx-0.9.8.ebuild
new file mode 100644
index 000000000000..1de22ffc9217
--- /dev/null
+++ b/sys-cluster/hpx/hpx-0.9.8.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+SRC_URI="http://stellar.cct.lsu.edu/files/${PN}_${PV}.7z"
+KEYWORDS="~amd64 ~x86"
+S="${WORKDIR}/${PN}_${PV}"
+
+inherit cmake-utils fortran-2 multilib python-single-r1
+
+DESCRIPTION="C++ runtime system for parallel and distributed applications"
+HOMEPAGE="http://stellar.cct.lsu.edu/tag/hpx/"
+
+SLOT="0"
+LICENSE="Boost-1.0"
+IUSE="doc examples jemalloc papi +perftools tbb test"
+
+# TODO: some of the forced deps are may be optional
+# it would need to work the automagic
+RDEPEND="
+ tbb? ( dev-cpp/tbb )
+ >=dev-libs/boost-1.51
+ dev-libs/libxml2
+ papi? ( dev-libs/papi )
+ sci-libs/hdf5
+ >=sys-apps/hwloc-1.8
+ >=sys-libs/libunwind-1
+ sys-libs/zlib
+ perftools? ( >=dev-util/google-perftools-1.7.1 )
+"
+DEPEND="${RDEPEND}
+ app-arch/p7zip
+ virtual/pkgconfig
+ test? ( dev-lang/python )
+"
+REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )"
+
+PATCHES=(
+ "${FILESDIR}"/hpx-0.9.8-install-path.patch
+ "${FILESDIR}"/hpx-0.9.8-multilib.patch
+ "${FILESDIR}"/hpx-0.9.8-cmake_dir.patch
+)
+
+pkg_setup() {
+ use test && python-single-r1_pkg_setup
+}
+
+src_configure() {
+ CMAKE_BUILD_TYPE=Release
+ local mycmakeargs=(
+ -DHPX_BUILD_EXAMPLES=OFF
+ -DLIB=$(get_libdir)
+ -Dcmake_dir=cmake
+ $(cmake-utils_use doc HPX_BUILD_DOCUMENTATION)
+ $(cmake-utils_use jemalloc HPX_JEMALLOC)
+ $(cmake-utils_use test BUILD_TESTING)
+ $(cmake-utils_use perftools HPX_GOOGLE_PERFTOOLS)
+ $(cmake-utils_use papi HPX_PAPI)
+ )
+ if use perftools; then
+ mycmakeargs+=( -DHPX_MALLOC=tcmalloc )
+ elif use jemalloc; then
+ mycmakeargs+=( -DHPX_MALLOC=jemalloc )
+ elif use tbb; then
+ mycmakeargs+=( -DHPX_MALLOC=tbbmalloc )
+ else
+ mycmakeargs+=( -DHPX_MALLOC=system )
+ fi
+ cmake-utils_src_configure
+}
+
+src_test() {
+ # avoid over-suscribing
+ cmake-utils_src_make -j1 tests
+}
+
+src_install() {
+ cmake-utils_src_install
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r examples
+ fi
+}
diff --git a/sys-cluster/hpx/hpx-0.9.9.ebuild b/sys-cluster/hpx/hpx-0.9.9.ebuild
new file mode 100644
index 000000000000..e6fbac60078b
--- /dev/null
+++ b/sys-cluster/hpx/hpx-0.9.9.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit cmake-utils fortran-2 multilib python-single-r1 versionator
+
+MY_PV="$(replace_version_separator _ -)"
+
+SRC_URI="https://github.com/STEllAR-GROUP/hpx/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64 ~x86"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+DESCRIPTION="C++ runtime system for parallel and distributed applications"
+HOMEPAGE="http://stellar.cct.lsu.edu/tag/hpx/"
+
+SLOT="0"
+LICENSE="Boost-1.0"
+IUSE="doc examples jemalloc papi +perftools tbb test"
+
+RDEPEND="
+ tbb? ( dev-cpp/tbb )
+ >=dev-libs/boost-1.49
+ papi? ( dev-libs/papi )
+ perftools? ( >=dev-util/google-perftools-1.7.1 )
+ >=sys-apps/hwloc-1.8
+ >=sys-libs/libunwind-1
+ sys-libs/zlib
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ test? ( dev-lang/python )
+ doc? ( >=dev-libs/boost-1.56.0-r1[tools] )
+"
+REQUIRED_USE="test? ( ${PYTHON_REQUIRED_USE} )
+ jemalloc? ( !perftools !tbb )
+ perftools? ( !jemalloc !tbb )
+ tbb? ( !jemalloc !perftools )
+ "
+
+pkg_setup() {
+ use test && python-single-r1_pkg_setup
+}
+
+src_configure() {
+ CMAKE_BUILD_TYPE=Release
+ local mycmakeargs=(
+ -DHPX_BUILD_EXAMPLES=OFF
+ -DHPX_MALLOC=system
+ -DLIB=$(get_libdir)
+ -Dcmake_dir=cmake
+ $(cmake-utils_use doc HPX_BUILD_DOCUMENTATION)
+ $(cmake-utils_use jemalloc HPX_JEMALLOC)
+ $(cmake-utils_use test BUILD_TESTING)
+ $(cmake-utils_use perftools HPX_GOOGLE_PERFTOOLS)
+ $(cmake-utils_use papi HPX_PAPI)
+ )
+
+ use perftools && mycmakeargs+=( -DHPX_MALLOC=tcmalloc )
+ use jemalloc && mycmakeargs+=( -DHPX_MALLOC=jemalloc )
+ use tbb && mycmakeargs+=( -DHPX_MALLOC=tbbmalloc )
+
+ cmake-utils_src_configure
+}
+
+src_test() {
+ # avoid over-suscribing
+ cmake-utils_src_make -j1 tests
+}
+
+src_install() {
+ cmake-utils_src_install
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r examples
+ fi
+}
diff --git a/sys-cluster/hpx/metadata.xml b/sys-cluster/hpx/metadata.xml
new file mode 100644
index 000000000000..ef651df75ce7
--- /dev/null
+++ b/sys-cluster/hpx/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!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>
+ <email>slis@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="jemalloc">Use <pkg>dev-libs/jemalloc</pkg> for memory allocation</flag>
+ <flag name="perftools">Use <pkg>dev-util/google-perftools</pkg> for
+ memory allocation</flag>
+ <flag name="tbb">Use <pkg>dev-cpp/tbb</pkg> for memory
+ allocation</flag>
+ <flag name="papi">Use <pkg>dev-libs/papi</pkg> for NaCl</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">STEllAR-GROUP/hpx</remote-id>
+ </upstream>
+</pkgmetadata>