[PATCH 0/3] Add OpenEXR version 3.

DoneSubmitted by Vinicius Monego.
Details
2 participants
  • Leo Famulari
  • Vinicius Monego
Owner
unassigned
Severity
normal
V
V
Vinicius Monego wrote on 23 Oct 14:13 +0200
(address . guix-patches@gnu.org)(name . Vinicius Monego)(address . monego@posteo.net)
20211023121332.5443-1-monego@posteo.net
These patches add OpenEXR version 3.
There were structural changes in this version. Part of "ilmbase" (the library for openexr 2) was split into the "imath" package (now in a separate repository), and the other part was merged into openexr 3.
Patches #2 and #3 do not cause any change in derivation (no rebuild).
The description of the openexr packages was also changed to reflect both versions.
Vinicius Monego (3): gnu: Add imath. gnu: Rename openexr to openexr-2. gnu: Add OpenEXR 3.
gnu/packages/animation.scm | 2 +- gnu/packages/gimp.scm | 4 +- gnu/packages/graphics.scm | 80 ++++++++++++++++++++++++++----- gnu/packages/gstreamer.scm | 2 +- gnu/packages/image-processing.scm | 12 ++--- gnu/packages/image-viewers.scm | 2 +- gnu/packages/image.scm | 6 +-- gnu/packages/kde-frameworks.scm | 2 +- gnu/packages/kde.scm | 2 +- gnu/packages/photo.scm | 6 +-- 10 files changed, 87 insertions(+), 31 deletions(-)

