aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Junghans <ottxor@gentoo.org>2014-05-20 11:22:53 -0600
committerChristoph Junghans <ottxor@gentoo.org>2014-05-20 11:23:06 -0600
commit7aa442faa14f7818e677ac8b3c7fcea08c96d1e4 (patch)
tree8689a55b2c17a2adeb007eefa78f0d3dafff88a1
parentSome more fixes (diff)
downloadsci-7aa442faa14f7818e677ac8b3c7fcea08c96d1e4.tar.gz
sci-7aa442faa14f7818e677ac8b3c7fcea08c96d1e4.tar.bz2
sci-7aa442faa14f7818e677ac8b3c7fcea08c96d1e4.zip
version bump
Package-Manager: portage-2.2.8-r1
-rw-r--r--sys-cluster/hpx/ChangeLog7
-rw-r--r--sys-cluster/hpx/Manifest1
-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.8.ebuild96
6 files changed, 363 insertions, 0 deletions
diff --git a/sys-cluster/hpx/ChangeLog b/sys-cluster/hpx/ChangeLog
index 3bef4c63c..76ead3d26 100644
--- a/sys-cluster/hpx/ChangeLog
+++ b/sys-cluster/hpx/ChangeLog
@@ -2,6 +2,13 @@
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+*hpx-0.9.8 (20 May 2014)
+
+ 20 May 2014; Christoph Junghans <ottxor@gentoo.org>
+ +files/hpx-0.9.8-cmake_dir.patch, +files/hpx-0.9.8-install-path.patch,
+ +files/hpx-0.9.8-multilib.patch, +hpx-0.9.8.ebuild:
+ version bump
+
16 Feb 2014; Sébastien Fabbro <bicatali@gentoo.org> hpx-0.9.7.ebuild,
hpx-9999.ebuild, metadata.xml:
sys-cluster/hpx: Version bump
diff --git a/sys-cluster/hpx/Manifest b/sys-cluster/hpx/Manifest
index 138b23bf3..af0dedf44 100644
--- a/sys-cluster/hpx/Manifest
+++ b/sys-cluster/hpx/Manifest
@@ -1 +1,2 @@
DIST hpx_0.9.7.7z 2416122 SHA256 95fa108a6ba6cd3a3afc117d508936d1c070cc7e83a592f62815a6a11378882a SHA512 eb258e94facaaba29729ebca63640ab5feda156ee860153848ca1143266b8365bc9cc772eb6d6f56f884af43531efb1b77fa84ca4c6e185882cbf031ac794a7b WHIRLPOOL c5432a608a90a732ed7ec08f980d3d2f7f99a3bd5b83867db26190877120b76f0b46f6fd3e9bbc97bfb9637e6c951c9dd449c0f6c767bb11eca1e0212f488d88
+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 000000000..b5c66c284
--- /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 000000000..f5c867b9b
--- /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 000000000..470e76e3b
--- /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.8.ebuild b/sys-cluster/hpx/hpx-0.9.8.ebuild
new file mode 100644
index 000000000..182746f93
--- /dev/null
+++ b/sys-cluster/hpx/hpx-0.9.8.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_6,2_7} )
+
+if [ ${PV} == "9999" ] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/STEllAR-GROUP/hpx.git"
+ SRC_URI=""
+ KEYWORDS=""
+ S="${WORKDIR}/${PN}"
+ CMAKE_USE_DIR="${S}"
+else
+ SRC_URI="http://stellar.cct.lsu.edu/files/${PN}_${PV}.7z"
+ KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+ S="${WORKDIR}/${PN}_${PV}"
+fi
+
+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="
+ >=dev-libs/boost-1.51
+ dev-libs/libxml2
+ sci-libs/hdf5
+ >=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}
+ 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
+}