guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 001/303] gnu: Add opencolorio.


From: Christopher Allan Webber
Subject: Re: [PATCH 001/303] gnu: Add opencolorio.
Date: Sat, 29 Jul 2017 11:21:20 -0500
User-agent: mu4e 0.9.18; emacs 25.2.1

I have a friend who's a Blender user who said they'd like to see
opencolorio support in the Blender package... this is an old patch,
but maybe worth trying to get in again?

ng0 writes:

> From: ng0 <address@hidden>
>
> * gnu/packages/graphics (opencolorio): New variable.
> * gnu/packages/patches/opencolorio-avoid-bundled-includes.patch
> ---
>  gnu/local.mk                                       |  1 +
>  gnu/packages/graphics.scm                          | 73 
> ++++++++++++++++++++++
>  .../opencolorio-avoid-bundled-includes.patch       | 72 +++++++++++++++++++++
>  3 files changed, 146 insertions(+)
>  create mode 100644 
> gnu/packages/patches/opencolorio-avoid-bundled-includes.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index a7006cb..bc52f1a 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -701,6 +701,7 @@ dist_patch_DATA =                                         
> \
>    %D%/packages/patches/nvi-db4.patch                         \
>    %D%/packages/patches/ocaml-CVE-2015-8869.patch             \
>    %D%/packages/patches/ocaml-findlib-make-install.patch      \
> +  %D%/packages/patches/opencolorio-avoid-bundled-includes.patch \
>    %D%/packages/patches/openexr-missing-samples.patch         \
>    %D%/packages/patches/openjpeg-CVE-2015-6581.patch          \
>    %D%/packages/patches/openjpeg-CVE-2016-5157.patch          \
> diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
> index d0df830..1f04da2 100644
> --- a/gnu/packages/graphics.scm
> +++ b/gnu/packages/graphics.scm
> @@ -5,6 +5,7 @@
>  ;;; Copyright © 2016 Ricardo Wurmus <address@hidden>
>  ;;; Copyright © 2016 Efraim Flashner <address@hidden>
>  ;;; Copyright © 2016 Andreas Enge <address@hidden>
> +;;; Copyright © 2016 ng0 <address@hidden>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -46,18 +47,21 @@
>    #:use-module (gnu packages compression)
>    #:use-module (gnu packages multiprecision)
>    #:use-module (gnu packages boost)
> +  #:use-module (gnu packages ghostscript)
>    #:use-module (gnu packages gl)
>    #:use-module (gnu packages glib)
>    #:use-module (gnu packages graphviz)
>    #:use-module (gnu packages gtk)
>    #:use-module (gnu packages gnome)
>    #:use-module (gnu packages image)
> +  #:use-module (gnu packages java)
>    #:use-module (gnu packages jemalloc)
>    #:use-module (gnu packages photo)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages qt)
>    #:use-module (gnu packages readline)
>    #:use-module (gnu packages sdl)
> +  #:use-module (gnu packages serialization)
>    #:use-module (gnu packages video)
>    #:use-module (gnu packages xml)
>    #:use-module (gnu packages xorg))
> @@ -510,3 +514,72 @@ and understanding different BRDFs (and other component 
> functions).")
>  It supports sub-pixel resolutions and anti-aliasing.  It is also library for
>  rendering SVG graphics.")
>      (license license:gpl2+)))
> +
> +(define-public opencolorio
> +  (package
> +    (name "opencolorio")
> +    (version "1.0.9")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append 
> "https://github.com/imageworks/OpenColorIO/";
> +                                  "archive/v" version ".tar.gz"))
> +              (sha256
> +               (base32
> +                "0zzacmfs4k6lk4yd9v8f6p1616k7sm5wmhk0np93qx8m3ilixj17"))
> +              (patches (search-patches
> +                        "opencolorio-avoid-bundled-includes.patch"))
> +              (file-name (string-append name "-" version ".tar.gz"))))
> +    (build-system cmake-build-system)
> +    (arguments
> +     `(#:configure-flags
> +       (list "-DOCIO_BUILD_JNIGLUE=OFF" "-DOCIO_BUILD_SHARED=ON"
> +             "-DOCIO_BUILD_NUKE=OFF" ; Nuke is commerical software
> +             "-DOCIO_BUILD_STATIC=OFF" "-DOCIO_STATIC_JNIGLUE=OFF"
> +             "-DOCIO_BUILD_TRUELIGHT=OFF" ; Another external software
> +             "-DUSE_EXTERNAL_LCMS=ON" "-DUSE_EXTERNAL_TINYXML=ON"
> +             "-DUSE_EXTERNAL_YAML=ON" ;;"-DOCIO_BUILD_DOCS=ON"
> +             "-DOCIO_BUILD_APPS=ON" ;;"-DOCIO_BUILD_PDF_DOCS=ON"
> +             "-DOCIO_BUILD_PYGLUE=ON")
> +       ;;"-DOCIO_BUILD_TESTS")))
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-before 'configure 'fix-fixes
> +           (lambda _
> +             (substitute* "docs/CMakeLists.txt"
> +               (("add_dependencies(doc Sphinx)") "")
> +               (("add_dependencies(pdf latex)") "")))))))
> +    (inputs
> +     `(("lcms" ,lcms)
> +       ("openimageio" ,openimageio)
> +       ("glew" ,glew)
> +       ("freeglut" ,freeglut)
> +       ("python" ,python)
> +       ("yaml-cpp" ,yaml-cpp)
> +       ("yaml" ,yaml)
> +       ("boost" ,boost)
> +       ("tinyxml" ,tinyxml)
> +       ("python-sphinx" ,python-sphinx)
> +       ("mesa" ,mesa)
> +       ("libxi" ,libxi)
> +       ("libxmu" ,libxmu)
> +       ("pkg-config" ,pkg-config)
> +       ("python" ,python)
> +       ;; https://github.com/imageworks/OpenColorIO/tree/master/ext:
> +       ;; ("python-setuptools" ,python-setuptools) python3.
> +       ("python-jinja2" ,python-jinja2)
> +       ("python-pygments" ,python-pygments)
> +       ("python-docutils" ,python-docutils)
> +       ("java-junit" ,java-junit)))
> +    (home-page "http://opencolorio.org/";)
> +    (synopsis "color management framework for visual effects and animation")
> +    (description
> +     "OpenColorIO (OCIO) is a complete color management solution geared 
> towards
> +motion picture production with an emphasis on visual effects and computer 
> animation.
> +OCIO provides a straightforward and consistent user experience across all
> +supporting applications while allowing for sophisticated back-end 
> configuration
> +options suitable for high-end production usage.  OCIO is compatible with the
> +Academy Color Encoding Specification (ACES) and is LUT-format agnostic,
> +supporting many popular formats.
> +OpenColorIO is natively supported in commercial applications like Katana, 
> Mari,
> +Silhouette FX, and others coming soon.")
> +    (license license:bsd-3)))
> diff --git a/gnu/packages/patches/opencolorio-avoid-bundled-includes.patch 
> b/gnu/packages/patches/opencolorio-avoid-bundled-includes.patch
> new file mode 100644
> index 0000000..e77f733
> --- /dev/null
> +++ b/gnu/packages/patches/opencolorio-avoid-bundled-includes.patch
> @@ -0,0 +1,72 @@
> +Do not use bundled applications from the source of OpenColorIO.
> +
> +--- OpenColorIO-1.0.9/docs/CMakeLists.txt.orig       2016-09-15 
> 09:40:03.932004575 +0000
> ++++ OpenColorIO-1.0.9/docs/CMakeLists.txt    2016-09-15 09:41:04.420845978 
> +0000
> +@@ -1,67 +1,3 @@
> +-
> +-###############################################################################
> +-### External Doc Apps ###
> +-
> +-# setuptools
> +-# https://pypi.python.org/pypi/setuptools
> +-set(SETUPTOOLS_VERSION 1.1.6)
> +-ExternalProject_Add(setuptools
> +-    URL ${CMAKE_SOURCE_DIR}/ext/setuptools-${SETUPTOOLS_VERSION}.tar.gz
> +-    BUILD_IN_SOURCE 1
> +-    CONFIGURE_COMMAND ${CMAKE_COMMAND} -E make_directory 
> ${EXTDIST_PYTHONPATH}
> +-    BUILD_COMMAND PYTHONPATH=${PYTHONPATH} ${PYTHON} setup.py build
> +-    INSTALL_COMMAND PYTHONPATH=${PYTHONPATH} ${PYTHON} setup.py install 
> --prefix=${EXTDIST_ROOT}
> +-)
> +-
> +-# docutils
> +-# https://pypi.python.org/pypi/docutils
> +-set(DOCUTILS_VERSION 0.11)
> +-ExternalProject_Add(docutils
> +-    DEPENDS setuptools
> +-    URL ${CMAKE_SOURCE_DIR}/ext/docutils-${DOCUTILS_VERSION}.tar.gz
> +-    BUILD_IN_SOURCE 1
> +-    CONFIGURE_COMMAND ${CMAKE_COMMAND} -E make_directory 
> ${EXTDIST_PYTHONPATH}
> +-    BUILD_COMMAND PYTHONPATH=${PYTHONPATH} ${PYTHON} setup.py build
> +-    INSTALL_COMMAND PYTHONPATH=${PYTHONPATH} ${PYTHON} setup.py install 
> --prefix=${EXTDIST_ROOT}
> +-)
> +-
> +-# jinja2
> +-# https://pypi.python.org/pypi/Jinja2
> +-set(JINJA2_VERSION 2.7.1)
> +-ExternalProject_Add(Jinja2
> +-    DEPENDS setuptools
> +-    URL ${CMAKE_SOURCE_DIR}/ext/Jinja2-${JINJA2_VERSION}.tar.gz
> +-    BUILD_IN_SOURCE 1
> +-    CONFIGURE_COMMAND ${CMAKE_COMMAND} -E make_directory 
> ${EXTDIST_PYTHONPATH}
> +-    BUILD_COMMAND PYTHONPATH=${PYTHONPATH} ${PYTHON} setup.py build
> +-    INSTALL_COMMAND PYTHONPATH=${PYTHONPATH} ${PYTHON} setup.py install 
> --prefix=${EXTDIST_ROOT}
> +-)
> +-
> +-# Pygments
> +-# https://pypi.python.org/pypi/Pygments
> +-set(PYGMENTS_VERSION 1.6)
> +-ExternalProject_Add(Pygments
> +-    DEPENDS setuptools
> +-    URL ${CMAKE_SOURCE_DIR}/ext/Pygments-${PYGMENTS_VERSION}.tar.gz
> +-    BUILD_IN_SOURCE 1
> +-    CONFIGURE_COMMAND ${CMAKE_COMMAND} -E make_directory 
> ${EXTDIST_PYTHONPATH}
> +-    BUILD_COMMAND PYTHONPATH=${PYTHONPATH} ${PYTHON} setup.py build
> +-    INSTALL_COMMAND PYTHONPATH=${PYTHONPATH} ${PYTHON} setup.py install 
> --prefix=${EXTDIST_ROOT}
> +-)
> +-
> +-# sphinx
> +-# https://pypi.python.org/pypi/Sphinx
> +-set(SPHINX_VERSION 1.2b3)
> +-ExternalProject_Add(Sphinx
> +-    DEPENDS setuptools docutils Jinja2 Pygments
> +-    URL ${CMAKE_SOURCE_DIR}/ext/Sphinx-${SPHINX_VERSION}.tar.gz
> +-    PATCH_COMMAND patch -p1 < 
> ${CMAKE_SOURCE_DIR}/ext/Sphinx-${SPHINX_VERSION}.patch
> +-    BUILD_IN_SOURCE 1
> +-    CONFIGURE_COMMAND ${CMAKE_COMMAND} -E make_directory 
> ${EXTDIST_PYTHONPATH}
> +-    BUILD_COMMAND PYTHONPATH=${PYTHONPATH} ${PYTHON} setup.py build
> +-    INSTALL_COMMAND PYTHONPATH=${PYTHONPATH} ${PYTHON} setup.py install 
> --prefix=${EXTDIST_ROOT} --install-scripts=${EXTDIST_ROOT}/bin
> +-)
> +-
> + 
> ###############################################################################
> + ### Create Doc Targets ###
> + 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]