commit:     50d751cf3d0e5250817438bb0a5cdf89f806cb92
Author:     Christoph Junghans <ottxor <AT> gentoo <DOT> org>
AuthorDate: Fri Sep  2 22:27:43 2016 +0000
Commit:     Christoph Junghans <ottxor <AT> gentoo <DOT> org>
CommitDate: Fri Sep  2 22:27:55 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=50d751cf

sys-cluster/legion: initial commit

Package-Manager: portage-2.2.28

 sys-cluster/legion/Manifest                        |   1 +
 .../legion/files/legion-16.08.0-hwloc.patch        |  22 ++++
 .../legion/files/legion-16.08.0-multilib.patch     | 131 +++++++++++++++++++++
 sys-cluster/legion/legion-16.08.0.ebuild           |  36 ++++++
 sys-cluster/legion/metadata.xml                    |  16 +++
 5 files changed, 206 insertions(+)

diff --git a/sys-cluster/legion/Manifest b/sys-cluster/legion/Manifest
new file mode 100644
index 00000000..f02219e
--- /dev/null
+++ b/sys-cluster/legion/Manifest
@@ -0,0 +1 @@
+DIST legion-16.08.0.tar.gz 2501054 SHA256 
c2a344e54124172b49d97e0e0033021e9ed3d9ddb4158b0620430c5597f6ccba SHA512 
8847fa8c0c7683812dd6ffb038a4d6d3427fdfde62ec917ab32e9a15cd7320321cab2b106479589aa2451cabd98cd0b1dc88b4ff668f991bb4c95f383de785a5
 WHIRLPOOL 
355f54164fca71c49891869644c841814600c09253bc807297bc79391f13f05fbe93029f29918167cd79a745928b0d991bc671ccd841320a32ce67941f34705c

