Bug 475598

Summary: Fails to build against OCIO 2.3.0
Product: [Applications] krita Reporter: mchinoune <mehdi.chinoune>
Component: DockersAssignee: Krita Bugs <krita-bugs-null>
Status: RESOLVED FIXED    
Severity: minor CC: griffinvalley
Priority: NOR Keywords: triaged
Version First Reported In: 5.2.0   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Microsoft Windows   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description mchinoune 2023-10-14 08:46:23 UTC
STEPS TO REPRODUCE
1. Build/Install OCIO 2.3.0
2. Build krita against it

OBSERVED RESULT
Fails to build:
```
  [1920/3402] Building CXX object plugins/dockers/lut/CMakeFiles/kritalutdocker_static.dir/ocio_display_filter_vfx2021.cpp.obj
  FAILED: plugins/dockers/lut/CMakeFiles/kritalutdocker_static.dir/ocio_display_filter_vfx2021.cpp.obj 
  D:\M\msys64\clang64\bin\clang++.exe -DBOOST_ALL_NO_LIB -DIMATH_DLL -DKCOREADDONS_LIB -DKGUIADDONS_LIB -DNOMINMAX -DOPENEXR_DLL -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x50900 -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_NO_SIGNALS_SLOTS_KEYWORDS -DQT_NO_URL_CAST_FROM_STRING -DQT_PRINTSUPPORT_LIB -DQT_SQL_LIB -DQT_STRICT_ITERATORS -DQT_SVG_LIB -DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB -DQT_XML_LIB -DTRANSLATION_DOMAIN=\"krita\" -DUNICODE -DWIN32_LEAN_AND_MEAN -DWINVER=0x0602 -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D_USE_MATH_DEFINES -D_WIN32_IE=0x0602 -D_WIN32_WINNT=0x0602 -IC:/_/B/src/build-CLANG64/plugins/dockers/lut -IC:/_/B/src/krita-5.2.0/plugins/dockers/lut -IC:/_/B/src/build-CLANG64/plugins/dockers/lut/kritalutdocker_static_autogen/include -IC:/_/B/src/build-CLANG64 -IC:/_/B/src/krita-5.2.0 -IC:/_/B/src/krita-5.2.0/winquirks -IC:/_/B/src/krita-5.2.0/libs/ui/canvas -IC:/_/B/src/krita-5.2.0/libs/ui/flake -IC:/_/B/src/krita-5.2.0/libs/ui/ora -IC:/_/B/src/krita-5.2.0/libs/ui/tool -IC:/_/B/src/krita-5.2.0/libs/ui/utils -IC:/_/B/src/krita-5.2.0/libs/ui/widgets -IC:/_/B/src/krita-5.2.0/libs/ui/widgets/gradient -IC:/_/B/src/krita-5.2.0/libs/ui/input/wintab -IC:/_/B/src/build-CLANG64/libs/ui -IC:/_/B/src/krita-5.2.0/libs/ui -IC:/_/B/src/build-CLANG64/libs/version -IC:/_/B/src/krita-5.2.0/libs/version -IC:/_/B/src/build-CLANG64/libs/impex -IC:/_/B/src/krita-5.2.0/libs/impex -IC:/_/B/src/krita-5.2.0/libs/image/brushengine -IC:/_/B/src/krita-5.2.0/libs/image/filter -IC:/_/B/src/krita-5.2.0/libs/image/generator -IC:/_/B/src/krita-5.2.0/libs/image/layerstyles -IC:/_/B/src/krita-5.2.0/libs/image/processing -IC:/_/B/src/build-CLANG64/libs/image -IC:/_/B/src/krita-5.2.0/libs/image -IC:/_/B/src/build-CLANG64/libs/widgets -IC:/_/B/src/krita-5.2.0/libs/widgets -IC:/_/B/src/build-CLANG64/libs/global -IC:/_/B/src/krita-5.2.0/libs/global -IC:/_/B/src/krita-5.2.0/libs/flake/commands -IC:/_/B/src/krita-5.2.0/libs/flake/tools -IC:/_/B/src/krita-5.2.0/libs/flake/svg -IC:/_/B/src/krita-5.2.0/libs/flake/text -IC:/_/B/src/build-CLANG64/libs/flake -IC:/_/B/src/krita-5.2.0/libs/flake -IC:/_/B/src/krita-5.2.0/libs/pigment/resources -IC:/_/B/src/krita-5.2.0/libs/pigment/compositeops -IC:/_/B/src/build-CLANG64/libs/pigment -IC:/_/B/src/krita-5.2.0/libs/pigment -IC:/_/B/src/build-CLANG64/libs/koplugin -IC:/_/B/src/krita-5.2.0/libs/koplugin -IC:/_/B/src/build-CLANG64/libs/store -IC:/_/B/src/krita-5.2.0/libs/store -IC:/_/B/src/build-CLANG64/libs/resources -IC:/_/B/src/krita-5.2.0/libs/resources -IC:/_/B/src/build-CLANG64/libs/command -IC:/_/B/src/krita-5.2.0/libs/command -IC:/_/B/src/krita-5.2.0/libs/widgetutils/config -IC:/_/B/src/krita-5.2.0/libs/widgetutils/xmlgui -IC:/_/B/src/build-CLANG64/libs/widgetutils -IC:/_/B/src/krita-5.2.0/libs/widgetutils -IC:/_/B/src/build-CLANG64/libs/multiarch -IC:/_/B/src/krita-5.2.0/libs/multiarch -IC:/_/B/src/build-CLANG64/libs/resourcewidgets -IC:/_/B/src/krita-5.2.0/libs/resourcewidgets -IC:/_/B/src/build-CLANG64/libs/psdutils -IC:/_/B/src/krita-5.2.0/libs/psdutils -IC:/_/B/src/build-CLANG64/libs/metadata -IC:/_/B/src/krita-5.2.0/libs/metadata -IC:/_/B/src/build-CLANG64/libs/color -IC:/_/B/src/krita-5.2.0/libs/color -IC:/_/B/src/build-CLANG64/libs/brush -IC:/_/B/src/krita-5.2.0/libs/brush -isystem D:/M/msys64/clang64/include/KF5/KCoreAddons -isystem D:/M/msys64/clang64/include/KF5 -isystem D:/M/msys64/clang64/include/QtCore -isystem D:/M/msys64/clang64/share/qt5/mkspecs/win32-clang-g++ -isystem D:/M/msys64/clang64/include/KF5/KCompletion -isystem D:/M/msys64/clang64/include/QtWidgets -isystem D:/M/msys64/clang64/include/QtGui -isystem D:/M/msys64/clang64/include/KF5/KI18n -isystem D:/M/msys64/clang64/include/KF5/KItemViews -isystem D:/M/msys64/clang64/include/QtNetwork -isystem D:/M/msys64/clang64/include/eigen3 -isystem D:/M/msys64/clang64/include/QtConcurrent -isystem D:/M/msys64/clang64/include/QtXml -isystem D:/M/msys64/clang64/include/QtSql -isystem D:/M/msys64/clang64/include/KF5/KConfig -isystem D:/M/msys64/clang64/include/KF5/KConfigGui -isystem D:/M/msys64/clang64/include/KF5/KConfigCore -isystem D:/M/msys64/clang64/include/OpenEXR -isystem D:/M/msys64/clang64/include/Imath -isystem D:/M/msys64/clang64/include/KF5/KWidgetsAddons -isystem D:/M/msys64/clang64/include/QtSvg -isystem D:/M/msys64/clang64/include/freetype2 -isystem D:/M/msys64/clang64/include/harfbuzz -isystem D:/M/msys64/clang64/include/QtPrintSupport -isystem D:/M/msys64/clang64/include/KF5/KGuiAddons -isystem D:/M/msys64/clang64/include/OpenColorIO -march=nocona -msahf -mtune=generic -O2 -pipe -fno-operator-names -Wno-gnu-zero-variadic-macro-arguments -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Wvla -Wdate-time -fdiagnostics-color=always -fexceptions -O3 -DNDEBUG -std=gnu++17 -fvisibility=hidden -fvisibility-inlines-hidden -MD -MT plugins/dockers/lut/CMakeFiles/kritalutdocker_static.dir/ocio_display_filter_vfx2021.cpp.obj -MF plugins\dockers\lut\CMakeFiles\kritalutdocker_static.dir\ocio_display_filter_vfx2021.cpp.obj.d -o plugins/dockers/lut/CMakeFiles/kritalutdocker_static.dir/ocio_display_filter_vfx2021.cpp.obj -c C:/_/B/src/krita-5.2.0/plugins/dockers/lut/ocio_display_filter_vfx2021.cpp
  C:/_/B/src/krita-5.2.0/plugins/dockers/lut/ocio_display_filter_vfx2021.cpp:510:100: error: too few arguments to function call, expected 8, have 7
    510 |         shaderDesc->getTexture(idx, textureName, samplerName, width, height, channel, interpolation);
        |         ~~~~~~~~~~~~~~~~~~~~~~                                                                     ^
  D:/M/msys64/clang64/include/OpenColorIO/OpenColorIO.h:3534:18: note: 'getTexture' declared here
   3534 |     virtual void getTexture(unsigned index,
        |                  ^          ~~~~~~~~~~~~~~~
   3535 |                             const char *& textureName,
        |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~
   3536 |                             const char *& samplerName,
        |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~
   3537 |                             unsigned & width,
        |                             ~~~~~~~~~~~~~~~~~
   3538 |                             unsigned & height,
        |                             ~~~~~~~~~~~~~~~~~~
   3539 |                             TextureType & channel,
  
        |                             ~~~~~~~~~~~~~~~~~~~~~~
  
   3540 |                             TextureDimensions & dimensions,
  
        |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  
   3541 |                             Interpolation & interpolation) const = 0;
  
        |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  
  1 error generated.
```

