Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[tbb, pagmo2] Update TBB to 2021.5 and update pagmo2 to 2.18.0 #26284

Merged
merged 80 commits into from
Sep 23, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
233e072
[tbb] Update to 2021.3.0
ras0219-msft Sep 1, 2021
fa338f7
[tbb] Add Threads dependency
ras0219-msft Sep 2, 2021
ad58b50
[pagmo2] Update to support new TBB
ras0219-msft Sep 3, 2021
2ca52a8
[openvdb] Update to 8.1.0
ras0219-msft Sep 3, 2021
1b8b26a
[embree2] Remove from baseline -- it is no longer receiving support f…
ras0219-msft Sep 3, 2021
4c70733
[usd] Mark as unsupported
ras0219-msft Sep 15, 2021
ac412fa
[usd] Disable USD in CI due to policy https://github.com/PixarAnimati…
ras0219-msft Sep 15, 2021
5a988a4
Merge remote-tracking branch 'upstream/master' into dev/roschuma/tbb
ras0219-msft Sep 16, 2021
db3b323
Merge branch 'master' of https://github.com/Microsoft/vcpkg into dev/…
ras0219-msft Sep 24, 2021
d7d9e88
[openvdb] Bump port-version
ras0219-msft Sep 29, 2021
06e183e
Update version database
ras0219-msft Oct 1, 2021
7e3ead2
[pagmo2] Fix vcpkg.json
ras0219-msft Oct 1, 2021
b1143f6
update version
JonLiu1993 Oct 8, 2021
22bbd2a
wip update
mathisloge Feb 11, 2022
c97c3bf
versions
mathisloge Feb 11, 2022
bcb1dd3
Merge branch 'master' of github.com:microsoft/vcpkg into dev/roschuma…
vicroms Mar 14, 2022
b5d6382
[embree2] deprecate, [openvdb,usd] resolve conflicts, [tbb] update
vicroms Mar 14, 2022
a0f290a
Added libxml port.
vladimir-aubrecht Apr 7, 2022
7312990
Merge branch 'microsoft:master' into master
vladimir-aubrecht Jul 22, 2022
5956dce
Remove port version as it's initial port.
vladimir-aubrecht Jul 22, 2022
5e57eb1
Added baseline version
vladimir-aubrecht Jul 22, 2022
de6dadd
Support only for windows and static
vladimir-aubrecht Jul 22, 2022
c0a5a39
Allowed building debug version
vladimir-aubrecht Jul 22, 2022
e24db6f
update versions
vladimir-aubrecht Jul 22, 2022
5b512bb
Update ports/libxpm/portfile.cmake
vladimir-aubrecht Jul 22, 2022
aed9a79
Added new lines
vladimir-aubrecht Jul 22, 2022
8a181c2
Update ports/libxpm/vcpkg.json
vladimir-aubrecht Jul 22, 2022
3d6ee39
Update ports/libxpm/portfile.cmake
vladimir-aubrecht Jul 22, 2022
3eb53d6
Update ports/libxpm/vcpkg.json
vladimir-aubrecht Jul 22, 2022
5c1046e
Regenerated versions
vladimir-aubrecht Jul 22, 2022
1d0290b
Update ports/libxpm/vcpkg.json
vladimir-aubrecht Jul 25, 2022
282e513
Libxpm is taken from gitlab now.
vladimir-aubrecht Jul 25, 2022
01c734a
Dropped changes against master in original repo for libxpm.
vladimir-aubrecht Jul 25, 2022
76fa379
Dropped libxpm from baseline
vladimir-aubrecht Jul 25, 2022
d17623c
Dropped version for libxpm
vladimir-aubrecht Jul 25, 2022
a6edea0
Update cpuinfo
vladimir-aubrecht Jul 25, 2022
805e54a
Updated date of version
vladimir-aubrecht Jul 25, 2022
6a9ecaa
Update version database
vladimir-aubrecht Jul 25, 2022
dfb9d65
Removed support for arm32 & uwp as library is not supporting it.
vladimir-aubrecht Jul 26, 2022
4932c3d
Version regenerated
vladimir-aubrecht Jul 26, 2022
ad4216b
Update ports/cpuinfo/vcpkg.json
vladimir-aubrecht Jul 26, 2022
c35d463
Updated versions
vladimir-aubrecht Jul 26, 2022
c4269ff
Initial commit WIP
vladimir-aubrecht Aug 1, 2022
23c7880
Fixed compilation of latest stable version
vladimir-aubrecht Aug 1, 2022
cbf17c1
Merge branch 'main' into tbb
vladimir-aubrecht Aug 1, 2022
3e4ca69
Dropped comments
vladimir-aubrecht Aug 1, 2022
bbbee35
Switch from version-string to version
vladimir-aubrecht Aug 1, 2022
ce998f8
Added versions
vladimir-aubrecht Aug 1, 2022
addf160
Fixed path of cmake files for other projects
vladimir-aubrecht Aug 2, 2022
b369e73
Updated versions
vladimir-aubrecht Aug 2, 2022
5ba8a05
Merge remote-tracking branch 'origin/master' into HEAD
BillyONeal Aug 11, 2022
f76eb8e
Merge remote-tracking branch 'vladimir-aubrecht/tbb' into HEAD
BillyONeal Aug 11, 2022
b597b72
Various modernization.
BillyONeal Aug 11, 2022
4d6fea3
Merge branch 'update/tbb' of github.com:mathisloge/vcpkg into update-tbb
BillyONeal Aug 11, 2022
6dda0d4
Fully mark embree2 as deprecated.
BillyONeal Aug 13, 2022
aaa9dc0
[pagmo2] Disable -Werror
BillyONeal Aug 13, 2022
a06c4a2
[cctag] Fix finding and use of TBB.
BillyONeal Aug 13, 2022
e6cf91e
[openvdb] Baseline the static versions because they exceed FFFFFFFF i…
BillyONeal Aug 13, 2022
26d4682
Merge remote-tracking branch 'origin/master' into update-tbb
BillyONeal Aug 15, 2022
6e1bb7a
[gazebo] Apply https://github.com/osrf/gazebo/pull/3174 patch to fix …
BillyONeal Aug 16, 2022
baa5ce4
Respond to failures in https://dev.azure.com/vcpkg/public/_build/resu…
BillyONeal Aug 16, 2022
fe6c57b
Merge remote-tracking branch 'origin/master' into update-tbb
BillyONeal Aug 16, 2022
fff15f3
Merge remote-tracking branch 'origin/master' into update-tbb
BillyONeal Aug 17, 2022
b658429
[pagmo2] Add license. See https://github.com/esa/pagmo2/blob/19d774fb…
BillyONeal Aug 17, 2022
34847cc
[tbb] Add license.
BillyONeal Aug 17, 2022
d5ac766
[embree2] Add "license".
BillyONeal Aug 17, 2022
64a44bf
Merge remote-tracking branch 'origin/master' into HEAD
BillyONeal Aug 18, 2022
37cb40e
Merge remote-tracking branch 'origin/master' into update-tbb
BillyONeal Aug 19, 2022
1e919a9
[tbb] Use vcpkg_cmake_config_fixup and fix version as requested by @L…
BillyONeal Aug 19, 2022
29f1044
[usd] Add usd is known broken message.
BillyONeal Aug 19, 2022
a72770a
[embree2] Remove completely.
BillyONeal Aug 19, 2022
871162c
Fix version database.
BillyONeal Aug 19, 2022
1445ded
Fix usd version database.
BillyONeal Aug 22, 2022
ebb1ddd
Fix wrong case on Linux.
BillyONeal Aug 22, 2022
cec55d4
Lowercase the tbb directory to get to their configs.
BillyONeal Aug 22, 2022
1f73368
Merge remote-tracking branch 'origin/master' into update-tbb
BillyONeal Sep 19, 2022
d82fc62
[cctag] minimize patches
BillyONeal Sep 19, 2022
39467db
[tbb] Apply supports expression fix suggested in https://github.com/m…
BillyONeal Sep 19, 2022
817cbd0
[usd] Add note about upstream issue.
BillyONeal Sep 19, 2022
006c899
[pagmo2] Minimize patch.
BillyONeal Sep 19, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions ports/cctag/0001-fix-osx.patch
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
diff --git a/src/cctag/utils/Exceptions.hpp b/src/cctag/utils/Exceptions.hpp
index 094d278..8647f76 100644
--- a/src/cctag/utils/Exceptions.hpp
+++ b/src/cctag/utils/Exceptions.hpp
@@ -7,7 +7,7 @@
*/
@@ -8,6 +8,7 @@
#ifndef _CCTAG_EXCEPTIONS_HPP_
#define _CCTAG_EXCEPTIONS_HPP_
-
+#define _GNU_SOURCE
#include <boost/exception/diagnostic_information.hpp>
#include <boost/exception/errinfo_file_name.hpp>
Expand Down
173 changes: 173 additions & 0 deletions ports/cctag/0002-find-tbb.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,173 @@
diff --git a/cmake/Config.cmake.in b/cmake/Config.cmake.in
index c5a82c0..3ce4719 100644
--- a/cmake/Config.cmake.in
+++ b/cmake/Config.cmake.in
@@ -42,6 +42,7 @@
include(CMakeFindDependencyMacro)