diff --git a/sys-cluster/legion/files/legion-16.08.0-hwloc.patch 
b/sys-cluster/legion/files/legion-16.08.0-hwloc.patch
new file mode 100644
index 00000000..f9e270c
--- /dev/null
+++ b/sys-cluster/legion/files/legion-16.08.0-hwloc.patch
@@ -0,0 +1,22 @@
+From 8c636a8547b1695105501b8b7c8c713094ef7921 Mon Sep 17 00:00:00 2001
+From: Christoph Junghans <[email protected]>
+Date: Fri, 2 Sep 2016 15:26:51 -0600
+Subject: [PATCH] FindHWLOC.cmake: fix syntax error
+
+---
+ cmake/FindHWLOC.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/FindHWLOC.cmake b/cmake/FindHWLOC.cmake
+index 1019b59..1e9e97d 100644
+--- a/cmake/FindHWLOC.cmake
++++ b/cmake/FindHWLOC.cmake
+@@ -28,7 +28,7 @@ if(NOT HWLOC_FOUND AND NOT TARGET HWLOC)
+     # Save the existing prefix options
+     set(_CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH})
+     set(_CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH})
+-    set(CMAKE_PREFIX_PATH ${HWLOC_ROOT_DIR}
++    set(CMAKE_PREFIX_PATH ${HWLOC_ROOT_DIR})
+     unset(CMAKE_LIBRARY_PATH)
+     set(_HWLOC_FIND_OPTS
+       NO_CMAKE_ENVIRONMENT_PATH

diff --git a/sys-cluster/legion/files/legion-16.08.0-multilib.patch 
b/sys-cluster/legion/files/legion-16.08.0-multilib.patch
new file mode 100644
index 00000000..7ddd9a8
--- /dev/null
+++ b/sys-cluster/legion/files/legion-16.08.0-multilib.patch
@@ -0,0 +1,131 @@
+From f9b71c86098c16436c3a51d8706f52f720ef008d Mon Sep 17 00:00:00 2001
+From: Christoph Junghans <[email protected]>
+Date: Fri, 2 Sep 2016 15:54:49 -0600
+Subject: [PATCH] cmake: support multilib
+
+---
+ CMakeLists.txt         | 26 ++++++++++++++++----------
+ runtime/CMakeLists.txt |  8 ++++----
+ 2 files changed, 20 insertions(+), 14 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 726e8e4..181a2bd 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,12 +20,18 @@ project(Legion)
+ 
#------------------------------------------------------------------------------#
+ # Some boilerplate to setup nice output directories
+ 
#------------------------------------------------------------------------------#
++
++#for multilib distros
++if (NOT DEFINED LIB)
++  set(LIB "lib")
++endif(NOT DEFINED LIB)
++
+ list(INSERT CMAKE_MODULE_PATH 0 "${Legion_SOURCE_DIR}/cmake")
+ if(NOT CMAKE_ARCHIVE_OUTPUT_DIRECTORY)
+-  set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${Legion_BINARY_DIR}/lib)
++  set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${Legion_BINARY_DIR}/${LIB})
+ endif()
+ if(NOT CMAKE_LIBRARY_OUTPUT_DIRECTORY)
+-  set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${Legion_BINARY_DIR}/lib)
++  set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${Legion_BINARY_DIR}/${LIB})
+ endif()
+ if(NOT CMAKE_RUNTIME_OUTPUT_DIRECTORY)
+   set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${Legion_BINARY_DIR}/bin)
+@@ -50,7 +56,7 @@ option(Legion_USE_HWLOC "Use hwloc for topology awareness" 
OFF)
+ if(Legion_USE_HWLOC)
+   find_package(HWLOC REQUIRED)
+   install(FILES ${Legion_SOURCE_DIR}/cmake/FindHWLOC.cmake
+-    DESTINATION lib/cmake/Legion
++    DESTINATION ${LIB}/cmake/Legion
+   )
+ endif()
+ 
+@@ -69,7 +75,7 @@ if(Legion_USE_GASNet)
+   mark_as_advanced(GASNet_CONDUIT)
+   find_package(GASNet REQUIRED)
+   install(FILES ${Legion_SOURCE_DIR}/cmake/FindGASNet.cmake
+-    DESTINATION lib/cmake/Legion
++    DESTINATION ${LIB}/cmake/Legion
+   )
+ endif()
+ 
+@@ -81,7 +87,7 @@ if(Legion_USE_LLVM)
+   set(Legion_LLVM_COMPONENTS irreader jit mcjit x86)
+   find_package(LLVM REQUIRED COMPONENTS ${Legion_LLVM_COMPONENTS})
+   install(FILES ${Legion_SOURCE_DIR}/cmake/FindLLVM.cmake
+-    DESTINATION lib/cmake/Legion
++    DESTINATION ${LIB}/cmake/Legion
+   )
+ endif()
+ 
+@@ -97,10 +103,10 @@ if(Legion_USE_CUDA)
+   endif()
+   find_package(CUDA REQUIRED)
+   install(FILES ${Legion_SOURCE_DIR}/cmake/FindCUDA.cmake
+-    DESTINATION lib/cmake/Legion
++    DESTINATION ${LIB}/cmake/Legion
+   )
+   install(FILES ${Legion_SOURCE_DIR}/cmake/newcmake/FindCUDA.cmake
+-    DESTINATION lib/cmake/Legion/newcmake
++    DESTINATION ${LIB}/cmake/Legion/newcmake
+   )
+ endif()
+ 
+@@ -128,7 +134,7 @@ export(EXPORT LegionTargets
+ install(EXPORT LegionTargets
+   NAMESPACE Legion::
+   FILE LegionTargets.cmake
+-  DESTINATION lib/cmake/Legion
++  DESTINATION ${LIB}/cmake/Legion
+ )
+ 
+ configure_file(
+@@ -137,7 +143,7 @@ configure_file(
+   @ONLY
+ )
+ install(FILES ${Legion_BINARY_DIR}/LegionConfigCommon.cmake
+-  DESTINATION lib/cmake/Legion
++  DESTINATION ${LIB}/cmake/Legion
+ )
+ 
+ configure_file(
+@@ -147,7 +153,7 @@ configure_file(
+ )
+ 
+ install(FILES cmake/LegionConfig-install.cmake
+-  DESTINATION lib/cmake/Legion
++  DESTINATION ${LIB}/cmake/Legion
+   RENAME LegionConfig.cmake
+ )
+ 
+diff --git a/runtime/CMakeLists.txt b/runtime/CMakeLists.txt
+index e21e141..91f6a03 100644
+--- a/runtime/CMakeLists.txt
++++ b/runtime/CMakeLists.txt
+@@ -176,8 +176,8 @@ target_include_directories(LowLevelRuntime
+ )
+ 
+ install(TARGETS LowLevelRuntime EXPORT LegionTargets
+-  LIBRARY DESTINATION lib
+-  ARCHIVE DESTINATION lib
++  LIBRARY DESTINATION ${LIB}
++  ARCHIVE DESTINATION ${LIB}
+   RUNTIME DESTINATION bin
+ )
+ 
+@@ -244,8 +244,8 @@ target_include_directories(HighLevelRuntime
+ )
+ 
+ install(TARGETS HighLevelRuntime EXPORT LegionTargets
+-  LIBRARY DESTINATION lib
+-  ARCHIVE DESTINATION lib
++  LIBRARY DESTINATION ${LIB}
++  ARCHIVE DESTINATION ${LIB}
+   RUNTIME DESTINATION bin
+ )
+ 
+-- 
+2.7.3
+

diff --git a/sys-cluster/legion/legion-16.08.0.ebuild 
b/sys-cluster/legion/legion-16.08.0.ebuild
new file mode 100644
index 00000000..534945d
--- /dev/null
+++ b/sys-cluster/legion/legion-16.08.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="A data-centric parallel programming system"
+HOMEPAGE="http://legion.stanford.edu/";
+SRC_URI="https://github.com/StanfordLegion/${PN}/archive/${P}.tar.gz";
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gasnet +hwloc"
+
+DEPEND="
+       gasnet? ( sys-cluster/gasnet )
+       hwloc? ( sys-apps/hwloc )
+       "
+
+S="${WORKDIR}/${PN}-${P}"
+
+#https://github.com/StanfordLegion/legion/pull/166
+#https://github.com/StanfordLegion/legion/pull/167
+PATCHES=( "${FILESDIR}/${P}-hwloc.patch" "${FILESDIR}/${P}-multilib.patch" )
+
+src_configure() {
+       mycmakeargs=(
+               -DLegion_USE_HWLOC=$(usex hwloc)
+               -DLegion_USE_GASNet=$(usex gasnet)
+               -DLIB=$(get_libdir)
+       )
+       cmake-utils_src_configure
+}

diff --git a/sys-cluster/legion/metadata.xml b/sys-cluster/legion/metadata.xml
new file mode 100644
index 00000000..bae6863
--- /dev/null
+++ b/sys-cluster/legion/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+  <maintainer type="person">
+    <email>[email protected]</email>
+    <name>Christoph Junghans</name>
+  </maintainer>
+  <maintainer type="project">
+    <email>[email protected]</email>
+    <name>Gentoo Cluster Project</name>
+  </maintainer>
+  <use>
+       <flag name="hwloc">Enable HWLoc lib support</flag>
+       <flag name="gasnet">Enable GASNet lib support</flag>
+  </use>
+</pkgmetadata>

Reply via email to