From d32b2a881f3b2b9c7191ceaf1f94c55b6953a633 Mon Sep 17 00:00:00 2001 From: Frederic Devernay Date: Thu, 10 Aug 2023 20:05:40 +0200 Subject: [PATCH] update MacPorts --- tools/MacPorts/devel/gnutls/Portfile | 3 + tools/MacPorts/devel/gnutls/Portfile.orig | 3 + tools/MacPorts/graphics/ImageMagick/Portfile | 2 +- .../graphics/ImageMagick/Portfile.orig | 2 +- tools/MacPorts/graphics/opencolorio/Portfile | 111 +++++---- .../graphics/opencolorio/Portfile.orig | 83 +++++-- .../graphics/opencolorio/Portfile.patch | 217 ++++++++---------- .../opencolorio/files/patch-OCIOZArchive.diff | 17 ++ tools/MacPorts/graphics/openimageio/Portfile | 74 +++--- .../graphics/openimageio/Portfile.orig | 85 +++++-- .../graphics/openimageio/Portfile.patch | 157 ++++++------- .../files/oiio-2.0.8-atomic-load.patch | 4 +- .../files/oiio-2.0.8-invalidatespec.patch | 4 +- .../files/oiio-2.3.20-strnlen.patch | 4 +- .../files/oiio-2.4.6-filesystem.patch | 4 +- .../files/oiio-2.4.6-sysutil.patch | 4 +- ...atch-2.1.20-cmake-disable-wall-werror.diff | 23 ++ ...patch-2.4.5-cmake-disable-wall-werror.diff | 26 +++ .../files/patch-enforce-clang14.diff | 14 ++ .../files/patch-libraw-0.21.0.diff | 113 +++++++++ tools/MacPorts/net/curl/Portfile | 25 +- tools/MacPorts/net/curl/Portfile.orig | 25 +- .../files/SCDynamicStoreCopyProxies.patch | 79 +++++++ tools/MacPorts/net/curl/files/configure.patch | 8 +- tools/MacPorts/print/ghostscript/Portfile | 20 +- .../MacPorts/print/ghostscript/Portfile.orig | 20 +- .../ghostscript/files/patch-base_gspaint.diff | 42 ++++ .../files/patch-psi_imainarg.c.diff | 11 + 28 files changed, 783 insertions(+), 397 deletions(-) create mode 100644 tools/MacPorts/graphics/opencolorio/files/patch-OCIOZArchive.diff create mode 100644 tools/MacPorts/graphics/openimageio/files/patch-2.1.20-cmake-disable-wall-werror.diff create mode 100644 tools/MacPorts/graphics/openimageio/files/patch-2.4.5-cmake-disable-wall-werror.diff create mode 100644 tools/MacPorts/graphics/openimageio/files/patch-enforce-clang14.diff create mode 100644 tools/MacPorts/graphics/openimageio/files/patch-libraw-0.21.0.diff create mode 100644 tools/MacPorts/net/curl/files/SCDynamicStoreCopyProxies.patch create mode 100644 tools/MacPorts/print/ghostscript/files/patch-base_gspaint.diff create mode 100644 tools/MacPorts/print/ghostscript/files/patch-psi_imainarg.c.diff diff --git a/tools/MacPorts/devel/gnutls/Portfile b/tools/MacPorts/devel/gnutls/Portfile index f72c315931..6c44747f4a 100644 --- a/tools/MacPorts/devel/gnutls/Portfile +++ b/tools/MacPorts/devel/gnutls/Portfile @@ -103,6 +103,9 @@ configure.args-append \ --without-zstd \ ac_cv_prog_AWK=/usr/bin/awk +# https://trac.macports.org/wiki/WimplicitFunctionDeclaration#strchr +configure.checks.implicit_function_declaration.whitelist-append strchr + compiler.thread_local_storage yes # Undefined symbols for architecture x86_64: "___get_cpuid_count" diff --git a/tools/MacPorts/devel/gnutls/Portfile.orig b/tools/MacPorts/devel/gnutls/Portfile.orig index 76e37615b6..89bbbbabfb 100644 --- a/tools/MacPorts/devel/gnutls/Portfile.orig +++ b/tools/MacPorts/devel/gnutls/Portfile.orig @@ -103,6 +103,9 @@ configure.args-append \ --without-zstd \ ac_cv_prog_AWK=/usr/bin/awk +# https://trac.macports.org/wiki/WimplicitFunctionDeclaration#strchr +configure.checks.implicit_function_declaration.whitelist-append strchr + compiler.thread_local_storage yes # Undefined symbols for architecture x86_64: "___get_cpuid_count" diff --git a/tools/MacPorts/graphics/ImageMagick/Portfile b/tools/MacPorts/graphics/ImageMagick/Portfile index 618eccaaab..4fcfe2d9cc 100644 --- a/tools/MacPorts/graphics/ImageMagick/Portfile +++ b/tools/MacPorts/graphics/ImageMagick/Portfile @@ -13,7 +13,7 @@ name ImageMagick # 6.9.11-61 changes the major version of libMagickCore which will # require increasing the revision of all ports that link with it. version 6.9.11-60 -revision 9 +revision 10 checksums rmd160 1c293ba06fd43833be35efb4476e559bf137ccef \ sha256 ba0fa683b0721d1f22b0ccb364e4092e9a7a34ffd3bd6348c82b50fd93b1d7ba \ size 9167220 diff --git a/tools/MacPorts/graphics/ImageMagick/Portfile.orig b/tools/MacPorts/graphics/ImageMagick/Portfile.orig index 7ec076e498..2659c68888 100644 --- a/tools/MacPorts/graphics/ImageMagick/Portfile.orig +++ b/tools/MacPorts/graphics/ImageMagick/Portfile.orig @@ -12,7 +12,7 @@ name ImageMagick # 6.9.11-61 changes the major version of libMagickCore which will # require increasing the revision of all ports that link with it. version 6.9.11-60 -revision 9 +revision 10 checksums rmd160 1c293ba06fd43833be35efb4476e559bf137ccef \ sha256 ba0fa683b0721d1f22b0ccb364e4092e9a7a34ffd3bd6348c82b50fd93b1d7ba \ size 9167220 diff --git a/tools/MacPorts/graphics/opencolorio/Portfile b/tools/MacPorts/graphics/opencolorio/Portfile index 4dbbf1da8b..b95c135ca2 100644 --- a/tools/MacPorts/graphics/opencolorio/Portfile +++ b/tools/MacPorts/graphics/opencolorio/Portfile @@ -7,7 +7,7 @@ PortGroup boost 1.0 boost.depends_type build -github.setup AcademySoftwareFoundation OpenColorIO 2.2.0 v +github.setup AcademySoftwareFoundation OpenColorIO 2.2.1 v name opencolorio categories graphics maintainers {mcalhoun @MarcusCalhoun-Lopez} openmaintainer @@ -19,30 +19,33 @@ long_description OpenColorIO (OCIO) is a complete color management solution \ geared towards motion picture production with an emphasis on \ visual effects and computer animation. -checksums rmd160 3f2ab794c6f4df2e8cec24f8d04478f2fe590c73 \ - sha256 646171b8c9d3941da2bf59fcab99f979626f908b6c6fa4d8fe95bda9eec0407b \ - size 11314927 +# please remove "stealth update" workaround on next version update +dist_subdir ${name}/${version}_1 +checksums rmd160 f9369157eeeca1bbce00594b82d00118924816bc \ + sha256 daf215acddf1c3ed443e6c159e369f2c623b015fa07f11fcc76aae9ede665084 \ + size 11342273 # Exclude pre-releases from livecheck github.livecheck.regex {([0-9.]+)} -patchfiles-append missing-CGDisplayCreateUUIDFromDisplayID.diff -patchfiles-append pystring-cmake.diff - -# source assumes at least C++11 compiler -# OpenImageIO requires C++14 -compiler.cxx_standard 2014 configure.args-append \ - -DCMAKE_CXX_STANDARD=14 + -DCMAKE_CONFIGURATION_TYPES=MacPorts -# Add MacPorts to the set of authorized configurations (see CMakeLists.txt:88) -configure.args-append \ - -DCMAKE_CONFIGURATION_TYPES=\"Debug\;Release\;MinSizeRel\;RelWithDebInfo\;MacPorts\" +patchfiles-append \ + patch-OCIOZArchive.diff + +# source assumes C++11 compiler +compiler.cxx_standard 2011 +configure.cxxflags-append \ + -std=c++11 # see https://github.com/imageworks/OpenColorIO/issues/563 configure.cxxflags-append \ -Wno-error=self-assign-field +configure.cxxflags-append \ + -Wno-deprecated-declarations + depends_build-append \ port:pkgconfig @@ -56,30 +59,21 @@ depends_lib-append \ port:tinyxml configure.args-append \ - -DUSE_EXTERNAL_YAML=ON \ - -DUSE_EXTERNAL_TINYXML=ON \ - -DUSE_EXTERNAL_LCMS=ON \ -DOCIO_BUILD_OPENFX=OFF \ -DOCIO_BUILD_TESTS=OFF \ - -DOCIO_BUILD_GPU_TESTS=OFF - -# Use OpenEXR <= 2.5 Half. -# When OpenEXR is upgraded to 3.0, depend on openexr instead, and remove the define. -#depends_lib-append \ -# port:ilmbase -#configure.args-append \ -# -DOCIO_USE_OPENEXR_HALF=ON -depends_lib-append \ - port:imath + -DOCIO_BUILD_GPU_TESTS=OFF \ + -DUSE_EXTERNAL_YAML=ON \ + -DUSE_EXTERNAL_TINYXML=ON \ + -DUSE_EXTERNAL_LCMS=ON # OpenColorIO intentially installs Python module in lib # see https://github.com/imageworks/OpenColorIO/blob/15e96c1f579d3640947a5fcb5ec831383cc3956e/src/pyglue/CMakeLists.txt#L85 -variant python27 description {Build the Python 2.7 bindings} conflicts python36 python37 python38 python39 python310 { +variant python27 description {Build the Python 2.7 bindings} conflicts python36 python37 python38 python39 python310 python311 { depends_lib-append port:python27 port:py27-pybind11 configure.args-append \ - -DPYTHON=${prefix}/bin/python2.7 \ - -DOCIO_PYTHON_VERSION=2.7 + -DOCIO_PYTHON_VERSION=2.7 \ + -DPYTHON=${prefix}/bin/python2.7 post-destroot { xinstall -d -m 0755 \ ${destroot}${frameworks_dir}/Python.framework/Versions/2.7/lib/python2.7/site-packages @@ -89,11 +83,11 @@ variant python27 description {Build the Python 2.7 bindings} conflicts python36 } } -variant python36 description {Build the Python 3.6 bindings} conflicts python27 python37 python38 python39 python310 { +variant python36 description {Build the Python 3.6 bindings} conflicts python27 python37 python38 python39 python310 python311 { depends_lib-append port:python36 port:py36-pybind11 configure.args-append \ - -DPYTHON=${prefix}/bin/python3.6\ - -DOCIO_PYTHON_VERSION=3.6 + -DOCIO_PYTHON_VERSION=3.6 \ + -DPYTHON=${prefix}/bin/python3.6 post-destroot { xinstall -d -m 0755 \ ${destroot}${frameworks_dir}/Python.framework/Versions/3.6/lib/python3.6/site-packages @@ -103,11 +97,11 @@ variant python36 description {Build the Python 3.6 bindings} conflicts python27 } } -variant python37 description {Build the Python 3.7 bindings} conflicts python27 python36 python38 python39 python310 { +variant python37 description {Build the Python 3.7 bindings} conflicts python27 python36 python38 python39 python310 python311 { depends_lib-append port:python37 port:py37-pybind11 configure.args-append \ - -DPYTHON=${prefix}/bin/python3.7\ - -DOCIO_PYTHON_VERSION=3.7 + -DOCIO_PYTHON_VERSION=3.7 \ + -DPYTHON=${prefix}/bin/python3.7 post-destroot { xinstall -d -m 0755 \ ${destroot}${frameworks_dir}/Python.framework/Versions/3.7/lib/python3.7/site-packages @@ -117,11 +111,11 @@ variant python37 description {Build the Python 3.7 bindings} conflicts python27 } } -variant python38 description {Build the Python 3.8 bindings} conflicts python27 python36 python37 python39 python310 { +variant python38 description {Build the Python 3.8 bindings} conflicts python27 python36 python37 python39 python310 python311 { depends_lib-append port:python38 port:py38-pybind11 configure.args-append \ - -DPYTHON=${prefix}/bin/python3.8\ - -DOCIO_PYTHON_VERSION=3.8 + -DOCIO_PYTHON_VERSION=3.8 \ + -DPYTHON=${prefix}/bin/python3.8 post-destroot { xinstall -d -m 0755 \ ${destroot}${frameworks_dir}/Python.framework/Versions/3.8/lib/python3.8/site-packages @@ -131,11 +125,11 @@ variant python38 description {Build the Python 3.8 bindings} conflicts python27 } } -variant python39 description {Build the Python 3.9 bindings} conflicts python27 python36 python37 python38 python310 { +variant python39 description {Build the Python 3.9 bindings} conflicts python27 python36 python37 python38 python310 python311 { depends_lib-append port:python39 port:py39-pybind11 configure.args-append \ - -DPYTHON=${prefix}/bin/python3.9\ - -DOCIO_PYTHON_VERSION=3.9 + -DOCIO_PYTHON_VERSION=3.9 \ + -DPYTHON=${prefix}/bin/python3.9 post-destroot { xinstall -d -m 0755 \ ${destroot}${frameworks_dir}/Python.framework/Versions/3.9/lib/python3.9/site-packages @@ -145,28 +139,43 @@ variant python39 description {Build the Python 3.9 bindings} conflicts python27 } } -variant python310 description {Build the Python 3.10 bindings} conflicts python27 python36 python37 python38 python39 { +variant python310 description {Build the Python 3.10 bindings} conflicts python27 python36 python37 python38 python39 python311 { depends_lib-append port:python310 port:py310-pybind11 configure.args-append \ - -DPYTHON=${prefix}/bin/python3.10\ - -DOCIO_PYTHON_VERSION=3.10 + -DOCIO_PYTHON_VERSION=3.10 \ + -DPYTHON=${prefix}/bin/python3.10 post-destroot { xinstall -d -m 0755 \ ${destroot}${frameworks_dir}/Python.framework/Versions/3.10/lib/python3.10/site-packages ln -s \ - ${prefix}/lib/python3.10/site-packages/PyOpenColorIO.so \ + ${prefix}/lib/python3.9/site-packages/PyOpenColorIO.so \ ${destroot}${frameworks_dir}/Python.framework/Versions/3.10/lib/python3.10/site-packages/ } } -if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39] && ![variant_isset python310]} { - default_variants +python310 + +variant python311 description {Build the Python 3.11 bindings} conflicts python27 python36 python37 python38 python39 python310 { + depends_lib-append port:python311 port:py311-pybind11 + configure.args-append \ + -DOCIO_PYTHON_VERSION=3.11 \ + -DPYTHON=${prefix}/bin/python3.11 + post-destroot { + xinstall -d -m 0755 \ + ${destroot}${frameworks_dir}/Python.framework/Versions/3.11/lib/python3.11/site-packages + ln -s \ + ${prefix}/lib/python3.9/site-packages/PyOpenColorIO.so \ + ${destroot}${frameworks_dir}/Python.framework/Versions/3.11/lib/python3.11/site-packages/ + } +} + +if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39] && ![variant_isset python310] && ![variant_isset python311]} { + default_variants +python311 } -if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39] && ![variant_isset python310]} { +if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39] && ![variant_isset python310] && ![variant_isset python311]} { configure.args-append \ - -DOCIO_BUILD_PYGLUE=OFF \ - -DOCIO_BUILD_PYTHON=OFF + -DOCIO_BUILD_PYTHON=OFF \ + -DOCIO_BUILD_PYGLUE=OFF } # make neither x11 nor quartz default since openimageio depends on opencolorio diff --git a/tools/MacPorts/graphics/opencolorio/Portfile.orig b/tools/MacPorts/graphics/opencolorio/Portfile.orig index 06fe428fa8..931ba0044f 100644 --- a/tools/MacPorts/graphics/opencolorio/Portfile.orig +++ b/tools/MacPorts/graphics/opencolorio/Portfile.orig @@ -7,8 +7,7 @@ PortGroup boost 1.0 boost.depends_type build -github.setup AcademySoftwareFoundation OpenColorIO 1.1.1 v -revision 3 +github.setup AcademySoftwareFoundation OpenColorIO 2.2.0 v name opencolorio categories graphics maintainers {mcalhoun @MarcusCalhoun-Lopez} openmaintainer @@ -22,22 +21,38 @@ long_description OpenColorIO (OCIO) is a complete color management solution \ # please remove "stealth update" workaround on next version update dist_subdir ${name}/${version}_1 -checksums rmd160 81534822cb8350e1b7ba171c91226de996494d02 \ - sha256 b7def3b5383c9b35dc9c0bdd26da74e2199c2b283d52bb84847aa307f70a0bc4 \ - size 13830493 +checksums rmd160 3f2ab794c6f4df2e8cec24f8d04478f2fe590c73 \ + sha256 646171b8c9d3941da2bf59fcab99f979626f908b6c6fa4d8fe95bda9eec0407b \ + size 11314927 # Exclude pre-releases from livecheck github.livecheck.regex {([0-9.]+)} -# see https://github.com/imageworks/OpenColorIO/commit/c43cc918c3e79e324f11ca47e95bfe36e9e0dd15 -patchfiles-append patch-upstream.diff +configure.args-append \ + -DCMAKE_CONFIGURATION_TYPES=MacPorts + +# pin the used version before macOS 11 +# keep in mind that openimageio had the same pin +if {${os.platform} eq "darwin" && ${os.major} < 20} { + github.setup AcademySoftwareFoundation OpenColorIO 1.1.1 v + revision 3 + + checksums rmd160 81534822cb8350e1b7ba171c91226de996494d02 \ + sha256 b7def3b5383c9b35dc9c0bdd26da74e2199c2b283d52bb84847aa307f70a0bc4 \ + size 13830493 + + # see https://github.com/imageworks/OpenColorIO/commit/c43cc918c3e79e324f11ca47e95bfe36e9e0dd15 + patchfiles-append patch-upstream.diff -# see https://gitweb.gentoo.org/repo/gentoo.git/tree/media-libs/opencolorio/files/opencolorio-1.1.0-yaml-cpp-0.6.patch -patchfiles-append patch-yaml-cpp.diff + # see https://gitweb.gentoo.org/repo/gentoo.git/tree/media-libs/opencolorio/files/opencolorio-1.1.0-yaml-cpp-0.6.patch + patchfiles-append patch-yaml-cpp.diff -patchfiles-append patch-yaml-cpp-0.7.diff + patchfiles-append patch-yaml-cpp-0.7.diff -patchfiles-append patch-CMakeLists.txt.diff + patchfiles-append patch-CMakeLists.txt.diff + + livecheck.type none +} # source assumes C++11 compiler compiler.cxx_standard 2011 @@ -48,6 +63,9 @@ configure.cxxflags-append \ configure.cxxflags-append \ -Wno-error=self-assign-field +configure.cxxflags-append \ + -Wno-deprecated-declarations + depends_build-append \ port:pkgconfig @@ -68,7 +86,7 @@ configure.args-append \ # OpenColorIO intentially installs Python module in lib # see https://github.com/imageworks/OpenColorIO/blob/15e96c1f579d3640947a5fcb5ec831383cc3956e/src/pyglue/CMakeLists.txt#L85 -variant python27 description {Build the Python 2.7 bindings} conflicts python36 python37 python38 python39 { +variant python27 description {Build the Python 2.7 bindings} conflicts python36 python37 python38 python39 python310 python311 { depends_lib-append port:python27 configure.args-append \ -DPYTHON=${prefix}/bin/python2.7 @@ -81,7 +99,7 @@ variant python27 description {Build the Python 2.7 bindings} conflicts python36 } } -variant python36 description {Build the Python 3.6 bindings} conflicts python27 python37 python38 python39 { +variant python36 description {Build the Python 3.6 bindings} conflicts python27 python37 python38 python39 python310 python311 { depends_lib-append port:python36 configure.args-append \ -DPYTHON=${prefix}/bin/python3.6 @@ -94,7 +112,7 @@ variant python36 description {Build the Python 3.6 bindings} conflicts python27 } } -variant python37 description {Build the Python 3.7 bindings} conflicts python27 python36 python38 python39 { +variant python37 description {Build the Python 3.7 bindings} conflicts python27 python36 python38 python39 python310 python311 { depends_lib-append port:python37 configure.args-append \ -DPYTHON=${prefix}/bin/python3.7 @@ -107,7 +125,7 @@ variant python37 description {Build the Python 3.7 bindings} conflicts python27 } } -variant python38 description {Build the Python 3.8 bindings} conflicts python27 python36 python37 python39 { +variant python38 description {Build the Python 3.8 bindings} conflicts python27 python36 python37 python39 python310 python311 { depends_lib-append port:python38 configure.args-append \ -DPYTHON=${prefix}/bin/python3.8 @@ -120,7 +138,7 @@ variant python38 description {Build the Python 3.8 bindings} conflicts python27 } } -variant python39 description {Build the Python 3.9 bindings} conflicts python27 python36 python37 python38 { +variant python39 description {Build the Python 3.9 bindings} conflicts python27 python36 python37 python38 python310 python311 { depends_lib-append port:python39 configure.args-append \ -DPYTHON=${prefix}/bin/python3.9 @@ -133,11 +151,38 @@ variant python39 description {Build the Python 3.9 bindings} conflicts python27 } } -if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39]} { - default_variants +python39 +variant python310 description {Build the Python 3.10 bindings} conflicts python27 python36 python37 python38 python39 python311 { + depends_lib-append port:python310 + configure.args-append \ + -DPYTHON=${prefix}/bin/python3.10 + post-destroot { + xinstall -d -m 0755 \ + ${destroot}${frameworks_dir}/Python.framework/Versions/3.10/lib/python3.10/site-packages + ln -s \ + ${prefix}/lib/python3.9/site-packages/PyOpenColorIO.so \ + ${destroot}${frameworks_dir}/Python.framework/Versions/3.10/lib/python3.10/site-packages/ + } +} + + +variant python311 description {Build the Python 3.11 bindings} conflicts python27 python36 python37 python38 python39 python310 { + depends_lib-append port:python311 + configure.args-append \ + -DPYTHON=${prefix}/bin/python3.11 + post-destroot { + xinstall -d -m 0755 \ + ${destroot}${frameworks_dir}/Python.framework/Versions/3.11/lib/python3.11/site-packages + ln -s \ + ${prefix}/lib/python3.9/site-packages/PyOpenColorIO.so \ + ${destroot}${frameworks_dir}/Python.framework/Versions/3.11/lib/python3.11/site-packages/ + } +} + +if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39] && ![variant_isset python310] && ![variant_isset python311]} { + default_variants +python311 } -if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39]} { +if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39] && ![variant_isset python310] && ![variant_isset python311]} { configure.args-append \ -DOCIO_BUILD_PYGLUE=OFF } diff --git a/tools/MacPorts/graphics/opencolorio/Portfile.patch b/tools/MacPorts/graphics/opencolorio/Portfile.patch index c3bbb4711a..a2fc30b6e7 100644 --- a/tools/MacPorts/graphics/opencolorio/Portfile.patch +++ b/tools/MacPorts/graphics/opencolorio/Portfile.patch @@ -1,181 +1,150 @@ ---- Portfile.orig 2022-11-07 09:08:04.000000000 -0800 -+++ Portfile 2022-11-07 09:21:43.000000000 -0800 -@@ -7,8 +7,7 @@ +--- Portfile.orig 2023-08-10 18:32:48.000000000 +0200 ++++ Portfile 2023-08-10 19:04:28.000000000 +0200 +@@ -7,7 +7,7 @@ boost.depends_type build --github.setup AcademySoftwareFoundation OpenColorIO 1.1.1 v --revision 3 -+github.setup AcademySoftwareFoundation OpenColorIO 2.2.0 v +-github.setup AcademySoftwareFoundation OpenColorIO 2.2.0 v ++github.setup AcademySoftwareFoundation OpenColorIO 2.2.1 v name opencolorio categories graphics maintainers {mcalhoun @MarcusCalhoun-Lopez} openmaintainer -@@ -20,29 +19,25 @@ - geared towards motion picture production with an emphasis on \ - visual effects and computer animation. - --# please remove "stealth update" workaround on next version update --dist_subdir ${name}/${version}_1 --checksums rmd160 81534822cb8350e1b7ba171c91226de996494d02 \ -- sha256 b7def3b5383c9b35dc9c0bdd26da74e2199c2b283d52bb84847aa307f70a0bc4 \ -- size 13830493 -+checksums rmd160 3f2ab794c6f4df2e8cec24f8d04478f2fe590c73 \ -+ sha256 646171b8c9d3941da2bf59fcab99f979626f908b6c6fa4d8fe95bda9eec0407b \ -+ size 11314927 +@@ -21,9 +21,9 @@ + + # please remove "stealth update" workaround on next version update + dist_subdir ${name}/${version}_1 +-checksums rmd160 3f2ab794c6f4df2e8cec24f8d04478f2fe590c73 \ +- sha256 646171b8c9d3941da2bf59fcab99f979626f908b6c6fa4d8fe95bda9eec0407b \ +- size 11314927 ++checksums rmd160 f9369157eeeca1bbce00594b82d00118924816bc \ ++ sha256 daf215acddf1c3ed443e6c159e369f2c623b015fa07f11fcc76aae9ede665084 \ ++ size 11342273 # Exclude pre-releases from livecheck github.livecheck.regex {([0-9.]+)} +@@ -31,28 +31,8 @@ + configure.args-append \ + -DCMAKE_CONFIGURATION_TYPES=MacPorts --# see https://github.com/imageworks/OpenColorIO/commit/c43cc918c3e79e324f11ca47e95bfe36e9e0dd15 --patchfiles-append patch-upstream.diff -+patchfiles-append missing-CGDisplayCreateUUIDFromDisplayID.diff -+patchfiles-append pystring-cmake.diff - --# see https://gitweb.gentoo.org/repo/gentoo.git/tree/media-libs/opencolorio/files/opencolorio-1.1.0-yaml-cpp-0.6.patch --patchfiles-append patch-yaml-cpp.diff +-# pin the used version before macOS 11 +-# keep in mind that openimageio had the same pin +-if {${os.platform} eq "darwin" && ${os.major} < 20} { +- github.setup AcademySoftwareFoundation OpenColorIO 1.1.1 v +- revision 3 +- +- checksums rmd160 81534822cb8350e1b7ba171c91226de996494d02 \ +- sha256 b7def3b5383c9b35dc9c0bdd26da74e2199c2b283d52bb84847aa307f70a0bc4 \ +- size 13830493 +- +- # see https://github.com/imageworks/OpenColorIO/commit/c43cc918c3e79e324f11ca47e95bfe36e9e0dd15 +- patchfiles-append patch-upstream.diff +- +- # see https://gitweb.gentoo.org/repo/gentoo.git/tree/media-libs/opencolorio/files/opencolorio-1.1.0-yaml-cpp-0.6.patch +- patchfiles-append patch-yaml-cpp.diff - --patchfiles-append patch-yaml-cpp-0.7.diff +- patchfiles-append patch-yaml-cpp-0.7.diff - --patchfiles-append patch-CMakeLists.txt.diff -+# source assumes at least C++11 compiler -+# OpenImageIO requires C++14 -+compiler.cxx_standard 2014 -+configure.args-append \ -+ -DCMAKE_CXX_STANDARD=14 - --# source assumes C++11 compiler --compiler.cxx_standard 2011 --configure.cxxflags-append \ -- -std=c++11 -+# Add MacPorts to the set of authorized configurations (see CMakeLists.txt:88) -+configure.args-append \ -+ -DCMAKE_CONFIGURATION_TYPES=\"Debug\;Release\;MinSizeRel\;RelWithDebInfo\;MacPorts\" - - # see https://github.com/imageworks/OpenColorIO/issues/563 - configure.cxxflags-append \ -@@ -63,15 +58,28 @@ +- patchfiles-append patch-CMakeLists.txt.diff +- +- livecheck.type none +-} ++patchfiles-append \ ++ patch-OCIOZArchive.diff + + # source assumes C++11 compiler + compiler.cxx_standard 2011 +@@ -79,6 +59,9 @@ + port:tinyxml + configure.args-append \ - -DUSE_EXTERNAL_YAML=ON \ - -DUSE_EXTERNAL_TINYXML=ON \ -- -DUSE_EXTERNAL_LCMS=ON -+ -DUSE_EXTERNAL_LCMS=ON \ + -DOCIO_BUILD_OPENFX=OFF \ + -DOCIO_BUILD_TESTS=OFF \ -+ -DOCIO_BUILD_GPU_TESTS=OFF -+ -+# Use OpenEXR <= 2.5 Half. -+# When OpenEXR is upgraded to 3.0, depend on openexr instead, and remove the define. -+#depends_lib-append \ -+# port:ilmbase -+#configure.args-append \ -+# -DOCIO_USE_OPENEXR_HALF=ON -+depends_lib-append \ -+ port:imath - - # OpenColorIO intentially installs Python module in lib ++ -DOCIO_BUILD_GPU_TESTS=OFF \ + -DUSE_EXTERNAL_YAML=ON \ + -DUSE_EXTERNAL_TINYXML=ON \ + -DUSE_EXTERNAL_LCMS=ON +@@ -87,8 +70,9 @@ # see https://github.com/imageworks/OpenColorIO/blob/15e96c1f579d3640947a5fcb5ec831383cc3956e/src/pyglue/CMakeLists.txt#L85 --variant python27 description {Build the Python 2.7 bindings} conflicts python36 python37 python38 python39 { + variant python27 description {Build the Python 2.7 bindings} conflicts python36 python37 python38 python39 python310 python311 { - depends_lib-append port:python27 -+variant python27 description {Build the Python 2.7 bindings} conflicts python36 python37 python38 python39 python310 { + depends_lib-append port:python27 port:py27-pybind11 configure.args-append \ -- -DPYTHON=${prefix}/bin/python2.7 -+ -DPYTHON=${prefix}/bin/python2.7 \ -+ -DOCIO_PYTHON_VERSION=2.7 ++ -DOCIO_PYTHON_VERSION=2.7 \ + -DPYTHON=${prefix}/bin/python2.7 post-destroot { xinstall -d -m 0755 \ - ${destroot}${frameworks_dir}/Python.framework/Versions/2.7/lib/python2.7/site-packages -@@ -81,10 +89,11 @@ - } +@@ -100,8 +84,9 @@ } --variant python36 description {Build the Python 3.6 bindings} conflicts python27 python37 python38 python39 { + variant python36 description {Build the Python 3.6 bindings} conflicts python27 python37 python38 python39 python310 python311 { - depends_lib-append port:python36 -+variant python36 description {Build the Python 3.6 bindings} conflicts python27 python37 python38 python39 python310 { + depends_lib-append port:python36 port:py36-pybind11 configure.args-append \ -- -DPYTHON=${prefix}/bin/python3.6 -+ -DPYTHON=${prefix}/bin/python3.6\ -+ -DOCIO_PYTHON_VERSION=3.6 ++ -DOCIO_PYTHON_VERSION=3.6 \ + -DPYTHON=${prefix}/bin/python3.6 post-destroot { xinstall -d -m 0755 \ - ${destroot}${frameworks_dir}/Python.framework/Versions/3.6/lib/python3.6/site-packages -@@ -94,10 +103,11 @@ - } +@@ -113,8 +98,9 @@ } --variant python37 description {Build the Python 3.7 bindings} conflicts python27 python36 python38 python39 { + variant python37 description {Build the Python 3.7 bindings} conflicts python27 python36 python38 python39 python310 python311 { - depends_lib-append port:python37 -+variant python37 description {Build the Python 3.7 bindings} conflicts python27 python36 python38 python39 python310 { + depends_lib-append port:python37 port:py37-pybind11 configure.args-append \ -- -DPYTHON=${prefix}/bin/python3.7 -+ -DPYTHON=${prefix}/bin/python3.7\ -+ -DOCIO_PYTHON_VERSION=3.7 ++ -DOCIO_PYTHON_VERSION=3.7 \ + -DPYTHON=${prefix}/bin/python3.7 post-destroot { xinstall -d -m 0755 \ - ${destroot}${frameworks_dir}/Python.framework/Versions/3.7/lib/python3.7/site-packages -@@ -107,10 +117,11 @@ - } +@@ -126,8 +112,9 @@ } --variant python38 description {Build the Python 3.8 bindings} conflicts python27 python36 python37 python39 { + variant python38 description {Build the Python 3.8 bindings} conflicts python27 python36 python37 python39 python310 python311 { - depends_lib-append port:python38 -+variant python38 description {Build the Python 3.8 bindings} conflicts python27 python36 python37 python39 python310 { + depends_lib-append port:python38 port:py38-pybind11 configure.args-append \ -- -DPYTHON=${prefix}/bin/python3.8 -+ -DPYTHON=${prefix}/bin/python3.8\ -+ -DOCIO_PYTHON_VERSION=3.8 ++ -DOCIO_PYTHON_VERSION=3.8 \ + -DPYTHON=${prefix}/bin/python3.8 post-destroot { xinstall -d -m 0755 \ - ${destroot}${frameworks_dir}/Python.framework/Versions/3.8/lib/python3.8/site-packages -@@ -120,10 +131,11 @@ - } +@@ -139,8 +126,9 @@ } --variant python39 description {Build the Python 3.9 bindings} conflicts python27 python36 python37 python38 { + variant python39 description {Build the Python 3.9 bindings} conflicts python27 python36 python37 python38 python310 python311 { - depends_lib-append port:python39 -+variant python39 description {Build the Python 3.9 bindings} conflicts python27 python36 python37 python38 python310 { + depends_lib-append port:python39 port:py39-pybind11 configure.args-append \ -- -DPYTHON=${prefix}/bin/python3.9 -+ -DPYTHON=${prefix}/bin/python3.9\ -+ -DOCIO_PYTHON_VERSION=3.9 ++ -DOCIO_PYTHON_VERSION=3.9 \ + -DPYTHON=${prefix}/bin/python3.9 post-destroot { xinstall -d -m 0755 \ - ${destroot}${frameworks_dir}/Python.framework/Versions/3.9/lib/python3.9/site-packages -@@ -133,13 +145,28 @@ - } +@@ -152,8 +140,9 @@ } --if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39]} { -- default_variants +python39 -+variant python310 description {Build the Python 3.10 bindings} conflicts python27 python36 python37 python38 python39 { + variant python310 description {Build the Python 3.10 bindings} conflicts python27 python36 python37 python38 python39 python311 { +- depends_lib-append port:python310 + depends_lib-append port:python310 port:py310-pybind11 -+ configure.args-append \ -+ -DPYTHON=${prefix}/bin/python3.10\ -+ -DOCIO_PYTHON_VERSION=3.10 -+ post-destroot { -+ xinstall -d -m 0755 \ -+ ${destroot}${frameworks_dir}/Python.framework/Versions/3.10/lib/python3.10/site-packages -+ ln -s \ -+ ${prefix}/lib/python3.10/site-packages/PyOpenColorIO.so \ -+ ${destroot}${frameworks_dir}/Python.framework/Versions/3.10/lib/python3.10/site-packages/ -+ } -+} -+ -+if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39] && ![variant_isset python310]} { -+ default_variants +python310 - } + configure.args-append \ ++ -DOCIO_PYTHON_VERSION=3.10 \ + -DPYTHON=${prefix}/bin/python3.10 + post-destroot { + xinstall -d -m 0755 \ +@@ -166,8 +155,9 @@ + + + variant python311 description {Build the Python 3.11 bindings} conflicts python27 python36 python37 python38 python39 python310 { +- depends_lib-append port:python311 ++ depends_lib-append port:python311 port:py311-pybind11 + configure.args-append \ ++ -DOCIO_PYTHON_VERSION=3.11 \ + -DPYTHON=${prefix}/bin/python3.11 + post-destroot { + xinstall -d -m 0755 \ +@@ -184,6 +174,7 @@ --if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39]} { -+if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39] && ![variant_isset python310]} { + if {![variant_isset python27] && ![variant_isset python36] && ![variant_isset python37] && ![variant_isset python38] && ![variant_isset python39] && ![variant_isset python310] && ![variant_isset python311]} { configure.args-append \ -- -DOCIO_BUILD_PYGLUE=OFF -+ -DOCIO_BUILD_PYGLUE=OFF \ -+ -DOCIO_BUILD_PYTHON=OFF ++ -DOCIO_BUILD_PYTHON=OFF \ + -DOCIO_BUILD_PYGLUE=OFF } - # make neither x11 nor quartz default since openimageio depends on opencolorio diff --git a/tools/MacPorts/graphics/opencolorio/files/patch-OCIOZArchive.diff b/tools/MacPorts/graphics/opencolorio/files/patch-OCIOZArchive.diff new file mode 100644 index 0000000000..a34361459f --- /dev/null +++ b/tools/MacPorts/graphics/opencolorio/files/patch-OCIOZArchive.diff @@ -0,0 +1,17 @@ +--- src/OpenColorIO/OCIOZArchive.cpp.orig 2023-08-10 19:00:47.000000000 +0200 ++++ src/OpenColorIO/OCIOZArchive.cpp 2023-08-10 19:00:58.000000000 +0200 +@@ -24,7 +24,6 @@ + #include "mz_strm_mem.h" + #include "mz_strm_os.h" + #include "mz_strm_split.h" +-#include "mz_strm_zlib.h" + #include "mz_zip.h" + #include "mz_zip_rw.h" + +@@ -630,4 +629,4 @@ + getEntriesMappingFromArchiveFile(m_archiveAbsPath, m_entries); + } + +-} // namespace OCIO_NAMESPACE +\ No newline at end of file ++} // namespace OCIO_NAMESPACE diff --git a/tools/MacPorts/graphics/openimageio/Portfile b/tools/MacPorts/graphics/openimageio/Portfile index 9f0380b874..c999f44d4d 100644 --- a/tools/MacPorts/graphics/openimageio/Portfile +++ b/tools/MacPorts/graphics/openimageio/Portfile @@ -2,15 +2,11 @@ PortSystem 1.0 PortGroup github 1.0 -#PortGroup qt5 1.0 PortGroup cmake 1.1 PortGroup active_variants 1.1 PortGroup compiler_blacklist_versions 1.0 PortGroup boost 1.0 -github.setup OpenImageIO oiio 2.4.8.0 v -revision 100 - name openimageio categories graphics license BSD @@ -20,55 +16,64 @@ long_description OpenImageIO is a library for reading and writing images, related classes, utilities, and applications. platforms darwin -checksums rmd160 856beebc7dd3d26567a4dd8efcd032038c9ee74e \ - sha256 cc91905f862c402ec18d3992e09c7ed34816cf48b1147465ffafda8ce9c1318c \ - size 32130754 +github.setup OpenImageIO oiio 2.4.14.0 v +revision 100 +checksums rmd160 f0c51d041627f1867b3de2b322edaef21ba8ca0e \ + sha256 92ad4b107394b273397baa1abe90207e1f8ef9fd52ffbfc23b46e3b0005d4439 \ + size 47890322 + +github.tarball_from archive + +depends_lib-append port:imath \ + port:openexr + +patchfiles-append oiio-2.0.8-invalidatespec.patch +patchfiles-append oiio-2.0.8-atomic-load.patch +patchfiles-append oiio-2.3.20-strnlen.patch +patchfiles-append oiio-2.4.6-sysutil.patch +patchfiles-append oiio-2.4.6-filesystem.patch -compiler.cxx_standard 2014 # error: multiple overloads of 'address' instantiate to the same signature 'const_pointer (const_reference) const noexcept' # http://lists.llvm.org/pipermail/llvm-bugs/2013-November/031552.html # Seen on OSX 10.9 and older. compiler.blacklist-append {clang < 700} -# OpenVDB header files use C++14 features -configure.args-append -DCMAKE_CXX_STANDARD=14 -compiler.thread_local_storage yes +# OpenVDB header files use C++17 features +compiler.cxx_standard 2017 +configure.args-append -DCMAKE_CXX_STANDARD=17 -worksrcdir oiio-${version} +compiler.thread_local_storage yes -patch.pre_args -p1 -patchfiles \ - oiio-2.0.8-invalidatespec.patch \ - oiio-2.0.8-atomic-load.patch \ - oiio-2.3.20-strnlen.patch \ - oiio-2.4.6-sysutil.patch \ - oiio-2.4.6-filesystem.patch +configure.cxxflags-append \ + -Wno-deprecated-declarations \ + -Wno-error=unknown-warning-option \ + -Wno-unknown-warning-option +# NOTE: Ensure we prepend 'libfmt9', to include it before 'openexr2' set port_libfmt libfmt9 -cmake.module_path-append \ +cmake.module_path-prepend \ ${prefix}/lib/${port_libfmt}/cmake configure.args-append -DFMT_INCLUDE_DIR=${prefix}/include/${port_libfmt} +# Don't treat clang warnings as errors +configure.args-append -DSTOP_ON_WARNINGS=OFF + # avoid # ccache: error: Failed to create directory ${prefix}/var/macports/build/.ccache/tmp: Operation not permitted configure.args-append -DUSE_CCACHE=OFF # do not "Try to download and build any missing dependencies" configure.args-append -DBUILD_MISSING_DEPS=OFF \ - -DBUILD_MISSING_FMT=OFF \ - -DJPEG_INCLUDE_DIR=${prefix}/include \ + -DBUILD_MISSING_FMT=OFF depends_lib-append port:robin-map \ port:zlib \ port:bzip2 \ port:libpng \ port:tiff \ - port:openexr \ port:squish \ port:${port_libfmt} -# optional components - # we need gcc atomics (clang >= 3.5 maybe?, gcc >= 4.8 works) # tested with openimageio 1.4.6rc1: # macports-clang-3.3 and later work @@ -144,7 +149,7 @@ variant natron conflicts ffmpeg qt5 dicom openvdb ptex dicom requires opencolori configure.args-append -DUSE_PYTHON=OFF -set pythons_suffixes {27 36 37 38 39 310} +set pythons_suffixes {27 36 37 38 39 310 311} set pythons_ports {} foreach s ${pythons_suffixes} { @@ -153,7 +158,7 @@ foreach s ${pythons_suffixes} { foreach s ${pythons_suffixes} { set p python${s} - set v [string index ${s} 0].[string index ${s} 1] + set v [string index ${s} 0].[string range ${s} 1 end] set i [lsearch -exact ${pythons_ports} ${p}] set c [lreplace ${pythons_ports} ${i} ${i}] variant ${p} description "Build the Python ${v} bindings" conflicts {*}${c} " @@ -177,15 +182,8 @@ foreach s ${pythons_suffixes} { } # this default version should stay synchronized with python_get_default_version # in the python PortGroup -#if {${set_python_default}} { -# default_variants +python310 -#} - -#configure.args-append -DUSE_FIELD3D=OFF -variant field3d description {Use Field3D.} { -depends_lib-append port:field3d - configure.args-delete -DUSE_FIELD3D:BOOL=FALSE - configure.args-append -DUSE_FIELD3D:BOOL=TRUE +if {${set_python_default}} { + default_variants +python311 } #configure.args-append -DUSE_FFMPEG=OFF @@ -257,6 +255,8 @@ depends_lib-append port:tbb \ configure.args-append -DUSE_OPENVDB:BOOL=TRUE } +configure.args-append -DTBB_ROOT=${prefix}/libexec/tbb + # not in MacPorts configure.args-append -DUSE_NUKE=OFF @@ -269,3 +269,5 @@ depends_lib-append port:dcmtk #configure.args-append -DUSE_WEBP=OFF depends_lib-append port:webp + +github.livecheck.regex {([0-9.]+)} diff --git a/tools/MacPorts/graphics/openimageio/Portfile.orig b/tools/MacPorts/graphics/openimageio/Portfile.orig index ca025ea70e..a1266c038f 100644 --- a/tools/MacPorts/graphics/openimageio/Portfile.orig +++ b/tools/MacPorts/graphics/openimageio/Portfile.orig @@ -8,12 +8,6 @@ PortGroup active_variants 1.1 PortGroup compiler_blacklist_versions 1.0 PortGroup boost 1.0 -github.setup OpenImageIO oiio 2.1.20.0 v -revision 6 -checksums rmd160 d10c488b93ab2335d53545d8a1b35ba4c1babb98 \ - sha256 75222543286d3a12473aa03fdb4e6c9f98760c5ad1ad89d3cf82a5da41385ae0 \ - size 29115990 - name openimageio categories graphics license BSD @@ -22,25 +16,75 @@ description a library for reading and writing images long_description OpenImageIO is a library for reading and writing images, and a bunch of \ related classes, utilities, and applications. -compiler.cxx_standard 2014 +# Pin the used version before macOS 11, which is required by pinned versions +# of opencolorio and osl. +if {${os.platform} eq "darwin" && ${os.major} >= 20} { + set port_latest yes +} else { + set port_latest no +} + +if {${port_latest}} { + github.setup OpenImageIO oiio 2.4.5.0 v + revision 7 + checksums rmd160 32b2b0f0b01268a91fc98cfca948a71e89d8e54b \ + sha256 21177a9665021a99123885cd8383116d15013b6610b4b09bcf209612423fedc5 \ + size 31938357 +} else { + github.setup OpenImageIO oiio 2.1.20.0 v + revision 12 + checksums rmd160 d10c488b93ab2335d53545d8a1b35ba4c1babb98 \ + sha256 75222543286d3a12473aa03fdb4e6c9f98760c5ad1ad89d3cf82a5da41385ae0 \ + size 29115990 + + livecheck.type none +} + +github.tarball_from archive + +if {${port_latest}} { + patchfiles-append patch-enforce-clang14.diff + patchfiles-append patch-2.4.5-cmake-disable-wall-werror.diff + + depends_lib-append port:imath \ + port:openexr +} else { + patchfiles-append patch-FindOpenJpeg.cmake.diff + patchfiles-append patch-libraw-0.21.0.diff + patchfiles-append patch-2.1.20-cmake-disable-wall-werror.diff + + depends_lib-append port:field3d \ + port:openexr2 + + configure.pkg_config_path-prepend \ + ${prefix}/libexec/openexr2/lib/pkgconfig +} + # error: multiple overloads of 'address' instantiate to the same signature 'const_pointer (const_reference) const noexcept' # http://lists.llvm.org/pipermail/llvm-bugs/2013-November/031552.html # Seen on OSX 10.9 and older. compiler.blacklist-append {clang < 700} -# OpenVDB header files use C++14 features -configure.args-append -DCMAKE_CXX_STANDARD=14 -compiler.thread_local_storage yes +# OpenVDB header files use C++17 features +compiler.cxx_standard 2017 +configure.args-append -DCMAKE_CXX_STANDARD=17 -github.tarball_from archive +compiler.thread_local_storage yes -patchfiles-append patch-FindOpenJpeg.cmake.diff +configure.cxxflags-append \ + -Wno-deprecated-declarations \ + -Wno-error=unknown-warning-option \ + -Wno-unknown-warning-option +# NOTE: Ensure we prepend 'libfmt9', to include it before 'openexr2' set port_libfmt libfmt9 -cmake.module_path-append \ +cmake.module_path-prepend \ ${prefix}/lib/${port_libfmt}/cmake configure.args-append -DFMT_INCLUDE_DIR=${prefix}/include/${port_libfmt} +# Don't treat clang warnings as errors +configure.args-append -DSTOP_ON_WARNINGS=OFF + # avoid # ccache: error: Failed to create directory ${prefix}/var/macports/build/.ccache/tmp: Operation not permitted configure.args-append -DUSE_CCACHE=OFF @@ -54,8 +98,6 @@ depends_lib-append port:robin-map \ port:bzip2 \ port:libpng \ port:tiff \ - port:ilmbase \ - port:openexr \ port:squish \ port:${port_libfmt} @@ -67,7 +109,7 @@ qt5.min_version 5.6 configure.args-append -DUSE_PYTHON=OFF -set pythons_suffixes {27 36 37 38 39} +set pythons_suffixes {27 36 37 38 39 310 311} set pythons_ports {} foreach s ${pythons_suffixes} { @@ -76,7 +118,7 @@ foreach s ${pythons_suffixes} { foreach s ${pythons_suffixes} { set p python${s} - set v [string index ${s} 0].[string index ${s} 1] + set v [string index ${s} 0].[string range ${s} 1 end] set i [lsearch -exact ${pythons_ports} ${p}] set c [lreplace ${pythons_ports} ${i} ${i}] variant ${p} description "Build the Python ${v} bindings" conflicts {*}${c} " @@ -101,12 +143,9 @@ foreach s ${pythons_suffixes} { # this default version should stay synchronized with python_get_default_version # in the python PortGroup if {${set_python_default}} { - default_variants +python39 + default_variants +python311 } -#configure.args-append -DUSE_FIELD3D=OFF -depends_lib-append port:field3d - #configure.args-append -DUSE_FFMPEG=OFF depends_lib-append path:lib/libavcodec.dylib:ffmpeg @@ -146,6 +185,8 @@ depends_lib-append port:libraw depends_lib-append port:tbb \ port:openvdb +configure.args-append -DTBB_ROOT=${prefix}/libexec/tbb + # not in MacPorts configure.args-append -DUSE_NUKE=OFF @@ -154,3 +195,5 @@ depends_lib-append port:dcmtk #configure.args-append -DUSE_WEBP=OFF depends_lib-append port:webp + +github.livecheck.regex {([0-9.]+)} diff --git a/tools/MacPorts/graphics/openimageio/Portfile.patch b/tools/MacPorts/graphics/openimageio/Portfile.patch index 1d7631b43c..d3699d10d2 100644 --- a/tools/MacPorts/graphics/openimageio/Portfile.patch +++ b/tools/MacPorts/graphics/openimageio/Portfile.patch @@ -1,79 +1,81 @@ ---- Portfile.orig 2023-05-10 16:09:40.000000000 -0700 -+++ Portfile 2023-05-21 19:27:37.000000000 -0700 -@@ -2,17 +2,14 @@ +--- Portfile.orig 2023-08-10 19:07:00.000000000 +0200 ++++ Portfile 2023-08-10 19:51:16.000000000 +0200 +@@ -2,7 +2,6 @@ PortSystem 1.0 PortGroup github 1.0 -PortGroup qt5 1.0 -+#PortGroup qt5 1.0 PortGroup cmake 1.1 PortGroup active_variants 1.1 PortGroup compiler_blacklist_versions 1.0 - PortGroup boost 1.0 - --github.setup OpenImageIO oiio 2.1.20.0 v --revision 6 --checksums rmd160 d10c488b93ab2335d53545d8a1b35ba4c1babb98 \ -- sha256 75222543286d3a12473aa03fdb4e6c9f98760c5ad1ad89d3cf82a5da41385ae0 \ -- size 29115990 -+github.setup OpenImageIO oiio 2.4.8.0 v -+revision 100 - - name openimageio - categories graphics -@@ -21,6 +18,11 @@ +@@ -15,50 +14,24 @@ description a library for reading and writing images long_description OpenImageIO is a library for reading and writing images, and a bunch of \ related classes, utilities, and applications. +platforms darwin -+ -+checksums rmd160 856beebc7dd3d26567a4dd8efcd032038c9ee74e \ -+ sha256 cc91905f862c402ec18d3992e09c7ed34816cf48b1147465ffafda8ce9c1318c \ -+ size 32130754 - compiler.cxx_standard 2014 +-# Pin the used version before macOS 11, which is required by pinned versions +-# of opencolorio and osl. +-if {${os.platform} eq "darwin" && ${os.major} >= 20} { +- set port_latest yes +-} else { +- set port_latest no +-} +- +-if {${port_latest}} { +- github.setup OpenImageIO oiio 2.4.5.0 v +- revision 7 +- checksums rmd160 32b2b0f0b01268a91fc98cfca948a71e89d8e54b \ +- sha256 21177a9665021a99123885cd8383116d15013b6610b4b09bcf209612423fedc5 \ +- size 31938357 +-} else { +- github.setup OpenImageIO oiio 2.1.20.0 v +- revision 12 +- checksums rmd160 d10c488b93ab2335d53545d8a1b35ba4c1babb98 \ +- sha256 75222543286d3a12473aa03fdb4e6c9f98760c5ad1ad89d3cf82a5da41385ae0 \ +- size 29115990 +- +- livecheck.type none +-} ++github.setup OpenImageIO oiio 2.4.14.0 v ++revision 100 ++checksums rmd160 f0c51d041627f1867b3de2b322edaef21ba8ca0e \ ++ sha256 92ad4b107394b273397baa1abe90207e1f8ef9fd52ffbfc23b46e3b0005d4439 \ ++ size 47890322 + + github.tarball_from archive + +-if {${port_latest}} { +- patchfiles-append patch-enforce-clang14.diff +- patchfiles-append patch-2.4.5-cmake-disable-wall-werror.diff +- +- depends_lib-append port:imath \ +- port:openexr +-} else { +- patchfiles-append patch-FindOpenJpeg.cmake.diff +- patchfiles-append patch-libraw-0.21.0.diff +- patchfiles-append patch-2.1.20-cmake-disable-wall-werror.diff +- +- depends_lib-append port:field3d \ +- port:openexr2 ++depends_lib-append port:imath \ ++ port:openexr + +- configure.pkg_config_path-prepend \ +- ${prefix}/libexec/openexr2/lib/pkgconfig +-} ++patchfiles-append oiio-2.0.8-invalidatespec.patch ++patchfiles-append oiio-2.0.8-atomic-load.patch ++patchfiles-append oiio-2.3.20-strnlen.patch ++patchfiles-append oiio-2.4.6-sysutil.patch ++patchfiles-append oiio-2.4.6-filesystem.patch + # error: multiple overloads of 'address' instantiate to the same signature 'const_pointer (const_reference) const noexcept' -@@ -32,9 +34,15 @@ - - compiler.thread_local_storage yes - --github.tarball_from archive -+worksrcdir oiio-${version} - --patchfiles-append patch-FindOpenJpeg.cmake.diff -+patch.pre_args -p1 -+patchfiles \ -+ oiio-2.0.8-invalidatespec.patch \ -+ oiio-2.0.8-atomic-load.patch \ -+ oiio-2.3.20-strnlen.patch \ -+ oiio-2.4.6-sysutil.patch \ -+ oiio-2.4.6-filesystem.patch - - set port_libfmt libfmt9 - cmake.module_path-append \ -@@ -47,27 +55,96 @@ - - # do not "Try to download and build any missing dependencies" - configure.args-append -DBUILD_MISSING_DEPS=OFF \ -- -DBUILD_MISSING_FMT=OFF -+ -DBUILD_MISSING_FMT=OFF \ -+ -DJPEG_INCLUDE_DIR=${prefix}/include \ - - depends_lib-append port:robin-map \ - port:zlib \ - port:bzip2 \ - port:libpng \ - port:tiff \ -- port:ilmbase \ - port:openexr \ + # http://lists.llvm.org/pipermail/llvm-bugs/2013-November/031552.html +@@ -101,11 +74,78 @@ port:squish \ port:${port_libfmt} - # optional components - --#configure.args-append -DUSE_OPENGL=OFF \ --# -DUSE_QT=OFF --qt5.min_version 5.6 +# we need gcc atomics (clang >= 3.5 maybe?, gcc >= 4.8 works) +# tested with openimageio 1.4.6rc1: +# macports-clang-3.3 and later work @@ -138,8 +140,11 @@ + -DBUILD_FMT_FORCE:BOOL=TRUE \ + -DSTOP_ON_WARNING:BOOL=FALSE + -+# optional components -+ + # optional components + +-#configure.args-append -DUSE_OPENGL=OFF \ +-# -DUSE_QT=OFF +-qt5.min_version 5.6 +default_variants +opencolorio +openjpeg +freetype + +variant natron conflicts ffmpeg qt5 dicom openvdb ptex dicom requires opencolorio openjpeg freetype description {Natron version} { @@ -149,28 +154,8 @@ configure.args-append -DUSE_PYTHON=OFF --set pythons_suffixes {27 36 37 38 39} -+set pythons_suffixes {27 36 37 38 39 310} - - set pythons_ports {} - foreach s ${pythons_suffixes} { -@@ -100,34 +177,58 @@ +@@ -147,26 +187,46 @@ } - # this default version should stay synchronized with python_get_default_version - # in the python PortGroup --if {${set_python_default}} { -- default_variants +python39 --} -+#if {${set_python_default}} { -+# default_variants +python310 -+#} - - #configure.args-append -DUSE_FIELD3D=OFF -+variant field3d description {Use Field3D.} { - depends_lib-append port:field3d -+ configure.args-delete -DUSE_FIELD3D:BOOL=FALSE -+ configure.args-append -DUSE_FIELD3D:BOOL=TRUE -+} #configure.args-append -DUSE_FFMPEG=OFF +variant ffmpeg description {Add FFmpeg support.} { @@ -216,7 +201,7 @@ #configure.args-append -DUSE_GIF=OFF depends_lib-append port:giflib -@@ -136,21 +237,35 @@ +@@ -175,15 +235,25 @@ depends_lib-append port:libheif #configure.args-append -DUSE_PTEX=OFF @@ -240,7 +225,9 @@ + configure.args-append -DUSE_OPENVDB:BOOL=TRUE +} - # not in MacPorts + configure.args-append -DTBB_ROOT=${prefix}/libexec/tbb + +@@ -191,7 +261,11 @@ configure.args-append -DUSE_NUKE=OFF #configure.args-append -DUSE_DICOM=OFF diff --git a/tools/MacPorts/graphics/openimageio/files/oiio-2.0.8-atomic-load.patch b/tools/MacPorts/graphics/openimageio/files/oiio-2.0.8-atomic-load.patch index bf4e33a90c..3335d82d5e 100644 --- a/tools/MacPorts/graphics/openimageio/files/oiio-2.0.8-atomic-load.patch +++ b/tools/MacPorts/graphics/openimageio/files/oiio-2.0.8-atomic-load.patch @@ -1,5 +1,5 @@ ---- oiio-Release-2.0.8/src/libtexture/imagecache.cpp.orig 2019-07-09 09:14:23.000000000 +0200 -+++ oiio-Release-2.0.8/src/libtexture/imagecache.cpp 2019-07-09 09:14:54.000000000 +0200 +--- src/libtexture/imagecache.cpp.orig 2019-07-09 09:14:23.000000000 +0200 ++++ src/libtexture/imagecache.cpp 2019-07-09 09:14:54.000000000 +0200 @@ -350,7 +350,7 @@ std::shared_ptr ImageCacheFile::get_imageinput(ImageCachePerThreadInfo* thread_info) diff --git a/tools/MacPorts/graphics/openimageio/files/oiio-2.0.8-invalidatespec.patch b/tools/MacPorts/graphics/openimageio/files/oiio-2.0.8-invalidatespec.patch index 94901954ad..7df3228917 100644 --- a/tools/MacPorts/graphics/openimageio/files/oiio-2.0.8-invalidatespec.patch +++ b/tools/MacPorts/graphics/openimageio/files/oiio-2.0.8-invalidatespec.patch @@ -1,5 +1,5 @@ ---- oiio-Release-2.0.8/src/libtexture/imagecache_pvt.h.orig 2019-05-03 17:56:26.000000000 -0700 -+++ oiio-Release-2.0.8/src/libtexture/imagecache_pvt.h 2019-05-23 20:53:57.000000000 -0700 +--- src/libtexture/imagecache_pvt.h.orig 2019-05-03 17:56:26.000000000 -0700 ++++ src/libtexture/imagecache_pvt.h 2019-05-23 20:53:57.000000000 -0700 @@ -337,7 +337,8 @@ void invalidate_spec() { diff --git a/tools/MacPorts/graphics/openimageio/files/oiio-2.3.20-strnlen.patch b/tools/MacPorts/graphics/openimageio/files/oiio-2.3.20-strnlen.patch index 2186d84e5d..ea9801caee 100644 --- a/tools/MacPorts/graphics/openimageio/files/oiio-2.3.20-strnlen.patch +++ b/tools/MacPorts/graphics/openimageio/files/oiio-2.3.20-strnlen.patch @@ -1,5 +1,5 @@ ---- oiio-Release-2.3.20.0/src/libutil/strutil.cpp.orig 2022-10-13 23:22:41.000000000 -0700 -+++ oiio-Release-2.3.20.0/src/libutil/strutil.cpp 2022-10-13 23:23:32.000000000 -0700 +--- src/libutil/strutil.cpp.orig 2022-10-13 23:22:41.000000000 -0700 ++++ src/libutil/strutil.cpp 2022-10-13 23:23:32.000000000 -0700 @@ -48,6 +48,20 @@ #include "stb_sprintf.h" diff --git a/tools/MacPorts/graphics/openimageio/files/oiio-2.4.6-filesystem.patch b/tools/MacPorts/graphics/openimageio/files/oiio-2.4.6-filesystem.patch index f55261cb5a..a629878a80 100644 --- a/tools/MacPorts/graphics/openimageio/files/oiio-2.4.6-filesystem.patch +++ b/tools/MacPorts/graphics/openimageio/files/oiio-2.4.6-filesystem.patch @@ -1,5 +1,5 @@ ---- oiio-Release-2.4.6.0/src/libutil/filesystem.cpp.orig 2022-12-07 22:42:34.000000000 -0800 -+++ oiio-Release-2.4.6.0/src/libutil/filesystem.cpp 2022-12-07 23:07:36.000000000 -0800 +--- src/libutil/filesystem.cpp.orig 2022-12-07 22:42:34.000000000 -0800 ++++ src/libutil/filesystem.cpp 2022-12-07 23:07:36.000000000 -0800 @@ -45,6 +45,224 @@ diff --git a/tools/MacPorts/graphics/openimageio/files/oiio-2.4.6-sysutil.patch b/tools/MacPorts/graphics/openimageio/files/oiio-2.4.6-sysutil.patch index 3ea54759b6..2d11b1bc82 100644 --- a/tools/MacPorts/graphics/openimageio/files/oiio-2.4.6-sysutil.patch +++ b/tools/MacPorts/graphics/openimageio/files/oiio-2.4.6-sysutil.patch @@ -1,5 +1,5 @@ ---- oiio-Release-2.4.6.0/src/libutil/sysutil.cpp.orig 2022-12-07 22:37:33.000000000 -0800 -+++ oiio-Release-2.4.6.0/src/libutil/sysutil.cpp 2022-12-07 22:38:56.000000000 -0800 +--- src/libutil/sysutil.cpp.orig 2022-12-07 22:37:33.000000000 -0800 ++++ src/libutil/sysutil.cpp 2022-12-07 22:38:56.000000000 -0800 @@ -571,7 +571,7 @@ return daemon(1, 1) == 0; #endif diff --git a/tools/MacPorts/graphics/openimageio/files/patch-2.1.20-cmake-disable-wall-werror.diff b/tools/MacPorts/graphics/openimageio/files/patch-2.1.20-cmake-disable-wall-werror.diff new file mode 100644 index 0000000000..5a516173ce --- /dev/null +++ b/tools/MacPorts/graphics/openimageio/files/patch-2.1.20-cmake-disable-wall-werror.diff @@ -0,0 +1,23 @@ +--- src/cmake/compiler.cmake.orig 2023-06-26 09:36:34.000000000 -0400 ++++ src/cmake/compiler.cmake 2023-06-26 09:37:53.000000000 -0400 +@@ -82,9 +82,9 @@ + # + option (STOP_ON_WARNING "Stop building if there are any compiler warnings" OFF) + if (NOT MSVC) +- add_compile_options ("-Wall") ++# add_compile_options ("-Wall") + if (STOP_ON_WARNING OR DEFINED ENV{CI}) +- add_compile_options ("-Werror") ++# add_compile_options ("-Werror") + # N.B. Force CI builds (Travis defines $CI) to use -Werror, even if + # STOP_ON_WARNING has been switched off by default, which we may do + # in release branches. +@@ -133,7 +133,7 @@ + # disable warning about unused command line arguments + add_compile_options ("-Qunused-arguments") + # Don't warn if we ask it not to warn about warnings it doesn't know +- add_compile_options ("-Wunknown-warning-option") ++ add_compile_options ("-Wno-unknown-warning-option") + if (CLANG_VERSION_STRING VERSION_GREATER_EQUAL 3.6 OR + APPLECLANG_VERSION_STRING VERSION_GREATER 6.1) + add_compile_options ("-Wno-unused-local-typedefs") diff --git a/tools/MacPorts/graphics/openimageio/files/patch-2.4.5-cmake-disable-wall-werror.diff b/tools/MacPorts/graphics/openimageio/files/patch-2.4.5-cmake-disable-wall-werror.diff new file mode 100644 index 0000000000..2fc2d0948e --- /dev/null +++ b/tools/MacPorts/graphics/openimageio/files/patch-2.4.5-cmake-disable-wall-werror.diff @@ -0,0 +1,26 @@ +--- src/cmake/compiler.cmake.orig 2023-06-26 09:39:08.000000000 -0400 ++++ src/cmake/compiler.cmake 2023-06-26 09:39:45.000000000 -0400 +@@ -100,12 +100,12 @@ + endif() + option (EXTRA_WARNINGS "Enable lots of extra pedantic warnings" OFF) + if (NOT MSVC) +- add_compile_options ("-Wall") ++# add_compile_options ("-Wall") + if (EXTRA_WARNINGS) + add_compile_options ("-Wextra") + endif () + if (STOP_ON_WARNING) +- add_compile_options ("-Werror") ++# add_compile_options ("-Werror") + endif () + endif () + +@@ -151,7 +151,7 @@ + # disable warning about unused command line arguments + add_compile_options ("-Qunused-arguments") + # Don't warn if we ask it not to warn about warnings it doesn't know +- add_compile_options ("-Wunknown-warning-option") ++ add_compile_options ("-Wno-unknown-warning-option") + if (CLANG_VERSION_STRING VERSION_GREATER_EQUAL 3.6 OR + APPLECLANG_VERSION_STRING VERSION_GREATER 6.1) + add_compile_options ("-Wno-unused-local-typedefs") diff --git a/tools/MacPorts/graphics/openimageio/files/patch-enforce-clang14.diff b/tools/MacPorts/graphics/openimageio/files/patch-enforce-clang14.diff new file mode 100644 index 0000000000..e503aa8fd5 --- /dev/null +++ b/tools/MacPorts/graphics/openimageio/files/patch-enforce-clang14.diff @@ -0,0 +1,14 @@ +diff --git src/libtexture/texturesys.cpp src/libtexture/texturesys.cpp +index d2d64dbdb..c0d4fc0e4 100644 +--- src/libtexture/texturesys.cpp ++++ src/libtexture/texturesys.cpp +@@ -2299,9 +2299,7 @@ TextureSystemImpl::sample_bilinear( + else + tile_st %= tilewh; + OIIO_PRAGMA_WARNING_PUSH +-#if OIIO_CLANG_VERSION >= 140000 || OIIO_INTEL_CLANG_VERSION >= 140000 + OIIO_CLANG_PRAGMA(GCC diagnostic ignored "-Wbitwise-instead-of-logical") +-#endif + bool s_onetile = (tile_st[S0] != tilewhmask[S0]) + & (sttex[S0] + 1 == sttex[S1]); + bool t_onetile = (tile_st[T0] != tilewhmask[T0]) diff --git a/tools/MacPorts/graphics/openimageio/files/patch-libraw-0.21.0.diff b/tools/MacPorts/graphics/openimageio/files/patch-libraw-0.21.0.diff new file mode 100644 index 0000000000..1ed16b084a --- /dev/null +++ b/tools/MacPorts/graphics/openimageio/files/patch-libraw-0.21.0.diff @@ -0,0 +1,113 @@ +Backport of: + - https://github.com/OpenImageIO/oiio/commit/3e74eae539bcd3662106009baa64ab23a3e48a75 + - https://github.com/OpenImageIO/oiio/commit/650772433010b5889e6d2694137cace2567ad487 + +diff --git src/raw.imageio/rawinput.cpp src/raw.imageio/rawinput.cpp +index 5c1b96b526..1f19f0c447 100644 +--- src/raw.imageio/rawinput.cpp ++++ src/raw.imageio/rawinput.cpp +@@ -790,8 +790,9 @@ RawInput::get_makernotes_canon() + MAKERF(FlashExposureLock); + MAKERF(ExposureMode); + MAKERF(AESetting); +- MAKERF(HighlightTonePriority); + MAKERF(ImageStabilization); ++# if LIBRAW_VERSION < LIBRAW_MAKE_VERSION(0, 21, 0) ++ MAKERF(HighlightTonePriority); + MAKERF(FocusMode); + MAKER(AFPoint, 0); + MAKERF(FocusContinuous); +@@ -812,6 +813,7 @@ RawInput::get_makernotes_canon() + // short AFPointsSelected[4]; + // ushort PrimaryAFPoint; + } ++# endif + MAKERF(FlashMode); + MAKERF(FlashActivity); + MAKER(FlashBits, 0); +@@ -851,6 +853,7 @@ RawInput::get_makernotes_nikon() + MAKERF(ImageStabilization); + MAKER(VibrationReduction, 0); + MAKERF(VRMode); ++# if LIBRAW_VERSION < LIBRAW_MAKE_VERSION(0, 21, 0) + MAKER(FocusMode, 0); + MAKERF(AFPoint); + MAKER(AFPointsInFocus, 0); +@@ -870,6 +873,7 @@ RawInput::get_makernotes_nikon() + MAKER(AFAreaHeight, 0); + MAKER(ContrastDetectAFInFocus, 0); + } ++# endif + MAKER(FlashSetting, 0); + MAKER(FlashType, 0); + MAKERF(FlashExposureCompensation); +@@ -1016,9 +1020,11 @@ RawInput::get_makernotes_fuji() + MAKERF(ExrMode); + MAKERF(Macro); + MAKERF(Rating); ++# if LIBRAW_VERSION < LIBRAW_MAKE_VERSION(0, 21, 0) + MAKERF(FrameRate); + MAKERF(FrameWidth); + MAKERF(FrameHeight); ++# endif + #endif + } + +diff --git src/raw.imageio/rawinput.cpp src/raw.imageio/rawinput.cpp +index 816dd10c9e..dd41eb6732 100644 +--- src/raw.imageio/rawinput.cpp ++++ src/raw.imageio/rawinput.cpp +@@ -29,9 +29,6 @@ template using auto_ptr = unique_ptr; + } + #endif + +-#include +-#include +- + + // This plugin utilises LibRaw: + // http://www.libraw.org/ +@@ -40,6 +37,18 @@ template using auto_ptr = unique_ptr; + // Example raw images from many camera models: + // https://www.rawsamples.ch + ++#include ++#include ++ ++#if LIBRAW_VERSION < LIBRAW_MAKE_VERSION(0, 15, 0) ++# error "OpenImageIO does not support such an old LibRaw" ++#endif ++ ++// Some structure layouts changed mid-release on this snapshot ++#define LIBRAW_VERSION_AT_LEAST_SNAPSHOT_202110 \ ++ (LIBRAW_VERSION >= LIBRAW_MAKE_VERSION(0, 21, 0) \ ++ && LIBRAW_SHLIB_CURRENT >= 22) ++ + + OIIO_PLUGIN_NAMESPACE_BEGIN + +@@ -1016,6 +1025,16 @@ RawInput::get_makernotes_canon() + MAKERF(ContinuousDrive); + MAKER(SensorWidth, 0); + MAKER(SensorHeight, 0); ++# if LIBRAW_VERSION_AT_LEAST_SNAPSHOT_202110 ++ add(m_make, "SensorLeftBorder", mn.DefaultCropAbsolute.l, false, 0); ++ add(m_make, "SensorTopBorder", mn.DefaultCropAbsolute.t, false, 0); ++ add(m_make, "SensorRightBorder", mn.DefaultCropAbsolute.r, false, 0); ++ add(m_make, "SensorBottomBorder", mn.DefaultCropAbsolute.b, false, 0); ++ add(m_make, "BlackMaskLeftBorder", mn.LeftOpticalBlack.l, false, 0); ++ add(m_make, "BlackMaskTopBorder", mn.LeftOpticalBlack.t, false, 0); ++ add(m_make, "BlackMaskRightBorder", mn.LeftOpticalBlack.r, false, 0); ++ add(m_make, "BlackMaskBottomBorder", mn.LeftOpticalBlack.b, false, 0); ++# else + MAKER(SensorLeftBorder, 0); + MAKER(SensorTopBorder, 0); + MAKER(SensorRightBorder, 0); +@@ -1024,6 +1043,7 @@ RawInput::get_makernotes_canon() + MAKER(BlackMaskTopBorder, 0); + MAKER(BlackMaskRightBorder, 0); + MAKER(BlackMaskBottomBorder, 0); ++# endif + #endif + #if LIBRAW_VERSION >= LIBRAW_MAKE_VERSION(0, 19, 0) + // Extra added with libraw 0.19: diff --git a/tools/MacPorts/net/curl/Portfile b/tools/MacPorts/net/curl/Portfile index 23b53f4bec..126b707d8c 100644 --- a/tools/MacPorts/net/curl/Portfile +++ b/tools/MacPorts/net/curl/Portfile @@ -6,10 +6,10 @@ PortGroup clang_dependency 1.0 # Increase the revision of p5-www-curl whenever the version of curl gets updated. name curl -version 8.1.2 -checksums rmd160 addc890756f1fb7753e841699c052741c46ca6c3 \ - sha256 31b1118eb8bfd43cd95d9a3f146f814ff874f6ed3999b29d94f4d1e7dbac5ef6 \ - size 2612652 +version 8.2.1 +checksums rmd160 b8486b2903708f892bdff05a4f9a593c776a3ec6 \ + sha256 dd322f6bd0a20e6cebdfd388f69e98c3d183bed792cf4713c8a7ef498cba4894 \ + size 2631932 categories net www platforms darwin freebsd @@ -45,9 +45,8 @@ if {${name} eq ${subport}} { port:zlib \ port:zstd - # Prevent curl-config from telling curl's dependents that they have to - # link with all of curl's dependencies as well. patchfiles configure.patch + patchfiles-append SCDynamicStoreCopyProxies.patch configure.args --disable-silent-rules \ --enable-ipv6 \ @@ -218,8 +217,6 @@ if {${name} eq ${subport}} { port:ngtcp2 configure.args-append --with-nghttp3=${prefix} \ --with-ngtcp2=${prefix} - - patchfiles-append patch-lib-vquic-curl_ngtcp2.c.diff } variant openldap description {Support performing Lightweight Directory Access Protocol queries with OpenLDAP} { @@ -285,11 +282,11 @@ subport curl-ca-bundle { # The approximate time (in seconds since the epoch) when the port maintainer # updated the certdata.txt file in this port. (The output of "date +%s".) - set certdata_updated 1676938725 + set certdata_updated 1690233032 # The upstream commit in which certdata.txt was last updated. - set certdata_commit fc546cbeb1cc7a486bc5147bcff3a879374cf213 + set certdata_commit 60b731ed0b92d1f2f7d80dfc54f71fcfecb8ff49 # The date (in YYYYMMDD format) that commit was pushed. - set certdata_date 20221204 + set certdata_date 20230721 set certdata_file certdata.txt # Using tar.bz2 would be preferable because it's smaller but upstream has # disabled the creation of all but zip archives: @@ -310,9 +307,9 @@ subport curl-ca-bundle { distfiles-append ${certdata_distfile}:certdata checksums-append ${certdata_distfile} \ - rmd160 70914b37764956f1ccd907871b4f58d0ee126b23 \ - sha256 56b3095fb443163031bb4941e4e13dd1c703e96172218eb2a0dadb6d22dfe75b \ - size 271958 + rmd160 1102ce76dd1bf44a153cc6cae3a790dcae9e9fda \ + sha256 c4c7820155d24950586d71cdf9a1bdf9ec868116aee5c87c0389d082d0173572 \ + size 286425 extract.only ${curl_distfile} extract.post_args-append ${worksrcdir}/Makefile \ diff --git a/tools/MacPorts/net/curl/Portfile.orig b/tools/MacPorts/net/curl/Portfile.orig index 6ccee67c6b..76ee022c9e 100644 --- a/tools/MacPorts/net/curl/Portfile.orig +++ b/tools/MacPorts/net/curl/Portfile.orig @@ -6,10 +6,10 @@ PortGroup clang_dependency 1.0 # Increase the revision of p5-www-curl whenever the version of curl gets updated. name curl -version 8.1.2 -checksums rmd160 addc890756f1fb7753e841699c052741c46ca6c3 \ - sha256 31b1118eb8bfd43cd95d9a3f146f814ff874f6ed3999b29d94f4d1e7dbac5ef6 \ - size 2612652 +version 8.2.1 +checksums rmd160 b8486b2903708f892bdff05a4f9a593c776a3ec6 \ + sha256 dd322f6bd0a20e6cebdfd388f69e98c3d183bed792cf4713c8a7ef498cba4894 \ + size 2631932 categories net www platforms darwin freebsd @@ -45,9 +45,8 @@ if {${name} eq ${subport}} { port:zlib \ port:zstd - # Prevent curl-config from telling curl's dependents that they have to - # link with all of curl's dependencies as well. patchfiles configure.patch + patchfiles-append SCDynamicStoreCopyProxies.patch configure.args --disable-silent-rules \ --enable-ipv6 \ @@ -214,8 +213,6 @@ if {${name} eq ${subport}} { port:ngtcp2 configure.args-append --with-nghttp3=${prefix} \ --with-ngtcp2=${prefix} - - patchfiles-append patch-lib-vquic-curl_ngtcp2.c.diff } variant openldap description {Support performing Lightweight Directory Access Protocol queries with OpenLDAP} { @@ -281,11 +278,11 @@ subport curl-ca-bundle { # The approximate time (in seconds since the epoch) when the port maintainer # updated the certdata.txt file in this port. (The output of "date +%s".) - set certdata_updated 1676938725 + set certdata_updated 1690233032 # The upstream commit in which certdata.txt was last updated. - set certdata_commit fc546cbeb1cc7a486bc5147bcff3a879374cf213 + set certdata_commit 60b731ed0b92d1f2f7d80dfc54f71fcfecb8ff49 # The date (in YYYYMMDD format) that commit was pushed. - set certdata_date 20221204 + set certdata_date 20230721 set certdata_file certdata.txt # Using tar.bz2 would be preferable because it's smaller but upstream has # disabled the creation of all but zip archives: @@ -306,9 +303,9 @@ subport curl-ca-bundle { distfiles-append ${certdata_distfile}:certdata checksums-append ${certdata_distfile} \ - rmd160 70914b37764956f1ccd907871b4f58d0ee126b23 \ - sha256 56b3095fb443163031bb4941e4e13dd1c703e96172218eb2a0dadb6d22dfe75b \ - size 271958 + rmd160 1102ce76dd1bf44a153cc6cae3a790dcae9e9fda \ + sha256 c4c7820155d24950586d71cdf9a1bdf9ec868116aee5c87c0389d082d0173572 \ + size 286425 extract.only ${curl_distfile} extract.post_args-append ${worksrcdir}/Makefile \ diff --git a/tools/MacPorts/net/curl/files/SCDynamicStoreCopyProxies.patch b/tools/MacPorts/net/curl/files/SCDynamicStoreCopyProxies.patch new file mode 100644 index 0000000000..f01af6320a --- /dev/null +++ b/tools/MacPorts/net/curl/files/SCDynamicStoreCopyProxies.patch @@ -0,0 +1,79 @@ +Temporary fix for: + +dyld: lazy symbol binding failed: Symbol not found: _SCDynamicStoreCopyProxies + Referenced from: /opt/local/lib/libcurl.4.dylib + Expected in: flat namespace + +due to failure to properly identify macOS when using the macOS 10.11 SDK or +earlier. This patch is only tested on macOS and iOS. The upstream fix, which +needs to accommodate iOS, tvOS, watchOS, and every other OS may be different. + +https://github.com/curl/curl/issues/11502 +https://github.com/curl/curl/pull/11516 +--- configure.orig 2023-07-23 16:00:43.000000000 -0500 ++++ configure 2023-07-27 00:57:35.000000000 -0500 +@@ -21707,7 +21707,7 @@ + int main (void) + { + +-#if (TARGET_OS_OSX) ++#if TARGET_OS_MAC && !(defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) + return 0; + #else + #error Not a macOS +--- lib/curl_setup.h.orig 2023-07-23 10:14:56.000000000 -0500 ++++ lib/curl_setup.h 2023-07-27 00:53:49.000000000 -0500 +@@ -258,8 +258,9 @@ + #if defined(__APPLE__) && !defined(USE_ARES) + #include + #define USE_RESOLVE_ON_IPS 1 +-# if !defined(TARGET_OS_OSX) || TARGET_OS_OSX +-# define CURL_OSX_CALL_COPYPROXIES 1 ++# if TARGET_OS_MAC && !(defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) && \ ++ defined(ENABLE_IPV6) ++# define CURL_MACOS_CALL_COPYPROXIES 1 + # endif + #endif + +--- lib/macos.c.orig 2023-07-18 04:46:48.000000000 -0500 ++++ lib/macos.c 2023-07-27 00:55:43.000000000 -0500 +@@ -26,19 +26,16 @@ + + #if defined(__APPLE__) + +-#if !defined(TARGET_OS_OSX) || TARGET_OS_OSX ++#ifdef CURL_MACOS_CALL_COPYPROXIES + + #include + + #include "macos.h" + +-#if defined(ENABLE_IPV6) && defined(CURL_OSX_CALL_COPYPROXIES) + #include +-#endif + + CURLcode Curl_macos_init(void) + { +-#if defined(ENABLE_IPV6) && defined(CURL_OSX_CALL_COPYPROXIES) + { + /* + * The automagic conversion from IPv4 literals to IPv6 literals only +@@ -53,7 +50,6 @@ + if(dict) + CFRelease(dict); + } +-#endif + return CURLE_OK; + } + +--- lib/macos.h.orig 2023-07-18 04:46:48.000000000 -0500 ++++ lib/macos.h 2023-07-27 00:56:07.000000000 -0500 +@@ -25,7 +25,7 @@ + ***************************************************************************/ + #include "curl_setup.h" + +-#if defined(__APPLE__) && (!defined(TARGET_OS_OSX) || TARGET_OS_OSX) ++#ifdef CURL_MACOS_CALL_COPYPROXIES + + CURLcode Curl_macos_init(void); + diff --git a/tools/MacPorts/net/curl/files/configure.patch b/tools/MacPorts/net/curl/files/configure.patch index 2c6f4b99a5..03887d25a2 100644 --- a/tools/MacPorts/net/curl/files/configure.patch +++ b/tools/MacPorts/net/curl/files/configure.patch @@ -1,6 +1,8 @@ ---- configure.orig 2023-05-29 09:53:39.000000000 -0500 -+++ configure 2023-05-30 20:38:38.000000000 -0500 -@@ -14493,7 +14493,7 @@ +Prevent curl-config from telling curl's dependents that they have to link with +all of curl's dependencies as well. +--- configure.orig 2023-07-23 16:00:43.000000000 -0500 ++++ configure 2023-07-27 00:52:12.000000000 -0500 +@@ -14497,7 +14497,7 @@ else whole_archive_flag_spec='' fi diff --git a/tools/MacPorts/print/ghostscript/Portfile b/tools/MacPorts/print/ghostscript/Portfile index 090d41fee6..7f8f64cfae 100644 --- a/tools/MacPorts/print/ghostscript/Portfile +++ b/tools/MacPorts/print/ghostscript/Portfile @@ -4,7 +4,7 @@ PortSystem 1.0 PortGroup muniversal 1.0 name ghostscript -version 9.56.1 +version 10.01.2 revision 1 categories print license AGPL-3 BSD @@ -24,7 +24,7 @@ master_sites https://github.com/ArtifexSoftware/ghostpdl-downloads/releas # Note: this needs to be manually updated for new upstream commits set mappingresources_commit \ - a709991e67196a87af053e2c16d7a65108613a41 + 2dd5e53fb74a01718b9dfd448a0d1cce6fff2aa5 distname ghostpdl-${version} distfiles ${distname}.tar.gz:source \ @@ -33,12 +33,14 @@ distfiles ${distname}.tar.gz:source \ ${mappingresources_commit}.zip:misc patchfiles patch-base_unix-dll.mak.diff \ - patch-base_unixinst.mak.diff + patch-base_unixinst.mak.diff \ + patch-base_gspaint.diff \ + patch-psi_imainarg.c.diff checksums ${distname}.tar.gz \ - rmd160 babe8112b085191511fb9aec32f9162926c582d8 \ - sha256 6bf362286e359e31f934e5aad49db3d88a2382a3cac44b40572861ee5c536664 \ - size 92134638 \ + rmd160 1a21460fb6ec98858a723cd6570a1b98e9f2124a \ + sha256 ee76cb526f5b6683e2adcb65398a1f333f7972289cec960b67aaa227c0d72e88 \ + size 96848797 \ ghostscript-fonts-other-6.0.tar.gz \ rmd160 ab60dbf71e7d91283a106c3df381cadfe173082f \ sha256 4fa051e341167008d37fe34c19d241060cd17b13909932cd7ca7fe759243c2de \ @@ -48,9 +50,9 @@ checksums ${distname}.tar.gz \ sha256 0eb6f356119f2e49b2563210852e17f57f9dcc5755f350a69a46a0d641a0c401 \ size 3752871 \ ${mappingresources_commit}.zip \ - rmd160 6f327e09590d517760dafd99cc7a197e68d85c6e \ - sha256 03bb11a4db4b01f8509e93db469a24f904934fece3b5b9b8be932267ed7173f4 \ - size 1600471 + rmd160 a65458ab9955421cf3085cf84a6eac299e8c93cb \ + sha256 e3971985977cee4b75f6b49f6e43842d3b699c4255d010adb82796073e98fbfe \ + size 1601563 depends_lib port:fontconfig \ port:freetype \ diff --git a/tools/MacPorts/print/ghostscript/Portfile.orig b/tools/MacPorts/print/ghostscript/Portfile.orig index 56fa720bc0..958d860d9c 100644 --- a/tools/MacPorts/print/ghostscript/Portfile.orig +++ b/tools/MacPorts/print/ghostscript/Portfile.orig @@ -4,7 +4,7 @@ PortSystem 1.0 PortGroup muniversal 1.0 name ghostscript -version 9.56.1 +version 10.01.2 revision 1 categories print license AGPL-3 BSD @@ -24,7 +24,7 @@ master_sites https://github.com/ArtifexSoftware/ghostpdl-downloads/releas # Note: this needs to be manually updated for new upstream commits set mappingresources_commit \ - a709991e67196a87af053e2c16d7a65108613a41 + 2dd5e53fb74a01718b9dfd448a0d1cce6fff2aa5 distname ghostpdl-${version} distfiles ${distname}.tar.gz:source \ @@ -33,12 +33,14 @@ distfiles ${distname}.tar.gz:source \ ${mappingresources_commit}.zip:misc patchfiles patch-base_unix-dll.mak.diff \ - patch-base_unixinst.mak.diff + patch-base_unixinst.mak.diff \ + patch-base_gspaint.diff \ + patch-psi_imainarg.c.diff checksums ${distname}.tar.gz \ - rmd160 babe8112b085191511fb9aec32f9162926c582d8 \ - sha256 6bf362286e359e31f934e5aad49db3d88a2382a3cac44b40572861ee5c536664 \ - size 92134638 \ + rmd160 1a21460fb6ec98858a723cd6570a1b98e9f2124a \ + sha256 ee76cb526f5b6683e2adcb65398a1f333f7972289cec960b67aaa227c0d72e88 \ + size 96848797 \ ghostscript-fonts-other-6.0.tar.gz \ rmd160 ab60dbf71e7d91283a106c3df381cadfe173082f \ sha256 4fa051e341167008d37fe34c19d241060cd17b13909932cd7ca7fe759243c2de \ @@ -48,9 +50,9 @@ checksums ${distname}.tar.gz \ sha256 0eb6f356119f2e49b2563210852e17f57f9dcc5755f350a69a46a0d641a0c401 \ size 3752871 \ ${mappingresources_commit}.zip \ - rmd160 6f327e09590d517760dafd99cc7a197e68d85c6e \ - sha256 03bb11a4db4b01f8509e93db469a24f904934fece3b5b9b8be932267ed7173f4 \ - size 1600471 + rmd160 a65458ab9955421cf3085cf84a6eac299e8c93cb \ + sha256 e3971985977cee4b75f6b49f6e43842d3b699c4255d010adb82796073e98fbfe \ + size 1601563 depends_lib port:fontconfig \ port:freetype \ diff --git a/tools/MacPorts/print/ghostscript/files/patch-base_gspaint.diff b/tools/MacPorts/print/ghostscript/files/patch-base_gspaint.diff new file mode 100644 index 0000000000..91d384a4b7 --- /dev/null +++ b/tools/MacPorts/print/ghostscript/files/patch-base_gspaint.diff @@ -0,0 +1,42 @@ +--- base/gspaint.c.orig 2023-03-27 15:49:35.000000000 +0900 ++++ base/gspaint.c 2023-04-27 19:13:03.000000000 +0900 +@@ -208,6 +208,7 @@ + gs_fixed_rect bbox; + gs_int_rect ibox; + uint width, raster, band_space; ++ uint dev_width, dev_height; + uint height, height2; + gs_log2_scale_point log2_scale; + gs_memory_t *mem; +@@ -223,6 +224,7 @@ + if ((ibox.q.y <= ibox.p.y) || (ibox.q.x <= ibox.p.x)) + return 2; + width = (ibox.q.x - ibox.p.x) << log2_scale.x; ++ dev_width = ibox.q.x << log2_scale.x; + raster = bitmap_raster(width); + band_space = raster << log2_scale.y; + height2 = (ibox.q.y - ibox.p.y); +@@ -232,6 +234,7 @@ + if (height > height2) + height = height2; + height <<= log2_scale.y; ++ dev_height = ibox.q.y << log2_scale.y; + mem = pgs->memory; + mdev = gs_alloc_struct(mem, gx_device_memory, &st_device_memory, + "alpha_buffer_init"); +@@ -244,13 +247,9 @@ + } + gs_make_mem_abuf_device(mdev, mem, dev, &log2_scale, + alpha_bits, ibox.p.x << log2_scale.x, devn); +- mdev->width = width; +- mdev->height = height; ++ mdev->width = dev_width; ++ mdev->height = dev_height; + mdev->bitmap_memory = mem; +- /* Set the horrible hacky flag that tells people that the width/height here +- * have been set for *our* convenience, rather than accurately depicting the +- * size of the device for callers. */ +- mdev->non_strict_bounds = 1; + if ((*dev_proc(mdev, open_device)) ((gx_device *) mdev) < 0) { + /* No room for bits, punt. */ + gs_free_object(mem, mdev, "alpha_buffer_init"); diff --git a/tools/MacPorts/print/ghostscript/files/patch-psi_imainarg.c.diff b/tools/MacPorts/print/ghostscript/files/patch-psi_imainarg.c.diff new file mode 100644 index 0000000000..061f509107 --- /dev/null +++ b/tools/MacPorts/print/ghostscript/files/patch-psi_imainarg.c.diff @@ -0,0 +1,11 @@ +--- psi/imainarg.c.orig 2023-06-21 14:10:21 ++++ psi/imainarg.c 2023-07-24 12:51:29 +@@ -1455,7 +1455,7 @@ + print_help_trailer(const gs_main_instance *minst) + { + char buffer[gp_file_name_sizeof]; +- const char *use_htm = "Use.htm", *p = buffer; ++ const char *use_htm = "Ghostscript.pdf", *p = buffer; + uint blen = sizeof(buffer); + + if (gp_file_name_combine(gs_doc_directory, strlen(gs_doc_directory),