set(OpenCV_DIR @OpenCV_DIR@)
+find_dependency(TBB)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should match the find_package() in the project, minus REQUIRED. However, I think it would be better to delete FindTBB.cmake entirely than to patch every consumption site to use CONFIG.

Suggested change
+find_dependency(TBB)
+find_dependency(TBB CONFIG)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We were already deleting FindTBB.cmake so I just removed this part of the patch.

find_dependency(OpenCV)
find_dependency(Eigen3 @CCTAG_EIGEN_REQUIRED_VERSION@)
find_dependency(Boost 1.66 REQUIRED COMPONENTS @BOOST_REQUIRED_COMPONENTS@)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 7b64b83..5398ed4 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -176,7 +176,8 @@ if(CCTAG_WITH_CUDA)
${OpenCV_LIBS}
Boost::date_time Boost::chrono Boost::thread Boost::serialization Boost::system Boost::filesystem Boost::atomic Boost::program_options Boost::timer Boost::math_c99
Eigen3::Eigen
- ${TBB_LIBRARIES} ${CUDA_CUDADEVRT_LIBRARY})
+ TBB::tbb
+ ${CUDA_CUDADEVRT_LIBRARY})

if(NOT MSVC)
target_link_libraries(CCTag pthread dl)
@@ -184,7 +185,7 @@ if(CCTAG_WITH_CUDA)