base-commit: e1261ddd38cf02a0f046f3a5360502d659b4e7d4-- 2.30.2
V
V
Vinicius Monego wrote on 23 Oct 14:17 +0200
[PATCH 1/3] gnu: Add imath.
(address . 51350@debbugs.gnu.org)(name . Vinicius Monego)(address . monego@posteo.net)
20211023121801.5889-1-monego@posteo.net
* gnu/packages/graphics.scm (imath): New variable.--- gnu/packages/graphics.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+)
Toggle diff (44 lines)diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scmindex 9a5e2f2195..404617aa7b 100644--- a/gnu/packages/graphics.scm+++ b/gnu/packages/graphics.scm@@ -26,6 +26,7 @@ ;;; Copyright © 2021 Antoine Côté <antoine.cote@posteo.net> ;;; Copyright © 2021 Andy Tai <atai@atai.org> ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>+;;; Copyright © 2021 Vinicius Monego <monego@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;;@@ -796,6 +797,29 @@ many more.") ;; permissive licenses. (license license:gpl3+))) +(define-public imath+ (package+ (name "imath")+ (version "3.1.3")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/AcademySoftwareFoundation/Imath")+ (commit (string-append "v" version))))+ (file-name (git-file-name name version))+ (sha256+ (base32 "1nyld18mf220ghm1vidnfnn0rdns9z5i4l9s66xgd0kfdgarb31f"))))+ (build-system cmake-build-system)+ (home-page "https://github.com/AcademySoftwareFoundation/Imath")+ (synopsis "Library of math operations for computer graphics")+ (description+ "Imath is a basic, light-weight, and efficient C++ representation of 2D+and 3D vectors and matrices and other simple but useful mathematical objects,+functions, and data types common in computer graphics applications, including+the @code{half} 16-bit floating-point type.")+ (license license:bsd-3)))+ (define-public ilmbase (package (name "ilmbase")-- 2.30.2
V
V
Vinicius Monego wrote on 23 Oct 14:18 +0200
[PATCH 2/3] gnu: Rename openexr to openexr-2.
(address . 51350@debbugs.gnu.org)(name . Vinicius Monego)(address . monego@posteo.net)
20211023121801.5889-2-monego@posteo.net
This change was automated via the following command:
$ git ls-files | xargs sed -i 's/,openexr)/,openexr-2)/g'$ git checkout etc # to clear some spurious changes
This is done so the openexr package can be upgraded to version 3 in thefollowing commit.--- gnu/packages/animation.scm | 2 +- gnu/packages/gimp.scm | 4 ++-- gnu/packages/graphics.scm | 12 ++++++------ gnu/packages/gstreamer.scm | 2 +- gnu/packages/image-processing.scm | 12 ++++++------ gnu/packages/image-viewers.scm | 2 +- gnu/packages/image.scm | 6 +++--- gnu/packages/kde-frameworks.scm | 2 +- gnu/packages/kde.scm | 2 +- gnu/packages/photo.scm | 6 +++--- 10 files changed, 25 insertions(+), 25 deletions(-)
Toggle diff (267 lines)diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scmindex 6f116af63c..a8ead4295c 100644--- a/gnu/packages/animation.scm+++ b/gnu/packages/animation.scm@@ -179,7 +179,7 @@ C++ @dfn{Standard Template Library} (STL).") ("libxml++" ,libxml++) ("libsigc++" ,libsigc++) ("mlt" ,mlt-6)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("pango" ,pango))) (native-inputs `(("intltool" ,intltool)diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scmindex ae59385d45..11ec47b7e5 100644--- a/gnu/packages/gimp.scm+++ b/gnu/packages/gimp.scm@@ -265,7 +265,7 @@ provided, as well as a framework to add new color models and data types.") ("libtiff" ,libtiff) ("libwebp" ,libwebp) ("maxflow" ,maxflow)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("pango" ,pango) ("poppler" ,poppler) ("sdl2" ,sdl2)))@@ -352,7 +352,7 @@ buffers.") ("libmng" ,libmng) ; optional, MNG support ("librsvg" ,librsvg) ; optional, SVG support ("libxcursor" ,libxcursor) ; optional, Mouse Cursor support- ("openexr" ,openexr) ; optional, EXR support+ ("openexr" ,openexr-2) ; optional, EXR support ("openjpeg" ,openjpeg) ; optional, JPEG 2000 support ("poppler" ,poppler) ; optional, PDF support ("poppler-data" ,poppler-data) ; optional, PDF supportdiff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scmindex 404617aa7b..6f478a0b81 100644--- a/gnu/packages/graphics.scm+++ b/gnu/packages/graphics.scm@@ -569,7 +569,7 @@ typically encountered in feature film production.") ("libxrender" ,libxrender) ("opencolorio" ,opencolorio) ("openimageio" ,openimageio)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("opensubdiv" ,opensubdiv) ("ilmbase" ,ilmbase) ("openjpeg" ,openjpeg)@@ -669,7 +669,7 @@ application can be customized via its API for Python scripting.") ("libx11" ,libx11) ("opencolorio" ,opencolorio) ("openimageio" ,openimageio)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("ilmbase" ,ilmbase) ("openjpeg" ,openjpeg) ("libjpeg" ,libjpeg-turbo)@@ -1106,7 +1106,7 @@ graphics.") (home-page "https://www.ogre3d.org/") (license license:expat))) -(define-public openexr+(define-public openexr-2 (package (name "openexr") (version (package-version ilmbase))@@ -1190,7 +1190,7 @@ storage of the \"EXR\" file format for storing 16-bit floating-point images.") ("libjpeg" ,libjpeg-turbo) ("libtiff" ,libtiff) ("giflib" ,giflib)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("ilmbase" ,ilmbase) ("pugixml" ,pugixml) ("python" ,python-wrapper)@@ -1393,7 +1393,7 @@ in Julia).") ("libjpeg" ,libjpeg-turbo) ("libpng" ,libpng) ("libtiff" ,libtiff)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("sdl" ,sdl) ("zlib" ,zlib))) (arguments@@ -1514,7 +1514,7 @@ and is connected to the programming logic using data bindings and commands.") (arguments '(#:tests? #f)) ;no 'test' target ;; Headers include OpenEXR and IlmBase headers.- (propagated-inputs `(("openexr" ,openexr)))+ (propagated-inputs `(("openexr" ,openexr-2))) (home-page "http://ampasctl.sourceforge.net") (synopsis "Color Transformation Language")diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scmindex 73ae2c9815..bb991789da 100644--- a/gnu/packages/gstreamer.scm+++ b/gnu/packages/gstreamer.scm@@ -768,7 +768,7 @@ model to base your own plug-in on, here it is.") ("mesa" ,mesa) ("neon" ,neon) ("openal" ,openal)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("openjpeg" ,openjpeg) ("openssl" ,openssl) ("opus" ,opus)diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scmindex c8b1f20c63..a972ce052c 100644--- a/gnu/packages/image-processing.scm+++ b/gnu/packages/image-processing.scm@@ -160,7 +160,7 @@ licences similar to the Modified BSD licence.")))) ("maxflow" ,maxflow) ("niftilib" ,niftilib) ("nlopt" ,nlopt)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("python-lxml" ,python2-lxml) ("vtk" ,vtk))) (native-inputs@@ -230,7 +230,7 @@ of external libraries that provide additional functionality.") ;; ocioconvert fails: error: conflicting declaration ?typedef void ;; (* PFNGLGETFRAGMENTMATERIALFVSGIXPROC)(GLenum, GLenum, GLfloat*) `(("lcms" ,lcms)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("tinyxml" ,tinyxml))) (home-page "https://opencolorio.org") (synopsis "Color management for visual effects and animation")@@ -635,7 +635,7 @@ integrates with various databases on GUI toolkits such as Qt and Tk.") ("libwebp" ,libwebp) ("zlib" ,zlib) ("gtkglext" ,gtkglext)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("ilmbase" ,ilmbase) ("gtk+" ,gtk+-2) ("python-numpy" ,python-numpy)@@ -701,7 +701,7 @@ vision algorithms. It can be used to do things like: ("libwebp" ,libwebp) ("matio" ,matio) ("niftilib" ,niftilib)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("orc" ,orc) ("pango" ,pango) ("poppler" ,poppler)))@@ -753,7 +753,7 @@ due to its architecture which automatically parallelises the image workflows.") ("libtiff" ,libtiff) ("libx11" ,libx11) ;;("opencv" ,opencv) ;OpenCV is currently broken in the CI- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("zlib" ,zlib))) (home-page "https://gmic.eu/") (synopsis "Full-featured framework for digital image processing")@@ -840,7 +840,7 @@ including 2D color images.") ("matio" ,matio) ("lcms" ,lcms) ("libwebp" ,libwebp)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("poppler" ,poppler) ("gsl" ,gsl))) (native-inputsdiff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scmindex 0bd53aae8f..4f87b63ca1 100644--- a/gnu/packages/image-viewers.scm+++ b/gnu/packages/image-viewers.scm@@ -544,7 +544,7 @@ It supports JPEG, PNG and GIF formats.") ("libpng" ,libpng) ("libjpeg" ,libjpeg-turbo) ("lcms" ,lcms)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("fftw" ,fftwf) ("gsl" ,gsl) ("libtiff" ,libtiff)))diff --git a/gnu/packages/image.scm b/gnu/packages/image.scmindex 8a632c85d3..c1781ba4f2 100644--- a/gnu/packages/image.scm+++ b/gnu/packages/image.scm@@ -1158,7 +1158,7 @@ supplies a generic doubly-linked list and some string functions.") ("libraw" ,libraw) ("libtiff" ,libtiff) ("libwebp" ,libwebp)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("openjpeg" ,openjpeg) ("zlib" ,zlib))) (synopsis "Library for handling popular graphics image formats")@@ -1192,7 +1192,7 @@ graphics image formats like PNG, BMP, JPEG, TIFF and others.") ("libjpeg" ,libjpeg-turbo) ("libpng" ,libpng) ("libtiff" ,libtiff)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("python" ,python-wrapper) ("python-numpy" ,python-numpy) ("zlib" ,zlib)))@@ -1405,7 +1405,7 @@ and XMP metadata of images in various formats.") ("libmng" ,libmng) ("libpng" ,libpng) ("libtiff" ,libtiff)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("zlib" ,zlib))) (synopsis "Library for manipulating many image formats") (description "Developer's Image Library (DevIL) is a library to developdiff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scmindex 00d5eb049d..6a48dc229a 100644--- a/gnu/packages/kde-frameworks.scm+++ b/gnu/packages/kde-frameworks.scm@@ -1816,7 +1816,7 @@ by applications to write metadata.") ("pkg-config" ,pkg-config))) (inputs `(("karchive" ,karchive) ; for Krita and OpenRaster images- ("openexr" ,openexr) ; for OpenEXR high dynamic-range images+ ("openexr" ,openexr-2) ; for OpenEXR high dynamic-range images ("qtbase" ,qtbase-5))) (arguments `(#:phasesdiff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scmindex 6cba017af0..c6f5227e8b 100644--- a/gnu/packages/kde.scm+++ b/gnu/packages/kde.scm@@ -522,7 +522,7 @@ illustrate project schedules.") ("libx11" ,libx11) ("libxcb" ,libxcb) ("libxi" ,libxi)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("perl" ,perl) ("poppler-qt5" ,poppler-qt5) ("qtbase" ,qtbase-5)diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scmindex 908a872b6b..6364323731 100644--- a/gnu/packages/photo.scm+++ b/gnu/packages/photo.scm@@ -413,7 +413,7 @@ overlapping images, as well as some command line tools.") ("libjpeg" ,libjpeg-turbo) ("libpng" ,libpng) ("libtiff" ,libtiff)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("vigra" ,vigra) ("zlib" ,zlib))) (arguments@@ -568,7 +568,7 @@ photographic equipment.") ("libxslt" ,libxslt) ("lua" ,lua) ;optional, for plugins ("opencl-icd-loader" ,opencl-icd-loader) ;optional, for OpenCL support- ("openexr" ,openexr) ;optional, for EXR import/export+ ("openexr" ,openexr-2) ;optional, for EXR import/export ("openjpeg" ,openjpeg) ;optional, for JPEG2000 export ("osm-gps-map" ,osm-gps-map) ;optional, for geotagging view ("pugixml" ,pugixml)@@ -726,7 +726,7 @@ off' shooting directly from the controlling computer.") ("libxi" ,libxi) ("libxmu" ,libxmu) ("mesa" ,mesa)- ("openexr" ,openexr)+ ("openexr" ,openexr-2) ("sqlite" ,sqlite) ("vigra" ,vigra) ("wxwidgets" ,wxwidgets)-- 2.30.2
V
V
Vinicius Monego wrote on 23 Oct 14:18 +0200
[PATCH 3/3] gnu: Add OpenEXR 3.
(address . 51350@debbugs.gnu.org)(name . Vinicius Monego)(address . monego@posteo.net)
20211023121801.5889-3-monego@posteo.net
* gnu/packages/graphics.scm (openexr): New variable.(openexr-2)[home-page]: Use home-page from openexr.[synopsis]: Use synopsis from openexr.[description]: Use description from openexr.[license]: Use license from openexr.--- gnu/packages/graphics.scm | 46 +++++++++++++++++++++++++++++++++------ 1 file changed, 39 insertions(+), 7 deletions(-)
Toggle diff (66 lines)diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scmindex 6f478a0b81..0baf0af6ac 100644--- a/gnu/packages/graphics.scm+++ b/gnu/packages/graphics.scm@@ -1106,6 +1106,41 @@ graphics.") (home-page "https://www.ogre3d.org/") (license license:expat))) +(define-public openexr+ (package+ (name "openexr")+ (version "3.1.2")+ (source+ (origin+ (method git-fetch)+ (uri (git-reference+ (url "https://github.com/AcademySoftwareFoundation/openexr")+ (commit (string-append "v" version))))+ (file-name (git-file-name name version))+ (sha256+ (base32 "0vyclrrikphwkkpyjg8kzh3qzflzk3d6xsidgqllgfdgllr9wmgv"))+ (modules '((guix build utils)))+ (snippet+ '(begin+ (with-directory-excursion "src/test"+ (substitute* (append (find-files "." "tmpDir\\.h")+ '("OpenEXRCoreTest/main.cpp"))+ (("\"/var/tmp/\"")+ "\"/tmp/\"")))+ #t))))+ (build-system cmake-build-system)+ (inputs+ `(("imath" ,imath)+ ("zlib" ,zlib)))+ (home-page "https://www.openexr.com/")+ (synopsis "High-dynamic-range file format library")+ (description+ "OpenEXR provides the specification and reference implementation of the+EXR file format. The purpose of EXR format is to accurately and efficiently+represent high-dynamic-range scene-linear image data and associated metadata,+with strong support for multi-part, multi-channel use cases.")+ (license license:bsd-3)))+ (define-public openexr-2 (package (name "openexr")@@ -1153,13 +1188,10 @@ graphics.") (propagated-inputs `(("ilmbase" ,ilmbase) ;used in public headers ("zlib" ,zlib))) ;OpenEXR.pc reads "-lz"- (home-page "https://www.openexr.com/")- (synopsis "High-dynamic range file format library")- (description- "OpenEXR is a high dynamic-range (HDR) image file format developed for-use in computer imaging applications. The IlmImf C++ libraries support-storage of the \"EXR\" file format for storing 16-bit floating-point images.")- (license license:bsd-3)))+ (home-page (package-home-page openexr))+ (synopsis (package-synopsis openexr))+ (description (package-description openexr))+ (license (package-license openexr)))) (define-public openimageio (package-- 2.30.2
L
L
Leo Famulari wrote on 23 Oct 22:23 +0200
Re: [bug#51350] [PATCH 1/3] gnu: Add imath.
(name . Vinicius Monego)(address . monego@posteo.net)(address . 51350@debbugs.gnu.org)
YXRvWxJt+BStEMjG@jasmine.lan
On Sat, Oct 23, 2021 at 12:17:59PM +0000, Vinicius Monego wrote:
Toggle quote (2 lines)> * gnu/packages/graphics.scm (imath): New variable.
Thanks! This is necessary for updating Blender, so I'm very grateful forthe patch.
Toggle quote (6 lines)> + (description> + "Imath is a basic, light-weight, and efficient C++ representation of 2D> +and 3D vectors and matrices and other simple but useful mathematical objects,> +functions, and data types common in computer graphics applications, including> +the @code{half} 16-bit floating-point type.")
I tweaked the description to remove what I consider "marketing language"such as "light-weight and efficient", and also to properly quote "half".
I pushed this commit as ae3fa855f38bd3952e2cf510bbb58bbe74aeb3f8
L
L
Leo Famulari wrote on 23 Oct 22:24 +0200
Re: [bug#51350] [PATCH 2/3] gnu: Rename openexr to openexr-2.
(name . Vinicius Monego)(address . monego@posteo.net)(address . 51350@debbugs.gnu.org)
YXRvcn+ONvEAmd13@jasmine.lan
On Sat, Oct 23, 2021 at 12:18:00PM +0000, Vinicius Monego wrote:
Toggle quote (8 lines)> This change was automated via the following command:> > $ git ls-files | xargs sed -i 's/,openexr)/,openexr-2)/g'> $ git checkout etc # to clear some spurious changes> > This is done so the openexr package can be upgraded to version 3 in the> following commit.
Thanks! I wrote the commit message and pushed this patch as commitd71336b2e3c86432f174645163d06a3ef83deaae
L
L
Leo Famulari wrote on 23 Oct 22:28 +0200
Re: [bug#51350] [PATCH 3/3] gnu: Add OpenEXR 3.
(name . Vinicius Monego)(address . monego@posteo.net)(address . 51350-done@debbugs.gnu.org)
YXRwYqu/DSI0dzKq@jasmine.lan
On Sat, Oct 23, 2021 at 12:18:01PM +0000, Vinicius Monego wrote:
Toggle quote (6 lines)> * gnu/packages/graphics.scm (openexr): New variable.> (openexr-2)[home-page]: Use home-page from openexr.> [synopsis]: Use synopsis from openexr.> [description]: Use description from openexr.> [license]: Use license from openexr.
Thanks! Pushed as c52ba63c673f90be1d3b52be0051961ed2a9181a
Toggle quote (9 lines)> + (snippet> + '(begin> + (with-directory-excursion "src/test"> + (substitute* (append (find-files "." "tmpDir\\.h")> + '("OpenEXRCoreTest/main.cpp"))> + (("\"/var/tmp/\"")> + "\"/tmp/\"")))> + #t))))
I pushed this patch separately from the rest of the series because I wasgoing to ask you to revise it, changing this snippet to a build phase.But then I realized that it was already like this in the OpenEXR 2package so I went ahead and pushed.
I'll make that change myself shortly. Snippets should be reserved forreally critical problems like fixing bugs or removing nonfreecomponents.
Closed
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send email to 51350@debbugs.gnu.org