gnu: OpenEXR: Update to 2.4.0 [fixes CVE-2018-18443, CVE-2018-18444].
* gnu/packages/patches/ilmbase-fix-tests.patch: Adjust for new origin. * gnu/packages/patches/ilmbase-openexr-pkg-config.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/graphics.scm (ilmbase): Update to 2.4.0. [source]: Change to GIT-FETCH, as tarballs are no longer provided. Add new patch. [build-system]: Change to CMAKE-BUILD-SYSTEM. [arguments]: Add phase to enter the correct source directory. * gnu/packages/graphics.scm (openexr): Update to 2.4.0. [source]: Inherit from ILMBASE, which comes from the same repository. [build-system]: Change to CMAKE-BUILD-SYSTEM. [arguments]: Add phase to enter the correct source directory. * gnu/packages/gstreamer.scm (gst-plugins-bad)[arguments]: Enable C++11. * gnu/packages/image-processing.scm (opencv)[arguments]: Likewise.
This commit is contained in:
parent
d8fbfbf523
commit
942c788949
|
@ -962,6 +962,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
||||||
%D%/packages/patches/idris-test-no-node.patch \
|
%D%/packages/patches/idris-test-no-node.patch \
|
||||||
%D%/packages/patches/ilmbase-fix-tests.patch \
|
%D%/packages/patches/ilmbase-fix-tests.patch \
|
||||||
|
%D%/packages/patches/ilmbase-openexr-pkg-config.patch \
|
||||||
%D%/packages/patches/intltool-perl-compatibility.patch \
|
%D%/packages/patches/intltool-perl-compatibility.patch \
|
||||||
%D%/packages/patches/irrlicht-use-system-libs.patch \
|
%D%/packages/patches/irrlicht-use-system-libs.patch \
|
||||||
%D%/packages/patches/isc-dhcp-4.4.1-fixes-for-newer-bind.patch \
|
%D%/packages/patches/isc-dhcp-4.4.1-fixes-for-newer-bind.patch \
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com>
|
;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com>
|
||||||
;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
|
;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
|
||||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||||
|
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -327,17 +328,25 @@ many more.")
|
||||||
(define-public ilmbase
|
(define-public ilmbase
|
||||||
(package
|
(package
|
||||||
(name "ilmbase")
|
(name "ilmbase")
|
||||||
(version "2.3.0")
|
(version "2.4.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method git-fetch)
|
||||||
(uri (string-append "https://github.com/openexr/openexr/releases"
|
(uri (git-reference
|
||||||
"/download/v" version "/ilmbase-"
|
(url "https://github.com/openexr/openexr")
|
||||||
version ".tar.gz"))
|
(commit (string-append "v" version))))
|
||||||
|
(file-name (git-file-name "ilmbase" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0qiq5bqq9rxhqjiym2k36sx4vq8adgrz6xf6qwizi9bqm78phsa5"))
|
"0g3rz11cvb7gnphp2np9z7bfl7v4dprq4w5hnsvx7yrasgsdyn8s"))
|
||||||
(patches (search-patches "ilmbase-fix-tests.patch"))))
|
(patches (search-patches "ilmbase-fix-tests.patch"
|
||||||
(build-system gnu-build-system)
|
"ilmbase-openexr-pkg-config.patch"))))
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:phases (modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'change-directory
|
||||||
|
(lambda _
|
||||||
|
(chdir "IlmBase")
|
||||||
|
#t)))))
|
||||||
(home-page "http://www.openexr.com/")
|
(home-page "http://www.openexr.com/")
|
||||||
(synopsis "Utility C++ libraries for threads, maths, and exceptions")
|
(synopsis "Utility C++ libraries for threads, maths, and exceptions")
|
||||||
(description
|
(description
|
||||||
|
@ -409,27 +418,26 @@ graphics.")
|
||||||
(define-public openexr
|
(define-public openexr
|
||||||
(package
|
(package
|
||||||
(name "openexr")
|
(name "openexr")
|
||||||
(version "2.3.0")
|
(version (package-version ilmbase))
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(inherit (package-source ilmbase))
|
||||||
(uri (string-append "https://github.com/openexr/openexr/releases"
|
(file-name (git-file-name "openexr" version))
|
||||||
"/download/v" version "/openexr-"
|
|
||||||
version ".tar.gz"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"19jywbs9qjvsbkvlvzayzi81s976k53wg53vw4xj66lcgylb6v7x"))
|
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(begin
|
'(begin
|
||||||
(substitute* (find-files "." "tmpDir\\.h")
|
(substitute* (find-files "OpenEXR" "tmpDir\\.h")
|
||||||
(("\"/var/tmp/\"")
|
(("\"/var/tmp/\"")
|
||||||
"\"/tmp/\""))
|
"\"/tmp/\""))
|
||||||
#t))))
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases
|
'(#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'disable-broken-test
|
(add-after 'unpack 'change-directory
|
||||||
|
(lambda _
|
||||||
|
(chdir "OpenEXR")
|
||||||
|
#t))
|
||||||
|
(add-after 'change-directory 'disable-broken-test
|
||||||
;; This test fails on i686. Upstream developers suggest that
|
;; This test fails on i686. Upstream developers suggest that
|
||||||
;; this test is broken on i686 and can be safely disabled:
|
;; this test is broken on i686 and can be safely disabled:
|
||||||
;; https://github.com/openexr/openexr/issues/67#issuecomment-21169748
|
;; https://github.com/openexr/openexr/issues/67#issuecomment-21169748
|
||||||
|
|
|
@ -286,6 +286,11 @@ developers consider to have good quality code and correct functionality.")
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f ; XXX: 13 of 53 tests fail
|
'(#:tests? #f ; XXX: 13 of 53 tests fail
|
||||||
|
|
||||||
|
;; FIXME: OpenEXR 2.4.0 requires C++ 11 or later. Remove when the
|
||||||
|
;; default compiler is >= GCC 5.
|
||||||
|
#:make-flags '("CXXFLAGS=-std=gnu++11")
|
||||||
|
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
(list (string-append "--with-html-dir="
|
(list (string-append "--with-html-dir="
|
||||||
(assoc-ref %outputs "doc")
|
(assoc-ref %outputs "doc")
|
||||||
|
|
|
@ -269,6 +269,10 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
|
||||||
"-DWITH_CAROTENE=OFF" ; only visible on arm/aarch64
|
"-DWITH_CAROTENE=OFF" ; only visible on arm/aarch64
|
||||||
"-DENABLE_PRECOMPILED_HEADERS=OFF"
|
"-DENABLE_PRECOMPILED_HEADERS=OFF"
|
||||||
|
|
||||||
|
;; FIXME: OpenEXR requires C++11 or later. Remove this when
|
||||||
|
;; the default compiler is GCC 7.
|
||||||
|
"-DCMAKE_CXX_FLAGS=-std=gnu++11"
|
||||||
|
|
||||||
;; CPU-Features:
|
;; CPU-Features:
|
||||||
;; See cmake/OpenCVCompilerOptimizations.cmake
|
;; See cmake/OpenCVCompilerOptimizations.cmake
|
||||||
;; (CPU_ALL_OPTIMIZATIONS) for a list of all optimizations
|
;; (CPU_ALL_OPTIMIZATIONS) for a list of all optimizations
|
||||||
|
|
|
@ -22,10 +22,8 @@ Date: Wed, 24 Feb 2016 01:04:11 +0000
|
||||||
|
|
||||||
Also fix a pre-existing typo.
|
Also fix a pre-existing typo.
|
||||||
|
|
||||||
Index: ilmbase/ImathTest/testBoxAlgo.cpp
|
--- a/IlmBase/ImathTest/testBoxAlgo.cpp
|
||||||
===================================================================
|
+++ b/IlmBase/ImathTest/testBoxAlgo.cpp
|
||||||
--- ilmbase.orig/ImathTest/testBoxAlgo.cpp
|
|
||||||
+++ ilmbase/ImathTest/testBoxAlgo.cpp
|
|
||||||
@@ -886,10 +886,11 @@ boxMatrixTransform ()
|
@@ -886,10 +886,11 @@ boxMatrixTransform ()
|
||||||
|
|
||||||
assert (approximatelyEqual (b2.min, b4.min, e));
|
assert (approximatelyEqual (b2.min, b4.min, e));
|
||||||
|
@ -54,10 +52,8 @@ On 32-bit x86, allow even greater discrepency at double
|
||||||
precision, due to possible double-rounding. See
|
precision, due to possible double-rounding. See
|
||||||
https://lists.nongnu.org/archive/html/openexr-devel/2015-12/msg00001.html
|
https://lists.nongnu.org/archive/html/openexr-devel/2015-12/msg00001.html
|
||||||
|
|
||||||
Index: ilmbase/ImathTest/testBox.cpp
|
--- a/IlmBase/ImathTest/testBox.cpp
|
||||||
===================================================================
|
+++ b/IlmBase/ImathTest/testBox.cpp
|
||||||
--- ilmbase.orig/ImathTest/testBox.cpp
|
|
||||||
+++ ilmbase/ImathTest/testBox.cpp
|
|
||||||
@@ -47,6 +47,58 @@ using namespace IMATH_INTERNAL_NAMESPACE
|
@@ -47,6 +47,58 @@ using namespace IMATH_INTERNAL_NAMESPACE
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
|
@ -0,0 +1,40 @@
|
||||||
|
Fix pkg-config files when using the CMake build system.
|
||||||
|
|
||||||
|
Upstream bug report:
|
||||||
|
https://github.com/openexr/openexr/issues/567
|
||||||
|
|
||||||
|
diff --git a/IlmBase/config/CMakeLists.txt b/IlmBase/config/CMakeLists.txt
|
||||||
|
index 508176a..9e6ab91 100644
|
||||||
|
--- a/IlmBase/config/CMakeLists.txt
|
||||||
|
+++ b/IlmBase/config/CMakeLists.txt
|
||||||
|
@@ -71,9 +71,9 @@ if(ILMBASE_INSTALL_PKG_CONFIG)
|
||||||
|
# use a helper function to avoid variable pollution, but pretty simple
|
||||||
|
function(ilmbase_pkg_config_help pcinfile)
|
||||||
|
set(prefix ${CMAKE_INSTALL_PREFIX})
|
||||||
|
- set(exec_prefix ${CMAKE_INSTALL_BINDIR})
|
||||||
|
- set(libdir ${CMAKE_INSTALL_LIBDIR})
|
||||||
|
- set(includedir ${CMAKE_INSTALL_INCLUDEDIR})
|
||||||
|
+ set(exec_prefix ${CMAKE_INSTALL_FULL_BINDIR})
|
||||||
|
+ set(libdir ${CMAKE_INSTALL_FULL_LIBDIR})
|
||||||
|
+ set(includedir ${CMAKE_INSTALL_FULL_INCLUDEDIR})
|
||||||
|
set(LIB_SUFFIX_DASH ${ILMBASE_LIB_SUFFIX})
|
||||||
|
if(TARGET Threads::Threads)
|
||||||
|
# hrm, can't use properties as they end up as generator expressions
|
||||||
|
diff --git a/OpenEXR/config/CMakeLists.txt b/OpenEXR/config/CMakeLists.txt
|
||||||
|
index 1ef829a..b8dc141 100644
|
||||||
|
--- a/OpenEXR/config/CMakeLists.txt
|
||||||
|
+++ b/OpenEXR/config/CMakeLists.txt
|
||||||
|
@@ -72,9 +72,9 @@ if(OPENEXR_INSTALL_PKG_CONFIG)
|
||||||
|
# use a helper function to avoid variable pollution, but pretty simple
|
||||||
|
function(openexr_pkg_config_help pcinfile)
|
||||||
|
set(prefix ${CMAKE_INSTALL_PREFIX})
|
||||||
|
- set(exec_prefix ${CMAKE_INSTALL_BINDIR})
|
||||||
|
- set(libdir ${CMAKE_INSTALL_LIBDIR})
|
||||||
|
- set(includedir ${CMAKE_INSTALL_INCLUDEDIR})
|
||||||
|
+ set(exec_prefix ${CMAKE_INSTALL_FULL_BINDIR})
|
||||||
|
+ set(libdir ${CMAKE_INSTALL_FULL_LIBDIR})
|
||||||
|
+ set(includedir ${CMAKE_INSTALL_FULL_INCLUDEDIR})
|
||||||
|
set(LIB_SUFFIX_DASH ${OPENEXR_LIB_SUFFIX})
|
||||||
|
if(TARGET Threads::Threads)
|
||||||
|
# hrm, can't use properties as they end up as generator expressions
|
||||||
|
|
Loading…
Reference in New Issue