From f7ee7a9b06a386863d7752ba028a79bb98d3504d Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 2 Apr 2015 13:31:47 -0500 Subject: [PATCH] gnu: Add Perl GD. * gnu/packages/gd.scm (perl-gd): New variable. --- gnu/packages/gd.scm | 51 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/gnu/packages/gd.scm b/gnu/packages/gd.scm index e27103778c..fcca592ff7 100644 --- a/gnu/packages/gd.scm +++ b/gnu/packages/gd.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Ludovic Courtès ;;; Copyright © 2015 Mark H Weaver +;;; Copyright © 2015 Eric Bavier ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,8 +21,10 @@ (define-module (gnu packages gd) #:use-module (guix packages) #:use-module (guix build-system gnu) + #:use-module (guix build-system perl) #:use-module (guix download) #:use-module (gnu packages) + #:use-module (gnu packages perl) #:use-module (gnu packages image) #:use-module (gnu packages fontutils) #:use-module (gnu packages compression) @@ -66,3 +69,51 @@ most anything else, on the fly. While not restricted to use on the web, the most common applications of GD involve website development.") (license (non-copyleft "file://COPYING" "See COPYING file in the distribution.")))) + +(define-public perl-gd + (package + (name "perl-gd") + (version "2.56") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/L/LD/LDS/" + "GD-" version ".tar.gz")) + (sha256 + (base32 + "1ya8f9hpiax8j29vwaiwlvvgah0vkyvpzva28r8231nyk0f3s40z")) + (patches + (list + (search-patch "perl-gd-options-passthrough-and-fontconfig.patch"))))) + (build-system perl-build-system) + (native-inputs + `(("perl-module-build" ,perl-module-build))) ;needs Module::Build >= 0.42 + (inputs + `(("gd" ,gd) + ("zlib" ,zlib) + ("png" ,libpng) + ("ft" ,freetype) + ("jpeg" ,libjpeg) + ("fontconfig" ,fontconfig))) + (arguments + ;; We must use Build.PL for building because Makefile.PL fails to build + ;; the XS source. + `(#:module-build-flags (map (lambda (i) + (string-append "--lib_" i "_path=" + (assoc-ref %build-inputs i))) + '("zlib" "png" "ft" "jpeg" "fontconfig")) + #:phases (alist-cons-after + 'configure 'clear-autogenerated-files + (lambda _ + ;; This file is autogenerated by its .PLS script at build + ;; time, but file creation fails because that file already + ;; exists in the distribution with non-writable + ;; permissions, so delete it first. + (delete-file "bdf_scripts/bdf2gdfont.pl")) + %standard-phases))) + (home-page "http://search.cpan.org/dist/GD") + (synopsis "Perl interface to the GD graphics library") + (description "GD.pm is an autoloadable interface module for libgd, a +popular library for creating and manipulating PNG files. With this library +you can create PNG images on the fly or modify existing files.") + (license (package-license perl))))