@@ -6,112 +6,27 @@ if (WIN32 AND NOT ARM)
6
6
endif ()
7
7
8
8
set (tbb_ver "tbb44_20160128oss" )
9
- set (tbb_url "http://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb44_20160128oss_src_0.tgz" )
10
- set (tbb_md5 "9d8a4cdf43496f1b3f7c473a5248e5cc" )
9
+ set (tbb_filename "4.4.3.tar.gz" )
10
+ set (tbb_subdir "tbb-4.4.3" )
11
+ set (tbb_md5 "8e7200af3ac16e91a0d1535c606a485c" )
11
12
set (tbb_version_file "version_string.ver" )
12
13
ocv_warnings_disable (CMAKE_CXX_FLAGS /wd4702 )
13
14
ocv_warnings_disable (CMAKE_CXX_FLAGS -Wshadow )
14
15
15
- # 4.1 update 4 - The first release that supports Windows RT. Hangs on some Android devices
16
- #set(tbb_ver "tbb41_20130613oss")
17
- #set(tbb_url "http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb41_20130613oss_src.tgz")
18
- #set(tbb_md5 "108c8c1e481b0aaea61878289eb28b6a")
19
- #set(tbb_version_file "version_string.ver")
20
- #ocv_warnings_disable(CMAKE_CXX_FLAGS /wd4702)
21
-
22
- # 4.1 update 2 - works fine
23
- #set(tbb_ver "tbb41_20130116oss")
24
- #set(tbb_url "http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb41_20130116oss_src.tgz")
25
- #set(tbb_md5 "3809790e1001a1b32d59c9fee590ee85")
26
- #set(tbb_version_file "version_string.ver")
27
- #ocv_warnings_disable(CMAKE_CXX_FLAGS -Wshadow)
28
-
29
- # 4.1 update 3 dev - Hangs on some Android devices
30
- #set(tbb_ver "tbb41_20130401oss")
31
- #set(tbb_url "http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb41_20130401oss_src.tgz")
32
- #set(tbb_md5 "f2f591a0d2ca8f801e221ce7d9ea84bb")
33
- #set(tbb_version_file "version_string.ver")
34
- #ocv_warnings_disable(CMAKE_CXX_FLAGS -Wshadow)
35
-
36
- # 4.1 update 2 - works fine
37
- #set(tbb_ver "tbb41_20130116oss")
38
- #set(tbb_url "http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb41_20130116oss_src.tgz")
39
- #set(tbb_md5 "3809790e1001a1b32d59c9fee590ee85")
40
- #set(tbb_version_file "version_string.ver")
41
- #ocv_warnings_disable(CMAKE_CXX_FLAGS -Wshadow)
42
-
43
- # 4.1 update 1 - works fine
44
- #set(tbb_ver "tbb41_20121003oss")
45
- #set(tbb_url "http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb41_20121003oss_src.tgz")
46
- #set(tbb_md5 "2a684fefb855d2d0318d1ef09afa75ff")
47
- #set(tbb_version_file "version_string.ver")
48
-
49
- # 4.1 - works fine
50
- #set(tbb_ver "tbb41_20120718oss")
51
- #set(tbb_url "http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb41_20120718oss_src.tgz")
52
- #set(tbb_md5 "31b9ec300f3d09da2504d5d882788dd4")
53
- #set(tbb_version_file "version_string.ver")
54
-
55
- # 4.0 update 5 - works fine
56
- #set(tbb_ver "tbb40_20120613oss")
57
- #set(tbb_url "http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb40_20120613oss_src.tgz")
58
- #set(tbb_md5 "da01ed74944ec5950cfae3476901a172")
59
- #set(tbb_version_file "version_string.ver")
60
-
61
- # 4.0 update 4 - works fine
62
- #set(tbb_ver "tbb40_20120408oss")
63
- #set(tbb_url "http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb40_20120408oss_src.tgz")
64
- #set(tbb_md5 "734b356da7fe0ed308741f3e6018251e")
65
- #set(tbb_version_file "version_string.ver")
66
-
67
- # 4.0 update 3 - build broken
68
- #set(tbb_ver "tbb40_20120201oss")
69
- #set(tbb_url "http://threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb40_20120201oss_src.tgz")
70
- #set(tbb_md5 "4669e7d4adee018de7a7b8b972987218")
71
- #set(tbb_version_file "version_string.tmp")
72
-
73
- set (tbb_tarball "${CMAKE_CURRENT_SOURCE_DIR} /${tbb_ver} _src.tgz" )
74
- set (tbb_src_dir "${CMAKE_CURRENT_BINARY_DIR} /${tbb_ver} " )
75
-
76
- if (EXISTS "${tbb_tarball} " )
77
- file (MD5 "${tbb_tarball} " tbb_local_md5 )
78
- if (NOT tbb_local_md5 STREQUAL tbb_md5 )
79
- message (WARNING "Local copy of TBB source tarball has invalid MD5 hash: ${tbb_local_md5} (expected: ${tbb_md5} )" )
80
- file (REMOVE "${tbb_tarball} " )
81
- if (EXISTS "${CMAKE_CURRENT_BINARY_DIR} /${tbb_ver} " )
82
- file (REMOVE_RECURSE "${CMAKE_CURRENT_BINARY_DIR} /${tbb_ver} " )
83
- endif ()
84
- endif ()
85
- endif ()
86
-
87
- if (NOT EXISTS "${tbb_tarball} " )
88
- message (STATUS "Downloading ${tbb_ver} _src.tgz" )
89
- file (DOWNLOAD "${tbb_url} " "${tbb_tarball} " TIMEOUT 600 STATUS __statvar )
90
- if (NOT __statvar EQUAL 0 )
91
- message (FATAL_ERROR "Failed to download TBB sources (${__statvar} ): ${tbb_url} " )
92
- endif ()
93
- file (MD5 "${tbb_tarball} " tbb_local_md5 )
94
- if (NOT tbb_local_md5 STREQUAL tbb_md5 )
95
- file (REMOVE "${tbb_tarball} " )
96
- message (FATAL_ERROR "Downloaded TBB source tarball has invalid MD5 hash: ${tbb_local_md5} (expected: ${tbb_md5} )" )
97
- endif ()
98
-
99
- if (EXISTS "${tbb_src_dir} " )
100
- file (REMOVE_RECURSE "${tbb_src_dir} " )
101
- endif ()
102
- endif ()
103
-
104
- # untar TBB sources
105
- if (NOT EXISTS "${tbb_src_dir} " )
106
- message (STATUS "Unpacking ${tbb_ver} _src.tgz to ${tbb_src_dir} " )
107
- execute_process (COMMAND ${CMAKE_COMMAND} -E tar xz "${tbb_tarball} "
108
- WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR} "
109
- RESULT_VARIABLE tbb_untar_RESULT )
110
-
111
- if (NOT tbb_untar_RESULT EQUAL 0 OR NOT EXISTS "${tbb_src_dir} " )
112
- message (FATAL_ERROR "Failed to unpack TBB sources from ${tbb_tarball} to ${tbb_src_dir} with error ${tbb_untar_RESULT} " )
113
- endif ()
16
+ set (tbb_src_dir "${OpenCV_BINARY_DIR} /3rdparty/tbb" )
17
+ ocv_download (FILENAME ${tbb_filename}
18
+ HASH ${tbb_md5}
19
+ URL
20
+ "${OPENCV_TBB_URL} "
21
+ "$ENV{OPENCV_TBB_URL} "
22
+ "https://github.com/01org/tbb/archive/"
23
+ DESTINATION_DIR ${tbb_src_dir}
24
+ STATUS res
25
+ UNPACK RELATIVE_URL )
26
+ if (NOT res )
27
+ return ()
114
28
endif ()
29
+ set (tbb_src_dir "${tbb_src_dir} /${tbb_subdir} " )
115
30
116
31
ocv_include_directories ("${tbb_src_dir} /include"
117
32
"${tbb_src_dir} /src/"
0 commit comments