[openimageio] update to 2.4.9.0 (#30238)

* [openimageio] update to 2.4.9.0

* ./vcpkg x-add-version --all
This commit is contained in:
Russell Greene 2023-03-20 02:55:01 -05:00 committed by GitHub
parent 12e66720d2
commit a65afc103d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 9 additions and 216 deletions

View File

@ -1,84 +0,0 @@
From 1aa2cf6edf9f2bd57a21998fceeb095cbe1f2b84 Mon Sep 17 00:00:00 2001
From: Gerdya <37900163+Gerdya@users.noreply.github.com>
Date: Sat, 26 Nov 2022 01:31:12 +0100
Subject: [PATCH] Some fixes for compilation with MSVC for Windows ARM64
(#3690)
---
src/include/OpenImageIO/platform.h | 10 +++++++++-
src/include/OpenImageIO/simd.h | 19 +++++++++++++++----
2 files changed, 24 insertions(+), 5 deletions(-)
diff --git a/src/include/OpenImageIO/platform.h b/src/include/OpenImageIO/platform.h
index 233da35a8a..be7e3d1f9d 100644
--- a/src/include/OpenImageIO/platform.h
+++ b/src/include/OpenImageIO/platform.h
@@ -42,6 +42,11 @@
# include <intrin.h>
#endif
+//Avoid min and max being defined
+#if defined(_WIN32)
+#define NOMINMAX
+#endif
+
#include <OpenImageIO/oiioversion.h>
#include <OpenImageIO/export.h>
@@ -568,7 +573,7 @@ inline void cpuid (int info[4], int infoType, int extra)
{
// Implementation cribbed from Halide (http://halide-lang.org), which
// cribbed it from ISPC (https://github.com/ispc/ispc).
-#if (defined(_WIN32) || defined(__i386__) || defined(__x86_64__))
+#if (defined(_M_X64) || defined(_M_IX86) || defined(_M_AMD64) || defined(__i386__) || defined(__x86_64__))
# ifdef _MSC_VER
__cpuidex(info, infoType, extra);
# elif defined(__x86_64__)
@@ -584,6 +589,9 @@ inline void cpuid (int info[4], int infoType, int extra)
: "=a" (info[0]), "=r" (info[1]), "=c" (info[2]), "=d" (info[3])
: "0" (infoType), "2" (extra));
# endif
+#elif (defined(_M_ARM64) || defined (__aarch64__) || defined(__aarch64))
+ info[0] = 0; info[1] = 0; info[2] = 0; info[3] = 0;
+ #define __ARM_NEON__
#else
info[0] = 0; info[1] = 0; info[2] = 0; info[3] = 0;
#endif
diff --git a/src/include/OpenImageIO/simd.h b/src/include/OpenImageIO/simd.h
index f82f8786b5..2a75f38f10 100644
--- a/src/include/OpenImageIO/simd.h
+++ b/src/include/OpenImageIO/simd.h
@@ -92,6 +92,11 @@
#define OIIO_NO_SSE 1
#endif
+//Disable SSE for ARM64 targets
+#if defined(_M_ARM64) || defined(__aarch64) || defined(__aarch64__)
+#define OIIO_NO_SSE 1
+#endif
+
// Make sure to disable SSE intrinsics when compiling for Cuda.
#if defined(__CUDA_ARCH__) && !defined(OIIO_NO_SSE)
#define OIIO_NO_SSE 1
@@ -6750,11 +6755,17 @@ OIIO_FORCEINLINE void vfloat4::load (const float *values, int n) {
break;
}
#elif OIIO_SIMD_NEON
+ //switch (n) {
+ //case 1: m_simd = vdupq_n_f32(0); m_simd[0] = values[0]; break;
+ //case 2: load (values[0], values[1], 0.0f, 0.0f); break;
+ //case 3: load (values[0], values[1], values[2], 0.0f); break;
+ //case 4: m_simd = vld1q_f32 (values); break;
+ //default: break;
+ m_simd = vld1q_f32(values);
switch (n) {
- case 1: m_simd = vdupq_n_f32(0); m_simd[0] = values[0]; break;
- case 2: load (values[0], values[1], 0.0f, 0.0f); break;
- case 3: load (values[0], values[1], values[2], 0.0f); break;
- case 4: m_simd = vld1q_f32 (values); break;
+ case 1: m_simd = vsetq_lane_f32(0.0f, m_simd, 1);
+ case 2: m_simd = vsetq_lane_f32(0.0f, m_simd, 2);
+ case 3: m_simd = vsetq_lane_f32(0.0f, m_simd, 3);
default: break;
}
#else

View File

@ -1,20 +0,0 @@
diff --git a/src/libutil/strutil.cpp b/src/libutil/strutil.cpp
index 129a9b5..09baea8 100644
--- a/src/libutil/strutil.cpp
+++ b/src/libutil/strutil.cpp
@@ -914,8 +914,15 @@ std::string
Strutil::utf16_to_utf8(const std::u16string& str) noexcept
{
try {
+ // https://stackoverflow.com/a/35103224
+#if defined _MSC_VER && _MSC_VER >= 1900 && _MSC_VER < 1930
+ std::wstring_convert<std::codecvt_utf8_utf16<int16_t>, int16_t> convert;
+ auto p = reinterpret_cast<const int16_t *>(str.data());
+ return convert.to_bytes(p, p + str.size());
+#else
std::wstring_convert<std::codecvt_utf8_utf16<char16_t>, char16_t> conv;
return conv.to_bytes(str);
+#endif
} catch (const std::exception&) {
return std::string();
}

View File

@ -1,36 +0,0 @@
diff --git a/src/iv/imageviewer.cpp b/src/iv/imageviewer.cpp
index 79839dd5a..f49da67c0 100644
--- a/src/iv/imageviewer.cpp
+++ b/src/iv/imageviewer.cpp
@@ -14,7 +14,6 @@
#include <QApplication>
#include <QComboBox>
-#include <QDesktopWidget>
#include <QFileDialog>
#include <QKeyEvent>
#include <QLabel>
@@ -1951,8 +1951,8 @@ ImageViewer::fitWindowToImage(bool zoomok, bool minsize)
}
if (!m_fullscreen) {
- QDesktopWidget* desktop = QApplication::desktop();
- QRect availgeom = desktop->availableGeometry(this);
+ auto desktop = this->screen();
+ QRect availgeom = desktop->availableGeometry();
int availwidth = availgeom.width() - extraw - 20;
int availheight = availgeom.height() - extrah - menuBar()->height()
- 20;
diff --git a/src/iv/ivgl.cpp b/src/iv/ivgl.cpp
index 2551d02ae..890bb4d92 100644
--- a/src/iv/ivgl.cpp
+++ b/src/iv/ivgl.cpp
@@ -11,6 +11,8 @@
#include <QLabel>
#include <QMouseEvent>
#include <QProgressBar>
+#include <QPainter>
+#include <QPen>
#include "ivutils.h"
#include <OpenImageIO/strutil.h>

View File

@ -2,7 +2,7 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO OpenImageIO/oiio
REF "v${VERSION}"
SHA512 c7a4283b78197c262d8da31460ce8b07b44546f822142e32e6c1ea22376e1c4b9cfe9c39cc0994987c6c4f653c1f2764057944da97a3a090bf1bcb74a2a0b2c2
SHA512 e7dd7aba8dc0baa9bc50f362c21119bf4008edbd03a0c9f31bb03e01b5b0cc18c39f8a368885a4d756f6b475965138409c7e91eeae90b0ebc18d253ff314f025
HEAD_REF master
PATCHES
fix-dependencies.patch
@ -10,11 +10,7 @@ vcpkg_from_github(
fix-openexr-dll.patch
imath-version-guard.patch
fix-openimageio_include_dir.patch
fix-vs2019-encoding-conversion.patch
qt6.patch
more_qt6.patch
fix-openexr-target-missing.patch
1aa2cf6edf9f2bd57a21998fceeb095cbe1f2b84.patch
)
file(REMOVE_RECURSE "${SOURCE_PATH}/ext")
@ -44,7 +40,6 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
libheif USE_LIBHEIF
pybind11 USE_PYTHON
tools OIIO_BUILD_TOOLS
tools USE_OPENGL
tools USE_QT
)
@ -55,7 +50,6 @@ vcpkg_cmake_configure(
-DBUILD_TESTING=OFF
-DUSE_DCMTK=OFF
-DUSE_NUKE=OFF
-DUSE_QT=OFF
-DUSE_OpenVDB=OFF
-DUSE_PTEX=OFF
-DUSE_TBB=OFF

View File

@ -1,65 +0,0 @@
diff --git a/src/cmake/externalpackages.cmake b/src/cmake/externalpackages.cmake
index 8131672..7a6455e 100644
--- a/src/cmake/externalpackages.cmake
+++ b/src/cmake/externalpackages.cmake
@@ -264,15 +264,15 @@ checked_find_package (Nuke)
checked_find_package (OpenGL) # used for iv
# Qt -- used for iv
-set (qt5_modules Core Gui Widgets)
+set (qt6_modules Core Gui Widgets)
if (OPENGL_FOUND)
- list (APPEND qt5_modules OpenGL)
+ list (APPEND qt6_modules OpenGL OpenGLWidgets)
endif ()
option (USE_QT "Use Qt if found" ON)
-checked_find_package (Qt5 COMPONENTS ${qt5_modules})
-if (USE_QT AND NOT Qt5_FOUND AND APPLE)
- message (STATUS " If you think you installed qt5 with Homebrew and it still doesn't work,")
- message (STATUS " try: export PATH=/usr/local/opt/qt5/bin:$PATH")
+checked_find_package (Qt6 COMPONENTS ${qt6_modules})
+if (USE_QT AND NOT Qt6_FOUND AND APPLE)
+ message (STATUS " If you think you installed qt6 with Homebrew and it still doesn't work,")
+ message (STATUS " try: export PATH=/usr/local/opt/qt6/bin:$PATH")
endif ()
diff --git a/src/iv/CMakeLists.txt b/src/iv/CMakeLists.txt
index 88a2151..cbc4a54 100644
--- a/src/iv/CMakeLists.txt
+++ b/src/iv/CMakeLists.txt
@@ -3,18 +3,18 @@
# https://github.com/OpenImageIO/oiio
set (CMAKE_AUTOMOC ON)
-if (Qt5_POSITION_INDEPENDENT_CODE)
+if (Qt6_POSITION_INDEPENDENT_CODE)
set (CMAKE_POSITION_INDEPENDENT_CODE ON)
endif()
check_is_enabled (iv iv_enabled)
-if (iv_enabled AND Qt5_FOUND AND OPENGL_FOUND)
+if (iv_enabled AND Qt6_FOUND AND OPENGL_FOUND)
fancy_add_executable (
SYSTEM_INCLUDE_DIRS
${OPENGL_INCLUDE_DIR}
LINK_LIBRARIES
OpenImageIO
- Qt5::Core Qt5::Gui Qt5::Widgets Qt5::OpenGL
+ Qt6::Core Qt6::Gui Qt6::Widgets Qt6::OpenGLWidgets
${OPENGL_LIBRARIES}
)
if (iv_enabled AND FORCE_OPENGL_1)
diff --git a/src/iv/imageviewer.h b/src/iv/imageviewer.h
index f20b79a..ca67b52 100644
--- a/src/iv/imageviewer.h
+++ b/src/iv/imageviewer.h
@@ -23,7 +23,7 @@
#include <QAction>
#include <QCheckBox>
#include <QDialog>
-#include <QGLWidget>
+#include <QOpenGLWidget>
#include <QMainWindow>
#ifndef QT_NO_PRINTER

View File

@ -1,7 +1,6 @@
{
"name": "openimageio",
"version": "2.4.5.0",
"port-version": 6,
"version": "2.4.9.0",
"description": "A library for reading and writing images, and a bunch of related classes, utilities, and application.",
"homepage": "https://github.com/OpenImageIO/oiio",
"license": "BSD-3-Clause",

View File

@ -5761,8 +5761,8 @@
"port-version": 3
},
"openimageio": {
"baseline": "2.4.5.0",
"port-version": 6
"baseline": "2.4.9.0",
"port-version": 0
},
"openjpeg": {
"baseline": "2.5.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "82fe27ff1713dd3f0fbaaa7399257fc4d56cf1b0",
"version": "2.4.9.0",
"port-version": 0
},
{
"git-tree": "44d1afa89f2a7914db623aec8f29f6eb27d676f3",
"version": "2.4.5.0",