;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Andreas Enge ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (define-module (gnu packages image) #:use-module (gnu packages) #:use-module (gnu packages compression) #:use-module (gnu packages file) #:use-module ((guix licenses) #:renamer (symbol-prefix-proc 'license:)) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu)) (define-public libpng (package (name "libpng") (version "1.5.17") (source (origin (method url-fetch) ;; Note: upstream removes older tarballs. (uri (list (string-append "mirror://sourceforge/libpng/libpng15/" version "/libpng-" version ".tar.xz") (string-append "ftp://ftp.simplesystems.org/pub/libpng/png/src" "/libpng15/libpng-" version ".tar.xz"))) (sha256 (base32 "19wj293r4plbfgb43yhrc2qx8bsch9gbazazfqrj9haa7lsk29jp")))) (build-system gnu-build-system) ;; libpng.la says "-lz", so propagate it. (propagated-inputs `(("zlib" ,zlib))) (synopsis "Library for handling PNG files") (description "Libpng is the official PNG (Portable Network Graphics) reference library. It supports almost all PNG features and is extensible.") (license license:zlib) (home-page "http://www.libpng.org/pub/png/libpng.html"))) (define-public libjpeg (package (name "libjpeg") (version "9") (source (origin (method url-fetch) (uri (string-append "http://www.ijg.org/files/jpegsrc.v" version ".tar.gz")) (sha256 (base32 "0dg5wxcx3cw0hal9gvivj97vid9z0s5sb1yvg55hpxmafn9rxqn4")))) (build-system gnu-build-system) (synopsis "Libjpeg, a library for handling JPEG files") (description "Libjpeg implements JPEG image encoding, decoding, and transcoding. JPEG is a standardized compression method for full-color and gray-scale images. The included programs provide conversion between the JPEG format and image files in PBMPLUS PPM/PGM, GIF, BMP, and Targa file formats.") (license license:ijg) (home-page "http://www.ijg.org/"))) (define-public libjpeg-8 (package (inherit libjpeg) (version "8d") (source (origin (method url-fetch) (uri (string-append "http://www.ijg.org/files/jpegsrc.v" version ".tar.gz")) (sha256 (base32 "1cz0dy05mgxqdgjf52p54yxpyy95rgl30cnazdrfmw7hfca9n0h0")))))) (define-public libtiff (package (name "libtiff") (version "4.0.3") (source (origin (method url-fetch) (uri (string-append "ftp://ftp.remotesensing.org/pub/libtiff/tiff-" version ".tar.gz")) (sha256 (base32 "0wj8d1iwk9vnpax2h29xqc2hwknxg3s0ay2d5pxkg59ihbifn6pa")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib) ("libjpeg-8" ,libjpeg-8))) ;; currently does not compile with libjpeg version 9 (native-inputs `(("file" ,file))) (arguments `(#:configure-flags (list (string-append "--with-jpeg-include-dir=" (assoc-ref %build-inputs "libjpeg-8") "/include")) #:phases (alist-cons-before 'configure 'patch-configure (lambda _ (substitute* "configure" (("`/usr/bin/file") (string-append "`" (which "file"))))) %standard-phases))) (synopsis "Libtiff, a library for handling TIFF files") (description "Libtiff provides support for the Tag Image File Format (TIFF), a format used for storing image data. Included are a library, libtiff, for reading and writing TIFF and a small collection of tools for doing simple manipulations of TIFF images.") (license (license:bsd-style "file://COPYRIGHT" "See COPYRIGHT in the distribution.")) (home-page "http://www.libtiff.org/")))