X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/e7f62a41b245ca30404c54f3f77930336627c2f7..6a7ac0a829169f665c0aee6cb7899fa943b2d648:/gnu/packages/graphics.scm diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index a4dddb9d34..3ef420cf05 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2016 Andreas Enge ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis ;;; Copyright © 2017, 2018 Ben Woodcroft -;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice +;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2018 Mathieu Othacehe ;;; Copyright © 2018 Alex Kost ;;; Copyright © 2018 Kei Kebreau @@ -17,6 +17,7 @@ ;;; Copyright © 2019 John Soo ;;; Copyright © 2019 Pierre Neidhardt ;;; Copyright © 2019 Marius Bakke +;;; Copyright © 2019 Tanguy Le Carrour ;;; ;;; This file is part of GNU Guix. ;;; @@ -70,6 +71,7 @@ #:use-module (gnu packages readline) #:use-module (gnu packages sdl) #:use-module (gnu packages swig) + #:use-module (gnu packages tbb) #:use-module (gnu packages video) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) @@ -78,6 +80,7 @@ #:use-module (guix build-system python) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix hg-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils)) @@ -85,14 +88,14 @@ (define-public blender (package (name "blender") - (version "2.80") + (version "2.81") (source (origin (method url-fetch) (uri (string-append "https://download.blender.org/source/" - "blender-" version ".tar.gz")) + "blender-" version ".tar.xz")) (sha256 (base32 - "1h550jisdbis50hxwk5kxrvrk1a6sh2fsri3yyj66vhzbi87x7fd")))) + "1prp0f2152f1sz23jlc86vndfvmplb7qhllikkirq7hgpykrshna")))) (build-system cmake-build-system) (arguments (let ((python-version (version-major+minor (package-version python)))) @@ -143,6 +146,8 @@ `(("boost" ,boost) ("jemalloc" ,jemalloc) ("libx11" ,libx11) + ("libxi" ,libxi) + ("libxrender" ,libxrender) ("openimageio" ,openimageio) ("openexr" ,openexr) ("opensubdiv" ,opensubdiv) @@ -160,6 +165,7 @@ ("openal" ,openal) ("python" ,python) ("python-numpy" ,python-numpy) + ("tbb" ,tbb) ("zlib" ,zlib))) (home-page "https://blender.org/") (synopsis "3D graphics creation suite") @@ -289,7 +295,7 @@ more.") (define-public cgal (package (name "cgal") - (version "4.8.1") + (version "4.14.2") (source (origin (method url-fetch) (uri (string-append @@ -297,19 +303,15 @@ more.") "CGAL-" version "/CGAL-" version ".tar.xz")) (sha256 (base32 - "1c41yzl2jg3d6zx5k0iccwqwibp950q7dr7z7pp4xi9wlph3c87s")))) + "08lrp3hfwdypggz4138bnkh6bjxn441zg2y9xnq5mrjfc5ini6w1")))) (build-system cmake-build-system) (arguments - '(;; "RelWithDebInfo" is not supported. - #:build-type "Release" - - ;; No 'test' target. - #:tests? #f)) + '(#:tests? #f)) ; no test target (inputs `(("mpfr" ,mpfr) ("gmp" ,gmp) ("boost" ,boost))) - (home-page "http://cgal.org/") + (home-page "https://www.cgal.org/") (synopsis "Computational geometry algorithms library") (description "CGAL provides easy access to efficient and reliable geometric algorithms @@ -431,23 +433,31 @@ graphics.") #t)))) (build-system cmake-build-system) (arguments - '(#:phases + `(#:phases (modify-phases %standard-phases (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 is broken on i686 and can be safely disabled: - ;; https://github.com/openexr/openexr/issues/67#issuecomment-21169748 + (add-before 'check 'increase-test-timeout (lambda _ - (substitute* "IlmImfTest/main.cpp" - (("#include \"testOptimizedInterleavePatterns.h\"") - "//#include \"testOptimizedInterleavePatterns.h\"") - (("TEST \\(testOptimizedInterleavePatterns") - "//TEST (testOptimizedInterleavePatterns")) - #t))))) + ;; On armhf-linux, we need to override the CTest default + ;; timeout of 1500 seconds for the OpenEXR.IlmImf test. + (setenv "CTEST_TEST_TIMEOUT" "2000") + #t)) + ,@(if (not (target-64bit?)) + `((add-after 'change-directory 'disable-broken-test + ;; This test fails on i686. Upstream developers suggest that + ;; this test is broken on i686 and can be safely disabled: + ;; https://github.com/openexr/openexr/issues/67#issuecomment-21169748 + (lambda _ + (substitute* "IlmImfTest/main.cpp" + ((".*testOptimizedInterleavePatterns.*") "") + ;; This test is broken in 2.4.0 and will be fixed in a later + ;; release: . + ((".*testLargeDataWindowOffsets.*") "")) + #t))) + '())))) (native-inputs `(("pkg-config" ,pkg-config))) (propagated-inputs @@ -663,7 +673,6 @@ virtual reality, scientific visualization and modeling.") (list "COMPILED_BY=Guix" (string-append "--with-boost-libdir=" (assoc-ref %build-inputs "boost") "/lib") - "CXXFLAGS=-std=c++11" "--disable-optimiz-arch") #:phases (modify-phases %standard-phases @@ -753,7 +762,7 @@ realistic reflections, shading, perspective and other effects.") ("graphviz" ,graphviz) ("intltool" ,intltool) ("pkg-config" ,pkg-config) - ("xvfb" ,xorg-server))) + ("xvfb" ,xorg-server-for-tests))) (home-page "https://rapicorn.testbit.org/") (synopsis "Toolkit for rapid development of user interfaces") (description @@ -914,28 +923,25 @@ rendering SVG graphics.") (define-public python-pastel (package (name "python-pastel") - (version "0.1.0") + (version "0.1.1") (source (origin (method url-fetch) (uri (pypi-uri "pastel" version)) (sha256 (base32 - "1hqbm934n5yjwn31aq8h7shrr0rcy326wrqfc856vyn0gr0sy21i")))) + "1qxcrcl8pzh66l8s6hym153mijdhwna0afcsmgca0bj4n80ijfxz")))) (build-system python-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ (invoke "pytest" "pastel" "tests/")))))) (native-inputs `(("python-pytest" ,python-pytest))) (home-page "https://github.com/sdispater/pastel") (synopsis "Library to colorize strings in your terminal") (description "Pastel is a simple library to help you colorize strings in -your terminal. It comes bundled with predefined styles: -@enumerate -@item info: green -@item comment: yellow -@item question: black on cyan -@item error: white on red -@end enumerate -") +your terminal.") (license license:expat))) (define-public python2-pastel @@ -1027,12 +1033,13 @@ requirements.") (define-public opensubdiv (package (name "opensubdiv") - (version "3_4_0") + (version "3.4.0") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/PixarAnimationStudios/OpenSubdiv") - (commit (string-append "v" version)))) + (url "https://github.com/PixarAnimationStudios/OpenSubdiv") + (commit (string-append "v" (string-join (string-split version #\.) + "_"))))) (file-name (git-file-name name version)) (sha256 (base32 @@ -1052,7 +1059,7 @@ requirements.") (setenv "DISPLAY" ":1") #t))))) (native-inputs - `(("xorg-server" ,xorg-server))) + `(("xorg-server" ,xorg-server-for-tests))) (inputs `(("glew" ,glew) ("libxrandr" ,libxrandr) @@ -1109,47 +1116,52 @@ or by subtracting one shape from the other.") (license license:gpl2)))) (define-public coin3D - (package - (name "coin3D") - (version "4.0.0") - (source - (origin - (method url-fetch) - (uri (string-append - "https://bitbucket.org/Coin3D/coin/downloads/coin-" - version "-src.zip")) - (sha256 - (base32 - "1mqwlqzvc9ydfxi0bfskwlil16mbnkphfz36p0zl2mvw6h05aqh0")) - (modules '((guix build utils))) - (snippet - '(begin - (for-each delete-file - '("cfg/csubst.exe" - "cfg/wrapmsvc.exe")) - #t)))) - (build-system cmake-build-system) - (native-inputs - `(("doxygen" ,doxygen) - ("graphviz" ,graphviz))) - (inputs - `(("boost" ,boost) - ("freeglut" ,freeglut) - ("glew" ,glew))) - (arguments - `(#:configure-flags - (list - "-DCOIN_BUILD_DOCUMENTATION_MAN=ON" - (string-append "-DBOOST_ROOT=" - (assoc-ref %build-inputs "boost"))))) - (home-page "https://bitbucket.org/Coin3D/coin/wiki/Home") - (synopsis - "High-level 3D visualization library with Open Inventor 2.1 API") - (description - "Coin is a 3D graphics library with an Application Programming Interface + ;; The ‘4.0.0’ zip archive isn't stable, nor in fact a release. See: + ;; https://bitbucket.org/Coin3D/coin/issues/179/coin-400-srczip-has-been-modified + (let ((revision 1) + (changeset "ab8d0e47a4de3230a8137feb39c142d6ba45f97d")) + (package + (name "coin3D") + (version + (simple-format #f "3.1.3-~A-~A" revision (string-take changeset 7))) + (source + (origin + (method hg-fetch) + (uri (hg-reference + (url "https://bitbucket.org/Coin3D/coin") + (changeset changeset))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1ff44jz6lg4rylljvy69n1hcjh9y6achbv9jpn1cv2sf8cxn3r2j")) + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file + '("cfg/csubst.exe" + "cfg/wrapmsvc.exe")) + #t)))) + (build-system cmake-build-system) + (native-inputs + `(("doxygen" ,doxygen) + ("graphviz" ,graphviz))) + (inputs + `(("boost" ,boost) + ("freeglut" ,freeglut) + ("glew" ,glew))) + (arguments + `(#:configure-flags + (list + "-DCOIN_BUILD_DOCUMENTATION_MAN=ON" + (string-append "-DBOOST_ROOT=" + (assoc-ref %build-inputs "boost"))))) + (home-page "https://bitbucket.org/Coin3D/coin/wiki/Home") + (synopsis + "High-level 3D visualization library with Open Inventor 2.1 API") + (description + "Coin is a 3D graphics library with an Application Programming Interface based on the Open Inventor 2.1 API. For those who are not familiar with Open Inventor, it is a scene-graph based retain-mode rendering and model interaction library, written in C++, which has become the de facto standard graphics library for 3D visualization and visual simulation software in the scientific and engineering community.") - (license license:bsd-3))) + (license license:bsd-3))))