From fe359f270593d87a56db2d25aa0a7fb7c46aa7fa Mon Sep 17 00:00:00 2001 From: nixo Date: Sat, 12 Oct 2019 15:54:35 +0200 Subject: [PATCH] gnu: Add julia-cairo. * gnu/packages/julia-xyz.scm (julia-cairo-0.7.0): New variable. --- gnu/packages/julia-xyz.scm | 62 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/gnu/packages/julia-xyz.scm b/gnu/packages/julia-xyz.scm index 282248599e..808b035a56 100644 --- a/gnu/packages/julia-xyz.scm +++ b/gnu/packages/julia-xyz.scm @@ -23,6 +23,8 @@ #:use-module (guix packages) #:use-module (gnu packages compression) #:use-module (gnu packages graphics) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) #:use-module (gnu packages maths) #:use-module (gnu packages video) #:use-module (gnu packages web) @@ -2251,3 +2253,63 @@ direct translation of, the Cascadia CSS Selector library, written in Go,") (synopsis "Holding place for Julia Base graphics") (description "Holding place for Julia Base graphics.") (license license:expat))) + +(define-public julia-cairo + (package + (name "julia-cairo") + (version "0.7.0") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/JuliaGraphics/Cairo.jl") + (commit + (string-append "v" version)))) + (file-name "Cairo") + (sha256 + (base32 "06dqj8xdq5dhfhd0r2inlkcc1a3qywrfhx8qx04cgs9p1aav8ngp")))) + (propagated-inputs + `(("julia-graphics" ,julia-graphics) + ("julia-colors" ,julia-colors) + ("julia-bindeps" ,julia-bindeps) + ("glib" ,glib) + ("cairo" ,cairo) + ("pango" ,pango))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'precompile 'build-deps + (lambda* + (#:key outputs source inputs #:allow-other-keys) + (let + ((f (open-file (string-append + (assoc-ref outputs "out") + "/share/julia/packages/" + (strip-store-file-name source) + "/deps/deps.jl") "w"))) + (display + (string-append "const libcairo = \"" + (assoc-ref inputs "cairo") + "/lib/libcairo.so\"\n") f) + (display + (string-append "const libpango = \"" + (assoc-ref inputs "pango") + "/lib/libpango-1.0.so\"\n") f) + (display + (string-append "const libpangocairo = \"" + (assoc-ref inputs "pango") + "/lib/libpangocairo-1.0.so\"\n") f) + (display + (string-append "const libgobject = \"" + (assoc-ref inputs "glib") + "/lib/libgobject-2.0.so\"\n") f) + (display "check_deps() = true\n" f) + (close-port f)) + #t))))) + (build-system julia-build-system) + (home-page "https://github.com/JuliaGraphics/Cairo.jl") + (synopsis " Bindings to the Cairo graphics library.") + (description "Julia adaptation to Cairo, a 2D graphics library with +support for multiple output devices.") + (license license:expat)))