summaryrefslogtreecommitdiff
path: root/dev-cpp/cpp-taskflow
diff options
context:
space:
mode:
Diffstat (limited to 'dev-cpp/cpp-taskflow')
-rw-r--r--dev-cpp/cpp-taskflow/Manifest5
-rw-r--r--dev-cpp/cpp-taskflow/cpp-taskflow-2.4.0-r1.ebuild33
-rw-r--r--dev-cpp/cpp-taskflow/files/cpp-taskflow-2.4.0-do_not_compile_examples.patch82
-rw-r--r--dev-cpp/cpp-taskflow/files/cpp-taskflow-2.4.0-fix_installation_path.patch22
-rw-r--r--dev-cpp/cpp-taskflow/metadata.xml20
5 files changed, 162 insertions, 0 deletions
diff --git a/dev-cpp/cpp-taskflow/Manifest b/dev-cpp/cpp-taskflow/Manifest
new file mode 100644
index 000000000000..ccbb8c11d2ef
--- /dev/null
+++ b/dev-cpp/cpp-taskflow/Manifest
@@ -0,0 +1,5 @@
+AUX cpp-taskflow-2.4.0-do_not_compile_examples.patch 2634 BLAKE2B 6b326b97e721061892abe0e01bcfb49dffea91b641684b1c860c8f8384153103107d9ab26dfaa4b577897e49f45fa2a6cfaaf5cf49409afa429b5dd0c7aefda9 SHA512 21b61ba80536cf8baa24c67e35902b66fb98408f86be8a4611b15304525c2e14a20af80507ccdd4d6a365303abdc38d1d199f1888baa0a35a04483a837ddadd5
+AUX cpp-taskflow-2.4.0-fix_installation_path.patch 739 BLAKE2B 6cf25c76b91d3e60c7a9f35bcf0d5a89f28dd42efb32c3fa57eefd9b716e9905d20cd8becc0a47cf74f992bf2e77b6051034f62533dbfdab4b57a70a4b24eecf SHA512 36e2284da55eba9ca24a34e8baa105a28e411d54927378f6978c96c19af08a760fc4f3caff6ec4f325d63ca8974e7b66e27e3c69ba39e22f6b8e67d3ae303b24
+DIST cpp-taskflow-2.4.0.tar.gz 76993334 BLAKE2B 8f257165ab72dbe6c1cf6a86886669008e9f16f1dfd4871defc452bdb9dfa3e45ab9bfbbdc874b4ba566a2a7d8984a666ce2933b2c6d2215467f7fbfa03ac520 SHA512 dd6c7500e39d7058871280d12e120bd28d9609e5289f1d7851b3b59e2c1bfe74d3040d902bd5b26895e558b563c8abad878e7bc343e199e7356940c02a64217f
+EBUILD cpp-taskflow-2.4.0-r1.ebuild 603 BLAKE2B 0620b659d11e94d1fde1e6f53767a98aded76fc8f7b2af238e0ff4a900484dbae00a288e12bce48a4c3adde8ced548dcef577528473328408e93219b1e49ebb3 SHA512 fd5822c2ff54904142ebf6fc5c36f263ce16178d6b161aa412dad4cb378f9e9449943e2a836cc815c9e3d6ef4f4f32bed6ef86ae0f712689cc81bb2cc4b9887f
+MISC metadata.xml 662 BLAKE2B 9a3c9f4208ed92f0957323e281cedd321b9e15c15af231eeca1b88b8e0d87df81a546afd8877f496151c0815cb566d9e205fe1eb8b8fce33114435e2c66f75ab SHA512 9b0b6de9d422df44507429af356aa0d31411a564efe4a58065cdff38845f1e1e53fef6aef8a8537ccfff8ee36e3e77beff65aca3bda4efb2a5f3166c41ea68d2
diff --git a/dev-cpp/cpp-taskflow/cpp-taskflow-2.4.0-r1.ebuild b/dev-cpp/cpp-taskflow/cpp-taskflow-2.4.0-r1.ebuild
new file mode 100644
index 000000000000..b3df053c1da1
--- /dev/null
+++ b/dev-cpp/cpp-taskflow/cpp-taskflow-2.4.0-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-utils
+
+DESCRIPTION="Modern C++ Parallel Task Programming"
+HOMEPAGE="https://cpp-taskflow.github.io"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+RDEPEND=""
+DEPEND=""
+
+PATCHES=(
+ "${FILESDIR}"/${P}-do_not_compile_examples.patch
+ "${FILESDIR}"/${P}-fix_installation_path.patch
+)
+
+HTML_DOCS=( docs/. )
+
+src_install() {
+ cmake-utils_src_install
+
+ if $(use doc); then
+ einstalldocs
+ fi
+}
diff --git a/dev-cpp/cpp-taskflow/files/cpp-taskflow-2.4.0-do_not_compile_examples.patch b/dev-cpp/cpp-taskflow/files/cpp-taskflow-2.4.0-do_not_compile_examples.patch
new file mode 100644
index 000000000000..99f4658adfe4
--- /dev/null
+++ b/dev-cpp/cpp-taskflow/files/cpp-taskflow-2.4.0-do_not_compile_examples.patch
@@ -0,0 +1,82 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1bf8ed3..190dabe 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -223,76 +223,10 @@ target_include_directories(${PROJECT_NAME} INTERFACE
+ $<INSTALL_INTERFACE:include/>
+ )
+
+-# -----------------------------------------------------------------------------
+-# Example program
+-# -----------------------------------------------------------------------------
+-
+-message(STATUS "Building examples ...")
+-set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${TF_EXAMPLE_DIR})
+-
+-add_executable(simple ${TF_EXAMPLE_DIR}/simple.cpp)
+-target_link_libraries(
+- simple ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-
+-add_executable(observer ${TF_EXAMPLE_DIR}/observer.cpp)
+-target_link_libraries(
+- observer ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-
+-add_executable(subflow ${TF_EXAMPLE_DIR}/subflow.cpp)
+-target_link_libraries(
+- subflow ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-
+-add_executable(condition ${TF_EXAMPLE_DIR}/condition.cpp)
+-target_link_libraries(
+- condition ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-
+-add_executable(visualization ${TF_EXAMPLE_DIR}/visualization.cpp)
+-target_link_libraries(
+- visualization ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-
+-add_executable(reduce ${TF_EXAMPLE_DIR}/reduce.cpp)
+-target_link_libraries(
+- reduce ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-
+-add_executable(parallel_for ${TF_EXAMPLE_DIR}/parallel_for.cpp)
+-target_link_libraries(
+- parallel_for ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-
+-add_executable(run ${TF_EXAMPLE_DIR}/run.cpp)
+-target_link_libraries(
+- run ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-
+-add_executable(composition ${TF_EXAMPLE_DIR}/composition.cpp)
+-target_link_libraries(
+- composition ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-
+-#### CUDA examples
+-if(${TF_ENABLE_CUDA})
+-set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${TF_EXAMPLE_DIR}/cuda)
+-
+-add_executable(saxpy ${TF_EXAMPLE_DIR}/cuda/saxpy.cu)
+-target_link_libraries(
+- saxpy ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-
+-add_executable(device_property ${TF_EXAMPLE_DIR}/cuda/device_property.cu)
+-target_link_libraries(
+- device_property ${PROJECT_NAME} Threads::Threads tf::default_settings
+-)
+-endif(${TF_ENABLE_CUDA})
+-
+ # -----------------------------------------------------------------------------
+ # Unittest
+ # -----------------------------------------------------------------------------
++
+ enable_testing()
+ message(STATUS "Building unit tests ...")
+ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${TF_UTEST_DIR})
diff --git a/dev-cpp/cpp-taskflow/files/cpp-taskflow-2.4.0-fix_installation_path.patch b/dev-cpp/cpp-taskflow/files/cpp-taskflow-2.4.0-fix_installation_path.patch
new file mode 100644
index 000000000000..f68e572f5ab2
--- /dev/null
+++ b/dev-cpp/cpp-taskflow/files/cpp-taskflow-2.4.0-fix_installation_path.patch
@@ -0,0 +1,22 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 190dabe..6d613d6 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,7 +6,7 @@ MESSAGE(STATUS "CMAKE_ROOT: " ${CMAKE_ROOT})
+ #_cmake_modify_IGNORE set(CMAKE_VERBOSE_MAKEFILE ON)
+
+ # Project name
+-project(Cpp-Taskflow VERSION 2.3.1 LANGUAGES CXX)
++project(Cpp-Taskflow VERSION 2.4.0 LANGUAGES CXX)
+
+ # build options
+ option(TF_ENABLE_CUDA "Enables build of cuda code" OFF)
+@@ -748,7 +748,7 @@ write_basic_package_version_file(
+ install(
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake
+ ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake
+- DESTINATION ${TF_LIB_INSTALL_DIR}/cmake
++ DESTINATION ${TF_LIB_INSTALL_DIR}/cmake/${PROJECT_NAME}
+ )
+
+
diff --git a/dev-cpp/cpp-taskflow/metadata.xml b/dev-cpp/cpp-taskflow/metadata.xml
new file mode 100644
index 000000000000..8406ef2081f1
--- /dev/null
+++ b/dev-cpp/cpp-taskflow/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tamiko@gentoo.org</email>
+ <name>Matthias Maier</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+ <longdescription>
+ Cpp-Taskflow is faster, more expressive, and easier for drop-in
+ integration than many of existing task programming frameworks in
+ handling complex parallel workloads.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">cpp-taskflow/cpp-taskflow</remote-id>
+ </upstream>
+</pkgmetadata>