~ruther/guix-local

14ecc0effca4d7447510bc67a774f897ac03ab87 — Andreas Enge 13 years ago 141ccae
gnu: Add xpdf.

* gnu/packages/pdf.scm (xpdf): New variable.
* gnu/packages/patches/xpdf-constchar.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
3 files changed, 56 insertions(+), 4 deletions(-)

M Makefile.am
A gnu/packages/patches/xpdf-constchar.patch
M gnu/packages/pdf.scm
M Makefile.am => Makefile.am +2 -1
@@ 223,7 223,8 @@ dist_patch_DATA =						\
  gnu/packages/patches/tar-gets-undeclared.patch		\
  gnu/packages/patches/tcsh-fix-autotest.patch 			\
  gnu/packages/patches/teckit-cstdio.patch			\
  gnu/packages/patches/vpnc-script.patch
  gnu/packages/patches/vpnc-script.patch			\
  gnu/packages/patches/xpdf-constchar.patch

bootstrapdir = $(guilemoduledir)/gnu/packages/bootstrap
bootstrap_x86_64_linuxdir = $(bootstrapdir)/x86_64-linux

A gnu/packages/patches/xpdf-constchar.patch => gnu/packages/patches/xpdf-constchar.patch +15 -0
@@ 0,0 1,15 @@
This patch circumvents an error with 'const char *' to 'char *' conversion,
see http://gnats.netbsd.org/45562 .

diff -u a/xpdf/XPDFViewer.cc b/xpdf/XPDFViewer.cc
--- a/xpdf/XPDFViewer.cc        2011-08-15 23:08:53.000000000 +0200
+++ b/xpdf/XPDFViewer.cc        2013-03-31 15:13:21.000000000 +0200
@@ -1803,7 +1803,7 @@
   menuPane = XmCreatePulldownMenu(toolBar, "zoomMenuPane", args, n);
   for (i = 0; i < nZoomMenuItems; ++i) {
     n = 0;
-    s = XmStringCreateLocalized(zoomMenuInfo[i].label);
+    s = XmStringCreateLocalized((char *) zoomMenuInfo[i].label);
     XtSetArg(args[n], XmNlabelString, s); ++n;
     XtSetArg(args[n], XmNuserData, (XtPointer)i); ++n;
     sprintf(buf, "zoom%d", i);

M gnu/packages/pdf.scm => gnu/packages/pdf.scm +39 -3
@@ 17,17 17,21 @@
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu packages pdf)
  #:use-module ((guix licenses) #:select (gpl2+))
  #:use-module ((guix licenses)
                #:renamer (symbol-prefix-proc 'license:))
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system gnu)
  #:use-module (gnu packages)
  #:use-module (gnu packages compression)
  #:use-module (gnu packages fontutils)
  #:use-module (gnu packages ghostscript)
  #:use-module (gnu packages lesstif)
  #:use-module (gnu packages libjpeg)
  #:use-module (gnu packages libpng)
  #:use-module (gnu packages libtiff)
  #:use-module (gnu packages pkg-config))
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages xorg))

(define-public poppler
  (package


@@ 63,5 67,37 @@
   (synopsis "Poppler, a pdf rendering library")
   (description
    "Poppler is a PDF rendering library based on the xpdf-3.0 code base.")
   (license gpl2+)
   (license license:gpl2+)
   (home-page "http://poppler.freedesktop.org/")))

(define-public xpdf
  (package
   (name "xpdf")
   (version "3.03")
   (source (origin
            (method url-fetch)
            (uri (string-append "ftp://ftp.foolabs.com/pub/xpdf/xpdf-"
                                version ".tar.gz"))
            (sha256 (base32
                     "1jnfzdqc54wa73lw28kjv0m7120mksb0zkcn81jdlvijyvc67kq2"))))
   (build-system gnu-build-system)
   (inputs `(("freetype" ,freetype)
             ("lesstif" ,lesstif)
             ("libpaper" ,libpaper)
             ("libx11" ,libx11)
             ("libxext" ,libxext)
             ("libxp" ,libxp)
             ("libxpm" ,libxpm)
             ("libxt" ,libxt)
             ("zlib" ,zlib)
             ("patch/constchar"
                 ,(search-patch "xpdf-constchar.patch"))))
   (arguments
    `(#:tests? #f ; there is no check target
      #:patches (list (assoc-ref %build-inputs
                                 "patch/constchar"))))
   (synopsis "Viewer for pdf files based on the Motif toolkit.")
   (description
    "Xpdf is a viewer for Portable Document Format (PDF) files")
   (license license:gpl3) ; or gpl2, but not gpl2+
   (home-page "http://www.foolabs.com/xpdf/")))