Skip to content

Commit

Permalink
[tbb, pagmo2] Update TBB to 2021.5 and update pagmo2 to 2.18.0 (micro…
Browse files Browse the repository at this point in the history
…soft#26284)

* [tbb] Update to 2021.3.0

* [tbb] Add Threads dependency

* [pagmo2] Update to support new TBB

* [openvdb] Update to 8.1.0

* [embree2] Remove from baseline -- it is no longer receiving support from upstream

* [usd] Mark as unsupported

* [usd] Disable USD in CI due to policy PixarAnimationStudios/OpenUSD#1600

* [openvdb] Bump port-version

* Update version database

* [pagmo2] Fix vcpkg.json

* update version

* wip update

* versions

* [embree2] deprecate, [openvdb,usd] resolve conflicts, [tbb] update

* Added libxml port.

* Remove port version as it's initial port.

* Added baseline version

* Support only for windows and static

* Allowed building debug version

* update versions

* Update ports/libxpm/portfile.cmake

Co-authored-by: Thomas1664 <[email protected]>

* Added new lines

* Update ports/libxpm/vcpkg.json

Co-authored-by: Thomas1664 <[email protected]>

* Update ports/libxpm/portfile.cmake

Co-authored-by: Thomas1664 <[email protected]>

* Update ports/libxpm/vcpkg.json

Co-authored-by: Thomas1664 <[email protected]>

* Regenerated versions

* Update ports/libxpm/vcpkg.json

Co-authored-by: JonLiu1993 <[email protected]>

* Libxpm is taken from gitlab now.

* Dropped changes against master in original repo for libxpm.

* Dropped libxpm from baseline

* Dropped version for libxpm

* Update cpuinfo

* Updated date of version

* Update version database

* Removed support for arm32 & uwp as library is not supporting it.

* Version regenerated

* Update ports/cpuinfo/vcpkg.json

Co-authored-by: Alexander Neumann <[email protected]>

* Updated versions

* Initial commit WIP

* Fixed compilation of latest stable version

* Dropped comments

* Switch from version-string to version

* Added versions

* Fixed path of cmake files for other projects

* Updated versions

* Various modernization.

* Fully mark embree2 as deprecated.

* [pagmo2] Disable -Werror

* [cctag] Fix finding and use of TBB.

* [openvdb] Baseline the static versions because they exceed FFFFFFFF in size, and I'm not sure if that's fixable....

* [gazebo] Apply gazebosim/gazebo-classic#3174 patch to fix TBB.

* Respond to failures in https://dev.azure.com/vcpkg/public/_build/results?buildId=76586

* [pagmo2] Add license. See https://github.com/esa/pagmo2/blob/19d774fbb6128124305225803f8c1ad9e2f95c8c/src/bfe.cpp#L5-L27

* [tbb] Add license.

* [embree2] Add "license".

* [tbb] Use vcpkg_cmake_config_fixup and fix version as requested by @LilyWangLL

* [usd] Add usd is known broken message.

* [embree2] Remove completely.

* Fix version database.

* Fix usd version database.

* Fix wrong case on Linux.

* Lowercase the tbb directory to get to their configs.

* [cctag] minimize patches

* [tbb] Apply supports expression fix suggested in microsoft#26284 (comment)

* [usd] Add note about upstream issue.

* [pagmo2] Minimize patch.

Co-authored-by: Robert Schumacher <[email protected]>
Co-authored-by: Jonliu1993 <[email protected]>
Co-authored-by: Mathis Logemann <[email protected]>
Co-authored-by: Victor Romero <[email protected]>
Co-authored-by: Vladimír Aubrecht <[email protected]>
Co-authored-by: Thomas1664 <[email protected]>
Co-authored-by: JonLiu1993 <[email protected]>
Co-authored-by: Alexander Neumann <[email protected]>
  • Loading branch information
9 people authored Sep 23, 2022
1 parent 20630e6 commit 5f6dfcb
Show file tree
Hide file tree
Showing 32 changed files with 790 additions and 365 deletions.
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)
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>
#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

0 comments on commit 5f6dfcb

Please sign in to comment.