aboutsummaryrefslogtreecommitdiff
path: root/devel/onetbb
diff options
context:
space:
mode:
authorGanael LAPLANCHE <martymac@FreeBSD.org>2021-02-19 15:14:46 +0000
committerGanael LAPLANCHE <martymac@FreeBSD.org>2021-02-19 15:14:46 +0000
commit34fdd4dc58e2ebd98803c88ff8e684892954817c (patch)
tree204912d10c077dd7fe9cf6351801dbe1835e7b11 /devel/onetbb
parent8ec37e4f4203b2cdd0b58fb5c6b251153f72abb4 (diff)
downloadports-34fdd4dc58e2ebd98803c88ff8e684892954817c.tar.gz
ports-34fdd4dc58e2ebd98803c88ff8e684892954817c.zip
Introduce devel/onetbb and mark devel/tbb as legacy
Intel oneAPI tbb 2021.1 (onetbb) has been released[1][2] and has deprecated several interfaces over tbb 2020, breaking most dependent ports. Old tbb 2020 will be kept for a certain time to allow transition but will be removed in a near future as it CONFLICTS with devel/onetbb. New ports should now use devel/onetbb instead of devel/tbb. We tried to move a maximum number of dependent ports to devel/onetbb (or disable dependency when not possible), but some of them still remain stuck to devel/tbb. Remaining ones have not been identified as major dependencies themselves and will be fixed as soon as updates are available from upstream. PR: 252648, 252688 [3], 252683 [4], 252651 [5], 252690 [3], 252693 [3], 252695 [3], 252696 [3], 252786 [3], 252649, 252868 [6], 252870 [5], 252684 [7], 252785 [7] Approved by: yuri [3], jwb [4], thierry [5], FreeBSD@Shaneware.biz [6], maintainer timeout [7] [1] https://software.intel.com/content/www/us/en/develop/articles/intel-oneapi-threading-building-blocks-release-notes.html [2] https://software.intel.com/content/www/us/en/develop/articles/tbb-revamp.html
Notes
Notes: svn path=/head/; revision=566074
Diffstat (limited to 'devel/onetbb')
-rw-r--r--devel/onetbb/Makefile38
-rw-r--r--devel/onetbb/distinfo3
-rw-r--r--devel/onetbb/files/onetbb.pc.in10
-rw-r--r--devel/onetbb/files/patch-src-tbbbind-CMakeLists.txt11
-rw-r--r--devel/onetbb/files/patch-test-common-memory_usage.h12
-rw-r--r--devel/onetbb/files/patch-test-tbbmalloc-test_malloc_compliance.cpp13
-rw-r--r--devel/onetbb/pkg-descr5
-rw-r--r--devel/onetbb/pkg-plist146
8 files changed, 238 insertions, 0 deletions
diff --git a/devel/onetbb/Makefile b/devel/onetbb/Makefile
new file mode 100644
index 000000000000..feeda631670f
--- /dev/null
+++ b/devel/onetbb/Makefile
@@ -0,0 +1,38 @@
+# $FreeBSD$
+
+PORTNAME= onetbb
+PORTVERSION= 2021.1.1
+DISTVERSIONPREFIX= v
+CATEGORIES= devel
+
+MAINTAINER= martymac@FreeBSD.org
+COMMENT= Library that provides thread building blocks
+
+LICENSE= APACHE20
+
+LIB_DEPENDS= libhwloc.so.15:devel/hwloc2
+
+USES= cmake tar:tgz
+
+CMAKE_ARGS+= -DTBB_STRICT:BOOL=FALSE
+
+CONFLICTS= tbb-[0-9]*
+
+USE_GITHUB= yes
+GH_ACCOUNT= oneapi-src
+GH_PROJECT= oneTBB
+
+SUB_FILES= onetbb.pc
+SUB_LIST= prefix="${PREFIX}" \
+ name="${PORTNAME}" \
+ description="${COMMENT}" \
+ version="${PORTVERSION}"
+
+USE_LDCONFIG= yes
+
+.include <bsd.port.pre.mk>
+
+post-install:
+ ${INSTALL_DATA} ${WRKDIR}/onetbb.pc ${STAGEDIR}${PREFIX}/libdata/pkgconfig
+
+.include <bsd.port.post.mk>
diff --git a/devel/onetbb/distinfo b/devel/onetbb/distinfo
new file mode 100644
index 000000000000..b70c4947aeee
--- /dev/null
+++ b/devel/onetbb/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1608578552
+SHA256 (oneapi-src-oneTBB-v2021.1.1_GH0.tar.gz) = b182c73caaaabc44ddc5ad13113aca7e453af73c1690e4061f71dfe4935d74e8
+SIZE (oneapi-src-oneTBB-v2021.1.1_GH0.tar.gz) = 1062960
diff --git a/devel/onetbb/files/onetbb.pc.in b/devel/onetbb/files/onetbb.pc.in
new file mode 100644
index 000000000000..3a229fe83b6c
--- /dev/null
+++ b/devel/onetbb/files/onetbb.pc.in
@@ -0,0 +1,10 @@
+prefix=%%prefix%%
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: %%name%%
+Description: %%description%%
+Version: %%version%%
+Libs: -L${libdir} -ltbb
+Cflags: -I${includedir}
diff --git a/devel/onetbb/files/patch-src-tbbbind-CMakeLists.txt b/devel/onetbb/files/patch-src-tbbbind-CMakeLists.txt
new file mode 100644
index 000000000000..58c11a42c43a
--- /dev/null
+++ b/devel/onetbb/files/patch-src-tbbbind-CMakeLists.txt
@@ -0,0 +1,11 @@
+Disable legacy hwloc lookup
+
+--- src/tbbbind/CMakeLists.txt.orig 2020-12-08 11:00:57 UTC
++++ src/tbbbind/CMakeLists.txt
+@@ -82,5 +82,5 @@ macro(tbbbind_build TBBBIND_NAME HWLOC_VERSION)
+ endmacro()
+
+ message(STATUS "Trying to find HWLOC (versions 2 and 1.11) to build TBBBind library")
+-tbbbind_build(tbbbind 1.11)
++#tbbbind_build(tbbbind 1.11)
+ tbbbind_build(tbbbind_2_0 2)
diff --git a/devel/onetbb/files/patch-test-common-memory_usage.h b/devel/onetbb/files/patch-test-common-memory_usage.h
new file mode 100644
index 000000000000..c1813d83c17a
--- /dev/null
+++ b/devel/onetbb/files/patch-test-common-memory_usage.h
@@ -0,0 +1,12 @@
+--- test/common/memory_usage.h.orig 2020-12-08 11:00:57 UTC
++++ test/common/memory_usage.h
+@@ -119,7 +119,8 @@ namespace utils {
+ ASSERT(status == KERN_SUCCESS, NULL);
+ return info.virtual_size - shared_size;
+ #else
+- return 0;
++ // Use stat var to work around unused parameter error
++ return stat == currentUsage ? 0 : 0;
+ #endif
+ }
+
diff --git a/devel/onetbb/files/patch-test-tbbmalloc-test_malloc_compliance.cpp b/devel/onetbb/files/patch-test-tbbmalloc-test_malloc_compliance.cpp
new file mode 100644
index 000000000000..893228604321
--- /dev/null
+++ b/devel/onetbb/files/patch-test-tbbmalloc-test_malloc_compliance.cpp
@@ -0,0 +1,13 @@
+error: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'rlim_t' (aka 'long')
+
+--- test/tbbmalloc/test_malloc_compliance.cpp.orig 2020-12-08 11:00:57 UTC
++++ test/tbbmalloc/test_malloc_compliance.cpp
+@@ -91,7 +91,7 @@ void limitMem( size_t limit )
+ }
+ if (rlim.rlim_max==(rlim_t)RLIM_INFINITY)
+ rlim.rlim_cur = (limit > 0) ? limit*MByte : rlim.rlim_max;
+- else rlim.rlim_cur = (limit > 0 && limit<rlim.rlim_max) ? limit*MByte : rlim.rlim_max;
++ else rlim.rlim_cur = (limit > 0 && limit<(size_t)rlim.rlim_max) ? limit*MByte : rlim.rlim_max;
+ ret = setrlimit(RLIMIT_AS,&rlim);
+ if (0 != ret) {
+ REPORT("Can't set limits: errno %d\n", errno);
diff --git a/devel/onetbb/pkg-descr b/devel/onetbb/pkg-descr
new file mode 100644
index 000000000000..8ca892dc9389
--- /dev/null
+++ b/devel/onetbb/pkg-descr
@@ -0,0 +1,5 @@
+oneAPI Threading Building Blocks (oneTBB) lets you easily write parallel C++
+programs that take full advantage of multicore performance, that are portable,
+composable and have future-proof scalability.
+
+WWW: https://software.intel.com/oneapi/onetbb
diff --git a/devel/onetbb/pkg-plist b/devel/onetbb/pkg-plist
new file mode 100644
index 000000000000..642e39c2a4a9
--- /dev/null
+++ b/devel/onetbb/pkg-plist
@@ -0,0 +1,146 @@
+include/oneapi/tbb.h
+include/oneapi/tbb/blocked_range.h
+include/oneapi/tbb/blocked_range2d.h
+include/oneapi/tbb/blocked_range3d.h
+include/oneapi/tbb/blocked_rangeNd.h
+include/oneapi/tbb/cache_aligned_allocator.h
+include/oneapi/tbb/combinable.h
+include/oneapi/tbb/concurrent_hash_map.h
+include/oneapi/tbb/concurrent_lru_cache.h
+include/oneapi/tbb/concurrent_map.h
+include/oneapi/tbb/concurrent_priority_queue.h
+include/oneapi/tbb/concurrent_queue.h
+include/oneapi/tbb/concurrent_set.h
+include/oneapi/tbb/concurrent_unordered_map.h
+include/oneapi/tbb/concurrent_unordered_set.h
+include/oneapi/tbb/concurrent_vector.h
+include/oneapi/tbb/detail/_aggregator.h
+include/oneapi/tbb/detail/_aligned_space.h
+include/oneapi/tbb/detail/_allocator_traits.h
+include/oneapi/tbb/detail/_assert.h
+include/oneapi/tbb/detail/_concurrent_queue_base.h
+include/oneapi/tbb/detail/_concurrent_skip_list.h
+include/oneapi/tbb/detail/_concurrent_unordered_base.h
+include/oneapi/tbb/detail/_config.h
+include/oneapi/tbb/detail/_containers_helpers.h
+include/oneapi/tbb/detail/_exception.h
+include/oneapi/tbb/detail/_flow_graph_body_impl.h
+include/oneapi/tbb/detail/_flow_graph_cache_impl.h
+include/oneapi/tbb/detail/_flow_graph_impl.h
+include/oneapi/tbb/detail/_flow_graph_indexer_impl.h
+include/oneapi/tbb/detail/_flow_graph_item_buffer_impl.h
+include/oneapi/tbb/detail/_flow_graph_join_impl.h
+include/oneapi/tbb/detail/_flow_graph_node_impl.h
+include/oneapi/tbb/detail/_flow_graph_node_set_impl.h
+include/oneapi/tbb/detail/_flow_graph_nodes_deduction.h
+include/oneapi/tbb/detail/_flow_graph_tagged_buffer_impl.h
+include/oneapi/tbb/detail/_flow_graph_trace_impl.h
+include/oneapi/tbb/detail/_flow_graph_types_impl.h
+include/oneapi/tbb/detail/_hash_compare.h
+include/oneapi/tbb/detail/_machine.h
+include/oneapi/tbb/detail/_namespace_injection.h
+include/oneapi/tbb/detail/_node_handle.h
+include/oneapi/tbb/detail/_pipeline_filters.h
+include/oneapi/tbb/detail/_pipeline_filters_deduction.h
+include/oneapi/tbb/detail/_range_common.h
+include/oneapi/tbb/detail/_rtm_mutex.h
+include/oneapi/tbb/detail/_rtm_rw_mutex.h
+include/oneapi/tbb/detail/_segment_table.h
+include/oneapi/tbb/detail/_small_object_pool.h
+include/oneapi/tbb/detail/_string_resource.h
+include/oneapi/tbb/detail/_task.h
+include/oneapi/tbb/detail/_template_helpers.h
+include/oneapi/tbb/detail/_utils.h
+include/oneapi/tbb/enumerable_thread_specific.h
+include/oneapi/tbb/flow_graph.h
+include/oneapi/tbb/flow_graph_abstractions.h
+include/oneapi/tbb/global_control.h
+include/oneapi/tbb/info.h
+include/oneapi/tbb/memory_pool.h
+include/oneapi/tbb/null_mutex.h
+include/oneapi/tbb/null_rw_mutex.h
+include/oneapi/tbb/parallel_for.h
+include/oneapi/tbb/parallel_for_each.h
+include/oneapi/tbb/parallel_invoke.h
+include/oneapi/tbb/parallel_pipeline.h
+include/oneapi/tbb/parallel_reduce.h
+include/oneapi/tbb/parallel_scan.h
+include/oneapi/tbb/parallel_sort.h
+include/oneapi/tbb/partitioner.h
+include/oneapi/tbb/profiling.h
+include/oneapi/tbb/queuing_mutex.h
+include/oneapi/tbb/queuing_rw_mutex.h
+include/oneapi/tbb/scalable_allocator.h
+include/oneapi/tbb/spin_mutex.h
+include/oneapi/tbb/spin_rw_mutex.h
+include/oneapi/tbb/task.h
+include/oneapi/tbb/task_arena.h
+include/oneapi/tbb/task_group.h
+include/oneapi/tbb/task_scheduler_observer.h
+include/oneapi/tbb/tbb_allocator.h
+include/oneapi/tbb/tbbmalloc_proxy.h
+include/oneapi/tbb/tick_count.h
+include/oneapi/tbb/version.h
+include/tbb/blocked_range.h
+include/tbb/blocked_range2d.h
+include/tbb/blocked_range3d.h
+include/tbb/blocked_rangeNd.h
+include/tbb/cache_aligned_allocator.h
+include/tbb/combinable.h
+include/tbb/concurrent_hash_map.h
+include/tbb/concurrent_lru_cache.h
+include/tbb/concurrent_map.h
+include/tbb/concurrent_priority_queue.h
+include/tbb/concurrent_queue.h
+include/tbb/concurrent_set.h
+include/tbb/concurrent_unordered_map.h
+include/tbb/concurrent_unordered_set.h
+include/tbb/concurrent_vector.h
+include/tbb/enumerable_thread_specific.h
+include/tbb/flow_graph.h
+include/tbb/flow_graph_abstractions.h
+include/tbb/global_control.h
+include/tbb/info.h
+include/tbb/memory_pool.h
+include/tbb/null_mutex.h
+include/tbb/null_rw_mutex.h
+include/tbb/parallel_for.h
+include/tbb/parallel_for_each.h
+include/tbb/parallel_invoke.h
+include/tbb/parallel_pipeline.h
+include/tbb/parallel_reduce.h
+include/tbb/parallel_scan.h
+include/tbb/parallel_sort.h
+include/tbb/partitioner.h
+include/tbb/profiling.h
+include/tbb/queuing_mutex.h
+include/tbb/queuing_rw_mutex.h
+include/tbb/scalable_allocator.h
+include/tbb/spin_mutex.h
+include/tbb/spin_rw_mutex.h
+include/tbb/task.h
+include/tbb/task_arena.h
+include/tbb/task_group.h
+include/tbb/task_scheduler_observer.h
+include/tbb/tbb.h
+include/tbb/tbb_allocator.h
+include/tbb/tbbmalloc_proxy.h
+include/tbb/tick_count.h
+include/tbb/version.h
+lib/cmake/TBB/TBBConfig.cmake
+lib/cmake/TBB/TBBConfigVersion.cmake
+lib/cmake/TBB/TBBTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/TBB/TBBTargets.cmake
+lib/libtbb.so
+lib/libtbb.so.12
+lib/libtbb.so.12.1
+lib/libtbbbind_2_0.so
+lib/libtbbbind_2_0.so.3
+lib/libtbbbind_2_0.so.3.1
+lib/libtbbmalloc.so
+lib/libtbbmalloc.so.2
+lib/libtbbmalloc.so.2.1
+lib/libtbbmalloc_proxy.so
+lib/libtbbmalloc_proxy.so.2
+lib/libtbbmalloc_proxy.so.2.1
+libdata/pkgconfig/onetbb.pc