summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntonio Rojas2024-01-06 13:58:55 +0100
committerAntonio Rojas2024-01-06 13:58:55 +0100
commit44c93fceb420df3bfc943be6bbf6b4a44e1a884f (patch)
treeb665c338d707c84aba9d638f7c98be508ae54b31
parent4336708eaae9687425f0cb6da50f0e4cb9736066 (diff)
downloadaur-44c93fceb420df3bfc943be6bbf6b4a44e1a884f.tar.gz
upgpkg: 3.2.0-1: opencv 4.9 rebuild
-rw-r--r--FindClp.cmake66
-rw-r--r--FindCoinUtils.cmake64
-rw-r--r--FindOsi.cmake64
-rw-r--r--PKGBUILD86
-rw-r--r--cmake_cxx_std_14.patch12
-rw-r--r--fix-computeUncertainty-build.patch50
-rw-r--r--gcc-13.patch24
-rw-r--r--iomanip.patch48
-rw-r--r--isnormal.patch32
-rw-r--r--openexr3.patch309
10 files changed, 268 insertions, 487 deletions
diff --git a/FindClp.cmake b/FindClp.cmake
new file mode 100644
index 000000000000..91707625e5e3
--- /dev/null
+++ b/FindClp.cmake
@@ -0,0 +1,66 @@
+###########################################################
+# Find Clp Library
+#----------------------------------------------------------
+
+find_path(CLP_DIR ClpConfig.h
+ HINTS "${CLP_ROOT}" "$ENV{CLP_ROOT}" "${CLP_INCLUDE_DIR_HINTS}"
+ PATHS "$ENV{PROGRAMFILES}/Clp" "$ENV{PROGRAMW6432}/Clp" "/usr" "/usr/local"
+ PATH_SUFFIXES Clp
+ DOC "Root directory of CLP includes")
+
+##====================================================
+## Include CLP library
+##----------------------------------------------------
+if(EXISTS "${CLP_DIR}" AND NOT "${CLP_DIR}" STREQUAL "")
+ set(CLP_FOUND TRUE)
+ set(CLP_INCLUDE_DIRS ${CLP_DIR})
+ set(CLP_DIR "${CLP_DIR}" CACHE PATH "" FORCE)
+ mark_as_advanced(CLP_DIR)
+
+ # Extract Clp version from ClpConfig.h
+ set(CLP_VERSION_FILE ${CLP_INCLUDE_DIRS}/ClpConfig.h)
+ # Extract Clp version from alternative config_clp_default.h
+ if (EXISTS ${CLP_INCLUDE_DIRS}/config_clp_default.h)
+ set(CLP_VERSION_FILE ${CLP_INCLUDE_DIRS}/config_clp_default.h)
+ endif()
+ if(NOT EXISTS ${CLP_VERSION_FILE})
+ CLP_REPORT_NOT_FOUND(
+ "Could not find file: ${CLP_VERSION_FILE} "
+ "containing version information in Clp install located at: "
+ "${CLP_INCLUDE_DIRS}.")
+ else (NOT EXISTS ${CLP_VERSION_FILE})
+ file(READ ${CLP_VERSION_FILE} CLP_VERSION_FILE_CONTENTS)
+ string(REGEX MATCH "#define CLP_VERSION_MAJOR [0-9]+"
+ CLP_VERSION_MAJOR "${CLP_VERSION_FILE_CONTENTS}")
+ string(REGEX REPLACE "#define CLP_VERSION_MAJOR ([0-9]+)" "\\1"
+ CLP_VERSION_MAJOR "${CLP_VERSION_MAJOR}")
+ string(REGEX MATCH "#define CLP_VERSION_MINOR [0-9]+"
+ CLP_VERSION_MINOR "${CLP_VERSION_FILE_CONTENTS}")
+ string(REGEX REPLACE "#define CLP_VERSION_MINOR ([0-9]+)" "\\1"
+ CLP_VERSION_MINOR "${CLP_VERSION_MINOR}")
+ string(REGEX MATCH "#define CLP_VERSION_RELEASE [0-9]+"
+ CLP_VERSION_RELEASE "${CLP_VERSION_FILE_CONTENTS}")
+ string(REGEX REPLACE "#define CLP_VERSION_RELEASE ([0-9]+)" "\\1"
+ CLP_VERSION_RELEASE "${CLP_VERSION_RELEASE}")
+ set(CLP_VERSION "${CLP_VERSION_MAJOR}.${CLP_VERSION_MINOR}.${CLP_VERSION_RELEASE}")
+ endif (NOT EXISTS ${CLP_VERSION_FILE})
+ set(CLP_INCLUDE_DIR ${CLP_DIR})
+
+ find_library(CLP_LIBRARY NAMES Clp)
+ find_library(CLPSOLVER_LIBRARY NAMES ClpSolver)
+ find_library(OSICLP_LIBRARY NAMES OsiClp)
+
+ # locate Clp libraries
+ if(DEFINED CLP_LIBRARY AND DEFINED CLPSOLVER_LIBRARY AND DEFINED OSICLP_LIBRARY)
+ set(CLP_LIBRARIES ${CLP_LIBRARY} ${CLPSOLVER_LIBRARY} ${OSICLP_LIBRARY})
+ endif()
+
+ message(STATUS "Clp ${CLP_VERSION} found (include: ${CLP_INCLUDE_DIRS})")
+else()
+ message(FATAL_ERROR "You are attempting to build without Clp. "
+ "Please use cmake variable -DCLP_INCLUDE_DIR_HINTS:STRING=\"PATH\" "
+ "or CLP_INCLUDE_DIR_HINTS env. variable to a valid Clp path. "
+ "Or install last Clp version.")
+ package_report_not_found(CLP "Clp cannot be found")
+endif()
+##====================================================
diff --git a/FindCoinUtils.cmake b/FindCoinUtils.cmake
new file mode 100644
index 000000000000..6792a45844ac
--- /dev/null
+++ b/FindCoinUtils.cmake
@@ -0,0 +1,64 @@
+###########################################################
+# Find CoinUtils Library
+#----------------------------------------------------------
+
+find_path(COINUTILS_DIR CoinUtilsConfig.h
+ HINTS "${COINUTILS_ROOT}" "$ENV{COINUTILS_ROOT}" "${COINUTILS_INCLUDE_DIR_HINTS}"
+ PATHS "$ENV{PROGRAMFILES}/CoinUtils" "$ENV{PROGRAMW6432}/CoinUtils" "/usr" "/usr/local"
+ PATH_SUFFIXES CoinUtils
+ DOC "Root directory of COINUTILS includes")
+
+##====================================================
+## Include COINUTILS library
+##----------------------------------------------------
+if(EXISTS "${COINUTILS_DIR}" AND NOT "${COINUTILS_DIR}" STREQUAL "")
+ set(COINUTILS_FOUND TRUE)
+ set(COINUTILS_INCLUDE_DIRS ${COINUTILS_DIR})
+ set(COINUTILS_DIR "${COINUTILS_DIR}" CACHE PATH "" FORCE)
+ mark_as_advanced(COINUTILS_DIR)
+
+ # Extract CoinUtils version from CoinUtilsConfig.h
+ set(COINUTILS_VERSION_FILE ${COINUTILS_INCLUDE_DIRS}/CoinUtilsConfig.h)
+ # Extract CoinUtils version from alternative config_coinutils_default.h
+ if(EXISTS ${COINUTILS_INCLUDE_DIRS}/config_coinutils_default.h)
+ set(COINUTILS_VERSION_FILE ${COINUTILS_INCLUDE_DIRS}/config_coinutils_default.h)
+ endif()
+ if(NOT EXISTS ${COINUTILS_VERSION_FILE})
+ COINUTILS_REPORT_NOT_FOUND(
+ "Could not find file: ${COINUTILS_VERSION_FILE} "
+ "containing version information in CoinUtils install located at: "
+ "${COINUTILS_INCLUDE_DIRS}.")
+ else (NOT EXISTS ${COINUTILS_VERSION_FILE})
+ file(READ ${COINUTILS_VERSION_FILE} COINUTILS_VERSION_FILE_CONTENTS)
+ string(REGEX MATCH "#define COINUTILS_VERSION_MAJOR [0-9]+"
+ COINUTILS_VERSION_MAJOR "${COINUTILS_VERSION_FILE_CONTENTS}")
+ string(REGEX REPLACE "#define COINUTILS_VERSION_MAJOR ([0-9]+)" "\\1"
+ COINUTILS_VERSION_MAJOR "${COINUTILS_VERSION_MAJOR}")
+ string(REGEX MATCH "#define COINUTILS_VERSION_MINOR [0-9]+"
+ COINUTILS_VERSION_MINOR "${COINUTILS_VERSION_FILE_CONTENTS}")
+ string(REGEX REPLACE "#define COINUTILS_VERSION_MINOR ([0-9]+)" "\\1"
+ COINUTILS_VERSION_MINOR "${COINUTILS_VERSION_MINOR}")
+ string(REGEX MATCH "#define COINUTILS_VERSION_RELEASE [0-9]+"
+ COINUTILS_VERSION_RELEASE "${COINUTILS_VERSION_FILE_CONTENTS}")
+ string(REGEX REPLACE "#define COINUTILS_VERSION_RELEASE ([0-9]+)" "\\1"
+ COINUTILS_VERSION_RELEASE "${COINUTILS_VERSION_RELEASE}")
+ set(COINUTILS_VERSION "${COINUTILS_VERSION_MAJOR}.${COINUTILS_VERSION_MINOR}.${COINUTILS_VERSION_RELEASE}")
+ endif(NOT EXISTS ${COINUTILS_VERSION_FILE})
+ set(COINUTILS_INCLUDE_DIR ${COINUTILS_DIR})
+
+ find_library(COINUTILS_LIBRARY NAMES CoinUtils)
+
+ # locate CoinUtils libraries
+ if(DEFINED COINUTILS_LIBRARY)
+ set(COINUTILS_LIBRARIES ${COINUTILS_LIBRARY})
+ endif()
+
+ message(STATUS "CoinUtils ${COINUTILS_VERSION} found (include: ${COINUTILS_INCLUDE_DIRS})")
+else()
+ message(FATAL_ERROR "You are attempting to build without CoinUtils. "
+ "Please use cmake variable -DCOINUTILS_INCLUDE_DIR_HINTS:STRING=\"PATH\" "
+ "or COINUTILS_INCLUDE_DIR_HINTS env. variable to a valid CoinUtils path. "
+ "Or install last CoinUtils version.")
+ package_report_not_found(COINUTILS "CoinUtils cannot be found")
+endif()
+##====================================================
diff --git a/FindOsi.cmake b/FindOsi.cmake
new file mode 100644
index 000000000000..318f917d7d3c
--- /dev/null
+++ b/FindOsi.cmake
@@ -0,0 +1,64 @@
+###########################################################
+# Find Osi Library
+#----------------------------------------------------------
+
+find_path(OSI_DIR OsiConfig.h
+ HINTS "${OSI_ROOT}" "$ENV{OSI_ROOT}" "${OSI_INCLUDE_DIR_HINTS}"
+ PATHS "$ENV{PROGRAMFILES}/Osi" "$ENV{PROGRAMW6432}/Osi" "/usr" "/usr/local"
+ PATH_SUFFIXES Osi
+ DOC "Root directory of OSI includes")
+
+##====================================================
+## Include OSI library
+##----------------------------------------------------
+if(EXISTS "${OSI_DIR}" AND NOT "${OSI_DIR}" STREQUAL "")
+ set(OSI_FOUND TRUE)
+ set(OSI_INCLUDE_DIRS ${OSI_DIR})
+ set(OSI_DIR "${OSI_DIR}" CACHE PATH "" FORCE)
+ mark_as_advanced(OSI_DIR)
+
+ # Extract Osi version from OsiConfig.h
+ set(OSI_VERSION_FILE ${OSI_INCLUDE_DIRS}/OsiConfig.h)
+ # Extract Osi version from alternative config_osi_default.h
+ if(EXISTS ${OSI_INCLUDE_DIRS}/config_osi_default.h)
+ set(OSI_VERSION_FILE ${OSI_INCLUDE_DIRS}/config_osi_default.h)
+ endif()
+ if(NOT EXISTS ${OSI_VERSION_FILE})
+ OSI_REPORT_NOT_FOUND(
+ "Could not find file: ${OSI_VERSION_FILE} "
+ "containing version information in Osi install located at: "
+ "${OSI_INCLUDE_DIRS}.")
+ else(NOT EXISTS ${OSI_VERSION_FILE})
+ file(READ ${OSI_VERSION_FILE} OSI_VERSION_FILE_CONTENTS)
+ string(REGEX MATCH "#define OSI_VERSION_MAJOR [0-9]+"
+ OSI_VERSION_MAJOR "${OSI_VERSION_FILE_CONTENTS}")
+ string(REGEX REPLACE "#define OSI_VERSION_MAJOR ([0-9]+)" "\\1"
+ OSI_VERSION_MAJOR "${OSI_VERSION_MAJOR}")
+ string(REGEX MATCH "#define OSI_VERSION_MINOR [0-9]+"
+ OSI_VERSION_MINOR "${OSI_VERSION_FILE_CONTENTS}")
+ string(REGEX REPLACE "#define OSI_VERSION_MINOR ([0-9]+)" "\\1"
+ OSI_VERSION_MINOR "${OSI_VERSION_MINOR}")
+ string(REGEX MATCH "#define OSI_VERSION_RELEASE [0-9]+"
+ OSI_VERSION_RELEASE "${OSI_VERSION_FILE_CONTENTS}")
+ string(REGEX REPLACE "#define OSI_VERSION_RELEASE ([0-9]+)" "\\1"
+ OSI_VERSION_RELEASE "${OSI_VERSION_RELEASE}")
+ set(OSI_VERSION "${OSI_VERSION_MAJOR}.${OSI_VERSION_MINOR}.${OSI_VERSION_RELEASE}")
+ endif(NOT EXISTS ${OSI_VERSION_FILE})
+ set(OSI_INCLUDE_DIR ${OSI_DIR})
+
+ find_library(OSI_LIBRARY NAMES Osi)
+
+ # locate Osi libraries
+ if(DEFINED OSI_LIBRARY)
+ set(OSI_LIBRARIES ${OSI_LIBRARY})
+ endif()
+
+ message(STATUS "Osi ${OSI_VERSION} found (include: ${OSI_INCLUDE_DIRS})")
+else()
+ message(FATAL_ERROR "You are attempting to build without Osi. "
+ "Please use cmake variable -DOSI_INCLUDE_DIR_HINTS:STRING=\"PATH\" "
+ "or OSI_INCLUDE_DIR_HINTS env. variable to a valid Osi path. "
+ "Or install last Osi version.")
+ package_report_not_found(OSI "Osi cannot be found")
+endif()
+##====================================================
diff --git a/PKGBUILD b/PKGBUILD
index 66535ec115c1..0b22820f19d6 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,34 +3,32 @@
pkgbase=alice-vision
pkgname=('alice-vision') # 'alice-vision-cuda'
-pkgver=2.4.0
-pkgrel=18
+pkgver=3.2.0
+pkgrel=1
pkgdesc="Photogrammetric Computer Vision Framework which provides a 3D Reconstruction and Camera Tracking algorithms"
arch=('x86_64')
url="https://alicevision.github.io/"
options=('!lto' '!debug') # debug package is kinda big -- needs investigation!
license=('MPL2' 'MIT')
depends=('boost-libs' 'openimageio' 'flann' 'geogram' 'coin-or-clp' 'ceres-solver' 'cctag'
- 'alembic' 'opengv' 'opencv' 'popsift' 'uncertainty-framework')
+ 'alembic' 'opengv' 'opencv' 'popsift' 'uncertainty-framework' 'assimp')
makedepends=('boost' 'ninja' 'eigen' 'freetype2' 'coin-or-coinutils' 'coin-or-lemon'
- 'git' 'cmake' 'doxygen' 'python-sphinx' 'cuda')
+ 'git' 'cmake' 'doxygen' 'python-sphinx') # 'cuda'
source=("git+https://github.com/alicevision/AliceVision#tag=v${pkgver}"
"MeshSDFilter::git+https://github.com/alicevision/MeshSDFilter.git#branch=av_develop"
"nanoflann::git+https://github.com/alicevision/nanoflann.git"
- "cmake_cxx_std_14.patch"
- "openexr3.patch"
- "iomanip.patch"
- "isnormal.patch"
- "gcc-13.patch"
+ "FindCoinUtils.cmake"
+ "FindClp.cmake"
+ "FindOsi.cmake"
+ "fix-computeUncertainty-build.patch"
)
sha256sums=('SKIP'
'SKIP'
'SKIP'
- 'caf2bf06bd7c6a2387f01f312d94b649ef3e4363b18fcdf95986cd71a0d6c275'
- 'de9def936b143b6a95d8afc93e4673e8f8b0e434785b65c557353549efd95c1b'
- '3daa4788b181f2f92b31531c24c2ccff6d1546d7824addcd8058c415138346ea'
- '91b2942041511044c6d486f3ed0f29ce9d498906be7a2230703a706ea6a92743'
- '5b0397325cfcc1a6fb11eda915ee9a72ea1cab8d2c699be2271343b49a07792a')
+ 'd21691bfd9c2561cea52b5f48caf885ec6f8c2a0603ce594914bff610e77a0c5'
+ '6523435334eec6e39a244371287504cd0a0e88aa0cbe5dcac38b819ea881074e'
+ 'fbb87c86bc0b2ee2c98abfbecb0d555f75f01ccf5d4c59c22bb598e7f2897bf9'
+ '9d704d7f584c016d0eedb8fdb93d4fde600bcc984a722b9daadfde14e66e50c6')
prepare() {
cd AliceVision
@@ -40,53 +38,24 @@ prepare() {
git config submodule."src/dependencies/nanoflann".url "${srcdir}/nanoflann"
git -c protocol.file.allow=always submodule update
- # fix missing include that breaks building with boost 1.81.0
- git format-patch -1 --stdout 9c4481148d25 | patch -Np1
+ # alice-vision requires a patched coinutils with cmake integration
+ cp "$srcdir"/Find*.cmake src/cmake
+ sed -e 's|Coin::Clp|${CLP_LIBRARIES}|g' \
+ -e 's|Coin::CoinUtils|${COINUTILS_LIBRARIES}|g' \
+ -e 's|Coin::Osi|${OSI_LIBRARIES}|g' \
+ -i src/*/*/CMakeLists.txt
- patch -Np1 -i"${srcdir}"/cmake_cxx_std_14.patch
-
- # fix FindOpenEXR.cmake against openexr:3
- patch -Np1 -i"${srcdir}"/openexr3.patch
-
- # fix header relocation against openexr:3
- grep -lR "#include.*OpenEXR/half.h"|xargs sed -i 's|OpenEXR/half|Imath/half|'
-
- # fix gcc:11 headers regression
- grep -lR "std::numeric_limits"|xargs sed -i '1 i\#include <limits>'
+ # fix build
+ patch -p1 -i ../fix-computeUncertainty-build.patch
# fix doc build
sed -i '/^ *install.*doc/s/doc/htmlDoc/' src/CMakeLists.txt
-
- # fix CMAKE_FIND_PACKAGE_PREFER_CONFIG=ON preserve target name capitalisation
- sed 's/OPENEXR_FOUND/OpenEXR_FOUND/g' -i src/CMakeLists.txt
-
- # fix openimageio:2 target library
- sed 's/${OPENIMAGEIO_LIBRARIES};dl/OpenImageIO::OpenImageIO/g' -i src/CMakeLists.txt
-
- # fix [io]fstream(path) initializer
- sed '1 i#include <fstream>' -i $(grep -Rl std::[io]fstream src)
-
- # fix missing <iomanip> header (setw,setfill,etc.)
- git apply -v "${srcdir}"/iomanip.patch
-
- # fix missing isnormal() from std namespace
- git apply -v "${srcdir}"/isnormal.patch
-
- # fix build with GCC 13
- git apply -v "${srcdir}"/gcc-13.patch
+ ln -rs docs/sphinx{,/rst}
}
build() {
cd AliceVision
- # Patch out flags that causes failures during various stages.
- export CXXFLAGS="${CXXFLAGS/-Wp,-D_GLIBCXX_ASSERTIONS}"
- export CXXFLAGS="${CXXFLAGS/-fcf-protection}"
- export CXXFLAGS="${CXXFLAGS/-fstack-clash-protection}"
-
- # Fix build with boost 1.83
- export CXXFLAGS="${CXXFLAGS} -DBOOST_TIMER_ENABLE_DEPRECATED"
-
cmake \
-Bbuild \
-GNinja \
@@ -99,7 +68,7 @@ build() {
-DPopSift_DIR=/usr \
-DCCTag_DIR=/usr/lib/cmake/CCTag \
-DUNCERTAINTYTE_DIR=/usr \
- -DMAGMA_ROOT=/usr \
+ -DMAGMA_ROOT=/opt/cuda/targets/x86_64-linux/ \
-DALICEVISION_BUILD_EXAMPLES=OFF \
-DALICEVISION_USE_CUDA=OFF \
-DALICEVISION_USE_CCTAG=ON \
@@ -107,7 +76,8 @@ build() {
-DALICEVISION_USE_UNCERTAINTYTE=ON \
-DALICEVISION_USE_ALEMBIC=ON \
-DALICEVISION_USE_OPENGV=ON \
- -DALICEVISION_USE_OPENCV=ON
+ -DALICEVISION_USE_OPENCV=ON \
+ -DALICEVISION_USE_ONNX=OFF
ninja -C build
# cmake \
@@ -141,10 +111,6 @@ package_alice-vision() {
ninja -C build doc_doxygen
DESTDIR="${pkgdir}" ninja -C build install
- # Clean up some stuff that gets installed for some reason
- rm "${pkgdir}"/usr/lib/libflann_cpp_s.a
- rm "${pkgdir}"/usr/lib/pkgconfig/flann.pc
-
# Fix OpenImageIO linkage in client libraries
sed -i 's/OpenImageIO::OpenImageIO/${OPENIMAGEIO_LIBRARIES}/g' "${pkgdir}"/usr/share/aliceVision/cmake/AliceVisionTargets.cmake
@@ -164,10 +130,6 @@ package_alice-vision-cuda() {
ninja -C build-cuda doc_doxygen
DESTDIR="${pkgdir}" ninja -C build-cuda install
- # Clean up some stuff that gets installed for some reason
- rm "${pkgdir}"/usr/lib/libflann_cpp_s.a
- rm "${pkgdir}"/usr/lib/pkgconfig/flann.pc
-
# Fix OpenImageIO linkage in client libraries
sed -i 's/OpenImageIO::OpenImageIO/${OPENIMAGEIO_LIBRARIES}/g' "${pkgdir}"/usr/share/aliceVision/cmake/AliceVisionTargets.cmake
diff --git a/cmake_cxx_std_14.patch b/cmake_cxx_std_14.patch
deleted file mode 100644
index 252bcf62ef7e..000000000000
--- a/cmake_cxx_std_14.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/cmake/Helpers.cmake b/src/cmake/Helpers.cmake
-index 9c6f192a9..6a2084460 100644
---- a/src/cmake/Helpers.cmake
-+++ b/src/cmake/Helpers.cmake
-@@ -85,6 +85,7 @@ function(alicevision_add_library library_name)
- RUNTIME
- DESTINATION ${CMAKE_INSTALL_BINDIR}
- )
-+ target_compile_features(${library_name} PUBLIC cxx_std_14)
- endfunction()
-
- # Add interface function
diff --git a/fix-computeUncertainty-build.patch b/fix-computeUncertainty-build.patch
new file mode 100644
index 000000000000..953de16b274b
--- /dev/null
+++ b/fix-computeUncertainty-build.patch
@@ -0,0 +1,50 @@
+diff --git a/src/cmake/FindUncertaintyTE.cmake b/src/cmake/FindUncertaintyTE.cmake
+index bcd4d6bfe..9047b264e 100644
+--- a/src/cmake/FindUncertaintyTE.cmake
++++ b/src/cmake/FindUncertaintyTE.cmake
+@@ -30,7 +30,7 @@ FIND_LIBRARY(UNCERTAINTYTE_LIBRARY NAMES uncertaintyTE
+ PATH_SUFFIXES
+ lib
+ )
+-
++message("lalalalala " ${UNCERTAINTYTE_LIBRARY})
+ IF(UNCERTAINTYTE_INCLUDE_DIR)
+ MESSAGE(STATUS "UncertaintyTE headers found in ${UNCERTAINTYTE_INCLUDE_DIR}")
+ IF(NOT MAGMA_FOUND)
+@@ -39,6 +39,7 @@ IF(UNCERTAINTYTE_INCLUDE_DIR)
+ IF(MAGMA_FOUND)
+ set(UNCERTAINTYTE_INCLUDE_DIR ${UNCERTAINTYTE_INCLUDE_DIR} ${MAGMA_INCLUDE_DIRS})
+ set(UNCERTAINTYTE_LIBRARY ${UNCERTAINTYTE_LIBRARY} ${MAGMA_LIBRARIES})
++ message("lelelelelele " ${UNCERTAINTYTE_LIBRARY})
+ ELSE()
+ MESSAGE(WARNING "Couldn't find Magma, this is needed for compiling with UncertaintyTE")
+ # this is to make the find_package_handle_standard_args fail
+diff --git a/src/software/utils/main_computeUncertainty.cpp b/src/software/utils/main_computeUncertainty.cpp
+index 23d2ab9ee..5bba4d7b2 100644
+--- a/src/software/utils/main_computeUncertainty.cpp
++++ b/src/software/utils/main_computeUncertainty.cpp
+@@ -41,7 +41,8 @@ int aliceVision_main(int argc, char **argv)
+ std::string algorithm = cov::EAlgorithm_enumToString(cov::eAlgorithmSvdTaylorExpansion);
+ bool debug = false;
+
+- params.add_options()
++ po::options_description requiredParams("Required parameters");
++ requiredParams.add_options()
+ ("input,i", po::value<std::string>(&sfmDataFilename)->required(),
+ "SfMData file to align.")
+ ("output,o", po::value<std::string>(&outSfMDataFilename)->required(),
+@@ -51,12 +52,10 @@ int aliceVision_main(int argc, char **argv)
+ ("algorithm,a", po::value<std::string>(&algorithm)->default_value(algorithm),
+ "Algorithm.")
+ ("debug,d", po::value<bool>(&debug)->default_value(debug),
+- "Enable creation of debug files in the current folder.")
+- ("verboseLevel,v", po::value<std::string>(&verboseLevel)->default_value(verboseLevel),
+- "verbosity level (fatal, error, warning, info, debug, trace).");
++ "Enable creation of debug files in the current folder.");
+
+ CmdLine cmdline("AliceVision computeUncertainty");
+- cmdline.add(params);
++ cmdline.add(requiredParams);
+ if (!cmdline.execute(argc, argv))
+ {
+ return EXIT_FAILURE;
diff --git a/gcc-13.patch b/gcc-13.patch
deleted file mode 100644
index 961d240ec93d..000000000000
--- a/gcc-13.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/src/aliceVision/keyframe/KeyframeSelector.hpp b/src/aliceVision/keyframe/KeyframeSelector.hpp
-index c5bfff9e1..7d055a6a7 100644
---- a/src/aliceVision/keyframe/KeyframeSelector.hpp
-+++ b/src/aliceVision/keyframe/KeyframeSelector.hpp
-@@ -17,6 +17,7 @@
- #include <vector>
- #include <memory>
- #include <limits>
-+#include <cstdint>
-
- namespace aliceVision {
- namespace image {
-diff --git a/src/aliceVision/keyframe/SharpnessSelectionPreset.hpp b/src/aliceVision/keyframe/SharpnessSelectionPreset.hpp
-index cbac01f96..150ed09b0 100644
---- a/src/aliceVision/keyframe/SharpnessSelectionPreset.hpp
-+++ b/src/aliceVision/keyframe/SharpnessSelectionPreset.hpp
-@@ -10,6 +10,7 @@
- #include <iostream>
- #include <algorithm>
- #include <stdexcept>
-+#include <cstdint>
-
- namespace aliceVision {
- namespace keyframe {
diff --git a/iomanip.patch b/iomanip.patch
deleted file mode 100644
index 371ff4c5499a..000000000000
--- a/iomanip.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 711eda620449c080b642fc7cb6118758535ab614 Mon Sep 17 00:00:00 2001
-From: fabien servant <fabien.servant@technicolor.com>
-Date: Tue, 7 Jun 2022 11:07:19 +0200
-Subject: [PATCH] [all] iomanip include missing on vs2022
-
----
- src/aliceVision/keyframe/KeyframeSelector.cpp | 2 +-
- src/software/pipeline/main_LdrToHdrMerge.cpp | 1 +
- src/software/pipeline/main_featureExtraction.cpp | 1 +
- 3 files changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/aliceVision/keyframe/KeyframeSelector.cpp b/src/aliceVision/keyframe/KeyframeSelector.cpp
-index bfe2dccc6..2243ab5c3 100644
---- a/src/aliceVision/keyframe/KeyframeSelector.cpp
-+++ b/src/aliceVision/keyframe/KeyframeSelector.cpp
-@@ -16,7 +16,7 @@
- #include <tuple>
- #include <cassert>
- #include <cstdlib>
--
-+#include <iomanip>
- namespace fs = boost::filesystem;
-
- namespace aliceVision {
-diff --git a/src/software/pipeline/main_LdrToHdrMerge.cpp b/src/software/pipeline/main_LdrToHdrMerge.cpp
-index b3dc72c3e..da87d7e37 100644
---- a/src/software/pipeline/main_LdrToHdrMerge.cpp
-+++ b/src/software/pipeline/main_LdrToHdrMerge.cpp
-@@ -24,6 +24,7 @@
- #include <boost/program_options.hpp>
- #include <boost/filesystem.hpp>
- #include <sstream>
-+#include <iomanip>
-
- // These constants define the current software version.
- // They must be updated when the command line is changed.
-diff --git a/src/software/pipeline/main_featureExtraction.cpp b/src/software/pipeline/main_featureExtraction.cpp
-index 70b49fbee..5d59dfabb 100644
---- a/src/software/pipeline/main_featureExtraction.cpp
-+++ b/src/software/pipeline/main_featureExtraction.cpp
-@@ -34,6 +34,7 @@
- #include <functional>
- #include <memory>
- #include <limits>
-+#include <iomanip>
-
- // These constants define the current software version.
- // They must be updated when the command line is changed.
diff --git a/isnormal.patch b/isnormal.patch
deleted file mode 100644
index 917612b86814..000000000000
--- a/isnormal.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From f160515dd0b706d2034fe0641c00f58b2e63335d Mon Sep 17 00:00:00 2001
-From: Povilas Kanapickas <povilas@radix.lt>
-Date: Sat, 17 Sep 2022 22:01:58 +0300
-Subject: [PATCH] [fuseCut] Pick isnormal() from std namespace
-
-This fixes compile error due to isnormal() being not available in the
-global namespace.
----
- src/aliceVision/fuseCut/DelaunayGraphCut.cpp | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/aliceVision/fuseCut/DelaunayGraphCut.cpp b/src/aliceVision/fuseCut/DelaunayGraphCut.cpp
-index 95e705fbf..38b8f9305 100644
---- a/src/aliceVision/fuseCut/DelaunayGraphCut.cpp
-+++ b/src/aliceVision/fuseCut/DelaunayGraphCut.cpp
-@@ -29,6 +29,7 @@
- #include <boost/filesystem.hpp>
- #include <boost/filesystem/operations.hpp>
-
-+#include <cmath>
- #include <random>
- #include <stdexcept>
-
-@@ -1629,7 +1630,7 @@ DelaunayGraphCut::GeometryIntersection DelaunayGraphCut::rayIntersectTriangle(co
- Point3d tempIntersectPt;
- const Point2d triangleUv = getLineTriangleIntersectBarycCoords(&tempIntersectPt, A, B, C, &originPt, &DirVec);
-
-- if (!isnormal(tempIntersectPt.x) || !isnormal(tempIntersectPt.y) || !isnormal(tempIntersectPt.z))
-+ if (!std::isnormal(tempIntersectPt.x) || !std::isnormal(tempIntersectPt.y) || !std::isnormal(tempIntersectPt.z))
- {
- // This is not suppose to happen in real life, we log a warning instead of raising an exeption if we face a border case
- // ALICEVISION_LOG_WARNING("Invalid/notNormal intersection point found during rayIntersectTriangle.");
diff --git a/openexr3.patch b/openexr3.patch
deleted file mode 100644
index 01db8801bf10..000000000000
--- a/openexr3.patch
+++ /dev/null
@@ -1,309 +0,0 @@
---- AliceVision-2.4.0/src/cmake/openexr/FindOpenEXR.cmake 2021-05-30 08:32:20.810681100 +0200
-+++ AliceVision-2.4.0.new/src/cmake/openexr/FindOpenEXR.cmake 2021-05-30 08:30:50.611355400 +0200
-@@ -1,178 +1,138 @@
--# Module to find OpenEXR.
-+# - Find OpenEXR library
-+# Find the native OpenEXR includes and library
-+# This module defines
-+# OPENEXR_INCLUDE_DIRS, where to find ImfXdr.h, etc. Set when
-+# OPENEXR_INCLUDE_DIR is found.
-+# OPENEXR_LIBRARIES, libraries to link against to use OpenEXR.
-+# OPENEXR_ROOT_DIR, The base directory to search for OpenEXR.
-+# This can also be an environment variable.
-+# OPENEXR_FOUND, If false, do not try to use OpenEXR.
- #
--# This module will set
--# OPENEXR_FOUND true, if found
--# OPENEXR_INCLUDE_DIR directory where headers are found
--# OPENEXR_LIBRARIES libraries for OpenEXR + IlmBase
--# ILMBASE_LIBRARIES libraries just IlmBase
--# OPENEXR_VERSION OpenEXR version (accurate for >= 2.0.0,
--# otherwise will just guess 1.6.1)
-+# For individual library access these advanced settings are available
-+# OPENEXR_HALF_LIBRARY, Path to Half library
-+# OPENEXR_IEX_LIBRARY, Path to Half library
-+# OPENEXR_ILMIMF_LIBRARY, Path to Ilmimf library
-+# OPENEXR_ILMTHREAD_LIBRARY, Path to IlmThread library
-+# OPENEXR_IMATH_LIBRARY, Path to Imath library
- #
--# Special inputs:
--# OPENEXR_CUSTOM_INCLUDE_DIR - custom location of headers
--# OPENEXR_CUSTOM_LIB_DIR - custom location of libraries
--# OPENEXR_CUSTOM_LIB_PREFIX - special snowflake library prefix
--# OPENEXR_CUSTOM_LIB_SUFFIX - special snowflake library suffix
-+# also defined, but not for general use are
-+# OPENEXR_LIBRARY, where to find the OpenEXR library.
-+
-+#=============================================================================
-+# Copyright 2011 Blender Foundation.
- #
-+# Distributed under the OSI-approved BSD 3-Clause License,
-+# see accompanying file BSD-3-Clause-license.txt for details.
-+#=============================================================================
-+
-+# If OPENEXR_ROOT_DIR was defined in the environment, use it.
-+IF(NOT OPENEXR_ROOT_DIR AND NOT $ENV{OPENEXR_ROOT_DIR} STREQUAL "")
-+ SET(OPENEXR_ROOT_DIR $ENV{OPENEXR_ROOT_DIR})
-+ENDIF()
-+
-+# Old versions (before 2.0?) do not have any version string, just assuming this should be fine though.
-+SET(_openexr_libs_ver_init "2.0")
-+
-+SET(_openexr_FIND_COMPONENTS
-+ Iex
-+ Imath
-+ OpenEXR
-+ IlmThread
-+)
-
--# Other standard issue macros
--include (FindPackageHandleStandardArgs)
--include (SelectLibraryConfigurations)
--
--find_package (ZLIB REQUIRED)
--
--# Link with pthreads if required
--find_package (Threads)
--if (CMAKE_USE_PTHREADS_INIT)
-- set (ILMBASE_PTHREADS ${CMAKE_THREAD_LIBS_INIT})
--endif ()
--
--# List of likely places to find the headers -- note priority override of
--# OPENEXR_CUSTOM_INCLUDE_DIR and ${OPENEXR_HOME}/include.
--# ILMBASE is needed in case ilmbase an openexr are installed in separate
--# directories, like NixOS does
--set (GENERIC_INCLUDE_PATHS
-- ${OPENEXR_CUSTOM_INCLUDE_DIR}
-- ${OPENEXR_HOME}/include
-- ${ILMBASE_HOME}/include
--# /usr/local/include
--# /usr/include
--# /usr/include/${CMAKE_LIBRARY_ARCHITECTURE}
--# /sw/include
--# /opt/local/include
-+SET(_openexr_SEARCH_DIRS
-+ ${OPENEXR_ROOT_DIR}
-+ /opt/lib/openexr
- )
-
--# Find the include file locations. We call find_path twice -- first using
--# only the custom paths, then if that fails, try the default paths only.
--# This seems to be the most robust way I can find to not get confused when
--# both system and custom libraries are present.
--find_path (ILMBASE_INCLUDE_PATH OpenEXR/IlmBaseConfig.h
-- PATHS ${GENERIC_INCLUDE_PATHS})
--#find_path (ILMBASE_INCLUDE_PATH OpenEXR/IlmBaseConfig.h)
--find_path (OPENEXR_INCLUDE_PATH OpenEXR/OpenEXRConfig.h
-- PATHS ${GENERIC_INCLUDE_PATHS})
--#find_path (OPENEXR_INCLUDE_PATH OpenEXR/OpenEXRConfig.h)
--
--# message(WARNING "GENERIC_INCLUDE_PATHS: ${GENERIC_INCLUDE_PATHS}")
--# message(WARNING "Test if file exist: ${OPENEXR_INCLUDE_PATH}/OpenEXR/ImfMultiPartInputFile.h")
--
--
--# Try to figure out version number
--if (EXISTS "${OPENEXR_INCLUDE_PATH}/OpenEXR/ImfMultiPartInputFile.h")
-- # message(WARNING "Yes, file exist")
--
-- # Must be at least 2.0
-- file(STRINGS "${OPENEXR_INCLUDE_PATH}/OpenEXR/OpenEXRConfig.h" TMP REGEX "^#define OPENEXR_VERSION_STRING .*$")
-- string (REGEX MATCHALL "[0-9]+[.0-9]+" OPENEXR_VERSION ${TMP})
-- file(STRINGS "${OPENEXR_INCLUDE_PATH}/OpenEXR/OpenEXRConfig.h" TMP REGEX "^#define OPENEXR_VERSION_MAJOR .*$")
-- string (REGEX MATCHALL "[0-9]+" OPENEXR_VERSION_MAJOR ${TMP})
-- file(STRINGS "${OPENEXR_INCLUDE_PATH}/OpenEXR/OpenEXRConfig.h" TMP REGEX "^#define OPENEXR_VERSION_MINOR .*$")
-- string (REGEX MATCHALL "[0-9]+" OPENEXR_VERSION_MINOR ${TMP})
--else ()
-- message(STATUS "File ${OPENEXR_INCLUDE_PATH}/OpenEXR/ImfMultiPartInputFile.h does not exist. Default to 1.6.1")
-- # Assume an old one, predates 2.x that had versions
-- set (OPENEXR_VERSION 1.6.1)
-- set (OPENEXR_MAJOR 1)
-- set (OPENEXR_MINOR 6)
--endif ()
--
--
--# List of likely places to find the libraries -- note priority override of
--# OPENEXR_CUSTOM_LIB_DIR and ${OPENEXR_HOME}/lib.
--
--# If there's no OPENEXR_HOME or ILMBASE_HOME, then the path will point to
--# "/lib", which may not always be wanted/expected.
--if (OPENEXR_CUSTOM_LIB_DIR)
-- set (GENERIC_LIBRARY_PATHS ${GENERIC_LIBRARY_PATHS} ${OPENEXR_CUSTOM_LIB_DIR})
--endif()
--
--if (OPENEXR_HOME)
-- set (GENERIC_LIBRARY_PATHS ${GENERIC_LIBRARY_PATHS} ${OPENEXR_HOME})
--endif()
--
--if (ILMBASE_HOME)
-- set (GENERIC_LIBRARY_PATHS ${GENERIC_LIBRARY_PATHS} ${ILMBASE_HOME})
--endif()
--
--set (GENERIC_LIBRARY_PATHS
-- ${GENERIC_LIBRARY_PATHS}
-- ${OPENEXR_INCLUDE_PATH}/../lib
-- ${ILMBASE_INCLUDE_PATH}/../lib
-- /usr/local/lib
-- /usr/local/lib/${CMAKE_LIBRARY_ARCHITECTURE}
-- /usr/lib
-- /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}
-- /sw/lib
-- /opt/local/lib
-- $ENV{PROGRAM_FILES}/OpenEXR/lib/static )
--
--# Handle request for static libs by altering CMAKE_FIND_LIBRARY_SUFFIXES.
--# We will restore it at the end of this file.
--set (_openexr_orig_suffixes ${CMAKE_FIND_LIBRARY_SUFFIXES})
--if (OpenEXR_USE_STATIC_LIBS)
-- if (WIN32)
-- set (CMAKE_FIND_LIBRARY_SUFFIXES .lib .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
-- else ()
-- set (CMAKE_FIND_LIBRARY_SUFFIXES .a)
-- endif ()
--endif ()
--
--# Look for the libraries themselves, for all the components. Like with the
--# headers, we do two finds -- first for custom locations, then for default.
--# This is complicated because the OpenEXR libraries may or may not be
--# built with version numbers embedded.
--set (_openexr_components IlmThread IlmImf Imath Iex Half)
--foreach (COMPONENT ${_openexr_components})
-- string (TOUPPER ${COMPONENT} UPPERCOMPONENT)
-- # First try with the version embedded
-- set (FULL_COMPONENT_NAME ${OPENEXR_CUSTOM_LIB_PREFIX}${COMPONENT}-${OPENEXR_VERSION_MAJOR}_${OPENEXR_VERSION_MINOR}${OPENEXR_CUSTOM_LIB_SUFFIX})
-- find_library (OPENEXR_${UPPERCOMPONENT}_LIBRARY ${FULL_COMPONENT_NAME}
-- PATHS ${GENERIC_LIBRARY_PATHS} NO_DEFAULT_PATH)
-- # Again, with no directory restrictions
-- find_library (OPENEXR_${UPPERCOMPONENT}_LIBRARY ${FULL_COMPONENT_NAME})
-- # Try again without the version
-- set (FULL_COMPONENT_NAME ${OPENEXR_CUSTOM_LIB_PREFIX}${COMPONENT}${OPENEXR_CUSTOM_LIB_SUFFIX})
-- find_library (OPENEXR_${UPPERCOMPONENT}_LIBRARY ${FULL_COMPONENT_NAME}
-- PATHS ${GENERIC_LIBRARY_PATHS} NO_DEFAULT_PATH)
-- # One more time, with no restrictions
-- find_library (OPENEXR_${UPPERCOMPONENT}_LIBRARY ${FULL_COMPONENT_NAME})
--endforeach ()
--#Half usually has no suffix
--find_library (OPENEXR_HALF_LIBRARY ${OPENEXR_CUSTOM_LIB_PREFIX}Half
-- PATHS ${GENERIC_LIBRARY_PATHS} NO_DEFAULT_PATH)
--find_library (OPENEXR_HALF_LIBRARY ${OPENEXR_CUSTOM_LIB_PREFIX}Half)
--
--# Set the FOUND, INCLUDE_DIR, and LIBRARIES variables.
--if (ILMBASE_INCLUDE_PATH AND OPENEXR_INCLUDE_PATH AND
-- OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND
-- OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY)
-- set (OPENEXR_FOUND TRUE)
-- set (ILMBASE_FOUND TRUE)
-- set (ILMBASE_INCLUDE_DIR ${ILMBASE_INCLUDE_PATH};${ILMBASE_INCLUDE_PATH}/OpenEXR CACHE STRING "The include paths needed to use IlmBase")
-- set (OPENEXR_INCLUDE_DIR ${OPENEXR_INCLUDE_PATH} CACHE STRING "The include paths needed to use OpenEXR")
-- set (ILMBASE_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} ${OPENEXR_ILMTHREAD_LIBRARY} ${ILMBASE_PTHREADS} CACHE STRING "The libraries needed to use IlmBase")
-- set (OPENEXR_LIBRARIES ${OPENEXR_ILMIMF_LIBRARY} ${ILMBASE_LIBRARIES} ${ZLIB_LIBRARIES} CACHE STRING "The libraries needed to use OpenEXR")
--endif ()
--
--find_package_handle_standard_args (OpenEXR
-- REQUIRED_VARS ILMBASE_INCLUDE_PATH OPENEXR_INCLUDE_PATH
-- OPENEXR_IMATH_LIBRARY OPENEXR_ILMIMF_LIBRARY
-- OPENEXR_IEX_LIBRARY OPENEXR_HALF_LIBRARY
-- VERSION_VAR OPENEXR_VERSION
-+FIND_PATH(OPENEXR_INCLUDE_DIR
-+ NAMES
-+ OpenEXR/ImfXdr.h
-+ HINTS
-+ ${_openexr_SEARCH_DIRS}
-+ PATH_SUFFIXES
-+ include
-+)
-+
-+# If the headers were found, get the version from config file, if not already set.
-+IF(OPENEXR_INCLUDE_DIR)
-+ IF(NOT OPENEXR_VERSION)
-+
-+ FIND_FILE(_openexr_CONFIG
-+ NAMES
-+ OpenEXRConfig.h
-+ PATHS
-+ "${OPENEXR_INCLUDE_DIR}"
-+ "${OPENEXR_INCLUDE_DIR}/OpenEXR"
-+ NO_DEFAULT_PATH
- )
-
--message(WARNING "ILMBASE_INCLUDE_DIR: ${ILMBASE_INCLUDE_DIR}")
-+ IF(_openexr_CONFIG)
-+ FILE(STRINGS "${_openexr_CONFIG}" OPENEXR_BUILD_SPECIFICATION
-+ REGEX "^[ \t]*#define[ \t]+OPENEXR_VERSION_STRING[ \t]+\"[.0-9]+\".*$")
-+ ELSE()
-+ MESSAGE(WARNING "Could not find \"OpenEXRConfig.h\" in \"${OPENEXR_INCLUDE_DIR}\"")
-+ ENDIF()
-+
-+ IF(OPENEXR_BUILD_SPECIFICATION)
-+ MESSAGE(STATUS "${OPENEXR_BUILD_SPECIFICATION}")
-+ STRING(REGEX REPLACE ".*#define[ \t]+OPENEXR_VERSION_STRING[ \t]+\"([.0-9]+)\".*"
-+ "\\1" _openexr_libs_ver_init ${OPENEXR_BUILD_SPECIFICATION})
-+ ELSE()
-+ MESSAGE(WARNING "Could not determine ILMBase library version, assuming ${_openexr_libs_ver_init}.")
-+ ENDIF()
-+
-+ UNSET(_openexr_CONFIG CACHE)
-+
-+ ENDIF()
-+ENDIF()
-+
-+SET("OPENEXR_VERSION" ${_openexr_libs_ver_init} CACHE STRING "Version of OpenEXR lib")
-+UNSET(_openexr_libs_ver_init)
-+
-+STRING(REGEX REPLACE "([0-9]+)[.]([0-9]+).*" "\\1_\\2" _openexr_libs_ver ${OPENEXR_VERSION})
-+
-+SET(_openexr_LIBRARIES)
-+FOREACH(COMPONENT ${_openexr_FIND_COMPONENTS})
-+ STRING(TOUPPER ${COMPONENT} UPPERCOMPONENT)
-+
-+ FIND_LIBRARY(OPENEXR_${UPPERCOMPONENT}_LIBRARY
-+ NAMES
-+ ${COMPONENT}-${_openexr_libs_ver} ${COMPONENT}
-+ NAMES_PER_DIR
-+ HINTS
-+ ${_openexr_SEARCH_DIRS}
-+ PATH_SUFFIXES
-+ lib64 lib
-+ )
-+ LIST(APPEND _openexr_LIBRARIES "${OPENEXR_${UPPERCOMPONENT}_LIBRARY}")
-+ENDFOREACH()
-
--MARK_AS_ADVANCED(
-- ILMBASE_INCLUDE_DIR
-- OPENEXR_INCLUDE_DIR
-- ILMBASE_LIBRARIES
-- OPENEXR_LIBRARIES
-- OPENEXR_ILMIMF_LIBRARY
-- OPENEXR_IMATH_LIBRARY
-- OPENEXR_IEX_LIBRARY
-- OPENEXR_HALF_LIBRARY
-- OPENEXR_VERSION)
-+UNSET(_openexr_libs_ver)
-+
-+# handle the QUIETLY and REQUIRED arguments and set OPENEXR_FOUND to TRUE if
-+# all listed variables are TRUE
-+INCLUDE(FindPackageHandleStandardArgs)
-+FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenEXR DEFAULT_MSG
-+ _openexr_LIBRARIES OPENEXR_INCLUDE_DIR)
-+
-+IF(OPENEXR_FOUND)
-+ SET(OPENEXR_LIBRARIES ${_openexr_LIBRARIES})
-+ # Both include paths are needed because of dummy OSL headers mixing #include <OpenEXR/foo.h> and #include <foo.h> :(
-+ SET(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR}/OpenEXR ${OPENEXR_INCLUDE_DIR}/Imath)
-+ENDIF()
-
--# Restore the original CMAKE_FIND_LIBRARY_SUFFIXES
--set (CMAKE_FIND_LIBRARY_SUFFIXES ${_openexr_orig_suffixes})
-+MARK_AS_ADVANCED(
-+ OPENEXR_INCLUDE_DIR
-+ OPENEXR_VERSION
-+)
-+FOREACH(COMPONENT ${_openexr_FIND_COMPONENTS})
-+ STRING(TOUPPER ${COMPONENT} UPPERCOMPONENT)
-+ MARK_AS_ADVANCED(OPENEXR_${UPPERCOMPONENT}_LIBRARY)
-+ENDFOREACH()
-+
-+UNSET(COMPONENT)
-+UNSET(UPPERCOMPONENT)
-+UNSET(_openexr_FIND_COMPONENTS)
-+UNSET(_openexr_LIBRARIES)
-+UNSET(_openexr_SEARCH_DIRS)