target_compile_definitions(CCTag
PUBLIC -DCCTAG_WITH_CUDA
- PRIVATE ${TBB_DEFINITIONS})
+)

if(CCTAG_HAVE_SHFL_DOWN_SYNC)
target_compile_definitions(CCTag PRIVATE "-DCCTAG_HAVE_SHFL_DOWN_SYNC")
@@ -220,16 +221,13 @@ else() # without CUDA
# get_target_property(testprop CCTag INTERFACE_INCLUDE_DIRECTORIES )
# message(STATUS "testprop: ${testprop}")

- target_compile_definitions(CCTag
- PRIVATE ${TBB_DEFINITIONS})

target_link_libraries(CCTag
PUBLIC
${OpenCV_LIBS}
Eigen3::Eigen
Boost::atomic Boost::chrono Boost::date_time Boost::filesystem Boost::serialization Boost::system Boost::thread Boost::timer Boost::math_c99
- PRIVATE
- ${TBB_LIBRARIES})
+ TBB::tbb)

if(NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
target_link_libraries(CCTag PRIVATE pthread dl)
diff --git a/src/applications/CMakeLists.txt b/src/applications/CMakeLists.txt
index 506d19b..c7154fc 100644
--- a/src/applications/CMakeLists.txt
+++ b/src/applications/CMakeLists.txt
@@ -86,7 +86,7 @@ target_include_directories(detection PUBLIC
)
target_link_libraries(detection PUBLIC
CCTag::CCTag
- ${TBB_LIBRARIES}
+ TBB::tbb
${OpenCV_LIBS}
Boost::filesystem Boost::program_options Boost::timer
)
diff --git a/src/cctag/Detection.cpp b/src/cctag/Detection.cpp
index 21c47bf..a800fbc 100644
--- a/src/cctag/Detection.cpp
+++ b/src/cctag/Detection.cpp
@@ -44,6 +44,7 @@
#include <list>
#include <utility>
#include <memory>
+#include <mutex>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. I don't think the change is big enough to trigger licensing concerns, and
  2. fetching additional content like that is worse UX, and
  3. this change isn't exactly that because that was made against a different branch

I think we should be doing things like that only when the patch wouldn't be de-minimis.

#ifdef CCTAG_WITH_CUDA
#include <cctag/cuda/cctag_cuda_runtime.h> // only for debugging
#endif // CCTAG_WITH_CUDA
@@ -71,7 +72,7 @@ static void constructFlowComponentFromSeed(
std::vector<CandidatePtr> & vCandidateLoopOne,
const Parameters & params)
{
- static tbb::mutex G_SortMutex;
+ static std::mutex G_SortMutex;

assert( seed );
// Check if the seed has already been processed, i.e. belongs to an already
@@ -102,7 +103,7 @@ static void constructFlowComponentFromSeed(
}

{
- tbb::mutex::scoped_lock lock(G_SortMutex);
+ std::lock_guard<std::mutex> lock(G_SortMutex);
candidate->_averageReceivedVote = (float) (nReceivedVote*nReceivedVote) / (float) nVotedPoints;
auto it = std::lower_bound(vCandidateLoopOne.begin(), vCandidateLoopOne.end(), candidate,
[](const CandidatePtr& c1, const CandidatePtr& c2) { return c1->_averageReceivedVote > c2->_averageReceivedVote; });
@@ -119,8 +120,8 @@ static void completeFlowComponent(
std::size_t runId,
const Parameters & params)
{
- static tbb::spin_mutex G_UpdateMutex;
- static tbb::mutex G_InsertMutex;
+ static std::mutex G_UpdateMutex;
+ static std::mutex G_InsertMutex;

try
{
@@ -171,7 +172,7 @@ static void completeFlowComponent(
if (nSegmentCommon == -1)
{
{
- tbb::spin_mutex::scoped_lock lock(G_UpdateMutex);
+ std::lock_guard<std::mutex> lock(G_UpdateMutex);
nLabel = nSegmentOut;
++nSegmentOut;
}
@@ -239,7 +240,7 @@ static void completeFlowComponent(
}

{
- tbb::mutex::scoped_lock lock(G_InsertMutex);
+ std::lock_guard<std::mutex> lock(G_InsertMutex);
vCandidateLoopTwo.push_back(candidate);
}

@@ -384,7 +385,7 @@ static void cctagDetectionFromEdgesLoopTwoIteration(
float scale,
const Parameters& params)
{
- static tbb::mutex G_InsertMutex;
+ static std::mutex G_InsertMutex;

const Candidate& candidate = vCandidateLoopTwo[iCandidate];

@@ -543,7 +544,7 @@ static void cctagDetectionFromEdgesLoopTwoIteration(
#endif

{
- tbb::mutex::scoped_lock lock(G_InsertMutex);
+ std::lock_guard<std::mutex> lock(G_InsertMutex);
markers.push_back( tag ); // markers takes responsibility for delete
}
#ifdef CCTAG_SERIALIZE
diff --git a/src/cctag/Identification.cpp b/src/cctag/Identification.cpp
index 15c9d9b..99b616a 100644
--- a/src/cctag/Identification.cpp
+++ b/src/cctag/Identification.cpp
@@ -29,6 +29,7 @@

#include <cmath>
#include <vector>
+#include <mutex>

#include <tbb/tbb.h>

@@ -71,7 +72,7 @@ bool orazioDistanceRobust(
#endif // GRIFF_DEBUG

const size_t cut_count = cuts.size();
- static tbb::mutex vscore_mutex;
+ static std::mutex vscore_mutex;

tbb::parallel_for(size_t(0), cut_count, [&](size_t i) {
const cctag::ImageCut& cut = cuts[i];
@@ -183,7 +184,7 @@ bool orazioDistanceRobust(
#endif // GRIFF_DEBUG

{
- tbb::mutex::scoped_lock lock(vscore_mutex);
+ std::lock_guard<std::mutex> lock(vscore_mutex);
vScore[idSet.front().first].push_back(idSet.front().second);
}
}
5 changes: 4 additions & 1 deletion ports/cctag/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,19 @@ vcpkg_from_github(
HEAD_REF develop
PATCHES
0001-fix-osx.patch
0002-find-tbb.patch # Includes changes similar to https://github.com/alicevision/CCTag/pull/178/
)

file(REMOVE "${SOURCE_PATH}/cmake/FindTBB.cmake" "${SOURCE_PATH}/src/applications/cmake/FindTBB.cmake")

vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
cuda CCTAG_WITH_CUDA
apps CCTAG_BUILD_APPS
)

if("cuda" IN_LIST FEATURES)
include(${CURRENT_INSTALLED_DIR}/share/cuda/vcpkg_find_cuda.cmake)
include("${CURRENT_INSTALLED_DIR}/share/cuda/vcpkg_find_cuda.cmake")
vcpkg_find_cuda(OUT_CUDA_TOOLKIT_ROOT CUDA_TOOLKIT_ROOT)
message(STATUS "CUDA_TOOLKIT_ROOT ${CUDA_TOOLKIT_ROOT}")
endif()
Expand Down
2 changes: 1 addition & 1 deletion ports/cctag/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "cctag",
"version-semver": "1.0.2",
"port-version": 1,
"port-version": 2,
"maintainers": "[email protected]",
"description": "Computer vision library for detecting CCTag markers made up of concentric circles",
"homepage": "https://github.com/alicevision/CCTag",
Expand Down
14 changes: 0 additions & 14 deletions ports/embree2/cmake_policy.patch

This file was deleted.

53 changes: 0 additions & 53 deletions ports/embree2/portfile.cmake

This file was deleted.

15 changes: 0 additions & 15 deletions ports/embree2/vcpkg.json

This file was deleted.

Loading