EXPECTED RESULT
Builds successfully.

SOFTWARE/OS VERSIONS
Windows: 10
macOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 5.15.11

ADDITIONAL INFORMATION
Comment 1 wolthera 2023-10-18 10:34:49 UTC
There's an MR in the works: https://invent.kde.org/graphics/krita/-/merge_requests/1942
Comment 2 Dmitry Kazakov 2023-10-20 15:41:51 UTC
Git commit 520c633c2c868f2236d8e56eefecdcb6e3ebd840 by Dmitry Kazakov, on behalf of killy |0veufOrever.
Committed on 20/10/2023 at 17:41.
Pushed by dkazakov into branch 'master'.

Update OCIO to version 2.3.0

M  +2    -2    3rdparty/ext_ocio/CMakeLists.txt
M  +6    -0    plugins/dockers/lut/ocio_display_filter_vfx2021.cpp

https://invent.kde.org/graphics/krita/-/commit/520c633c2c868f2236d8e56eefecdcb6e3ebd840
Comment 3 Dmitry Kazakov 2023-10-20 15:42:21 UTC
Git commit 36c3fff8760468a96626da56e8d9f5933602b7d4 by Dmitry Kazakov, on behalf of killy |0veufOrever.
Committed on 20/10/2023 at 17:42.
Pushed by dkazakov into branch 'krita/5.2'.

Update OCIO to version 2.3.0


(cherry picked from commit 520c633c2c868f2236d8e56eefecdcb6e3ebd840)

M  +2    -2    3rdparty/ext_ocio/CMakeLists.txt
M  +6    -0    plugins/dockers/lut/ocio_display_filter_vfx2021.cpp

https://invent.kde.org/graphics/krita/-/commit/36c3fff8760468a96626da56e8d9f5933602b7d4