guix-devel
[Top][All Lists]
Advanced

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

[PATCHES] Fixes to install man pages and docs in PREFIX/share


From: Mark H Weaver
Subject: [PATCHES] Fixes to install man pages and docs in PREFIX/share
Date: Tue, 01 Apr 2014 19:07:16 -0400

Here's another batch of fixes to install man pages and docs in
PREFIX/share.  I also cleaned up the 'zip' package build process.

     Mark

>From 32699d6c8070522c34e00ddb57d836d6fb0dc3e8 Mon Sep 17 00:00:00 2001
From: Mark H Weaver <address@hidden>
Date: Tue, 1 Apr 2014 16:13:52 -0400
Subject: [PATCH 1/7] gnu: indent: Install docs in share/doc.

* gnu/packages/indent.scm (indent): Add a phase to fix the docdir
  setting in doc/Makefile.in.
---
 gnu/packages/indent.scm | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/gnu/packages/indent.scm b/gnu/packages/indent.scm
index 78ceadf..7d7acba 100644
--- a/gnu/packages/indent.scm
+++ b/gnu/packages/indent.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Andreas Enge <address@hidden>
+;;; Copyright © 2014 Mark H Weaver <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -35,6 +36,16 @@
             (sha256 (base32
                      "0f9655vqdvfwbxvs1gpa7py8k1z71aqh8hp73f65vazwbfz436wa"))))
    (build-system gnu-build-system)
+   (arguments
+    `(#:phases (alist-cons-after
+                'unpack 'fix-docdir
+                (lambda _
+                  ;; Although indent uses a modern autoconf in which docdir
+                  ;; defaults to PREFIX/share/doc, the doc/Makefile.am
+                  ;; overrides this to be in PREFIX/doc.  Fix this.
+                  (substitute* "doc/Makefile.in"
+                    (("^docdir = .*$") "docdir = @address@hidden")))
+                %standard-phases)))
    (synopsis "Code reformatter")
    (description
     "Indent is a program that makes source code easier to read by
-- 
1.8.4

>From 36a9b92edfda4c3d5f77096789e033e036869644 Mon Sep 17 00:00:00 2001
From: Mark H Weaver <address@hidden>
Date: Tue, 1 Apr 2014 16:59:14 -0400
Subject: [PATCH 2/7] gnu: lua: Install man pages in share/man.

* gnu/packages/lua.scm (lua): Use 'system*' instead of 'system'.
  Add INSTALL_MAN argument to 'make'.
---
 gnu/packages/lua.scm | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index 8394afb..991cfc6 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Cyril Roelandt <address@hidden>
 ;;; Copyright © 2014 Raimon Grau <address@hidden>
+;;; Copyright © 2014 Mark H Weaver <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -49,8 +50,10 @@
                   'install
                   (lambda* (#:key outputs #:allow-other-keys)
                     (let ((out (assoc-ref outputs "out")))
-                      (zero? (system
-                              (string-append "make install INSTALL_TOP=" 
out)))))
+                      (zero? (system* "make" "install"
+                                      (string-append "INSTALL_TOP=" out)
+                                      (string-append "INSTALL_MAN=" out
+                                                     "/share/man/man1")))))
                   (alist-delete 'configure %standard-phases)))))
     (home-page "http://www.lua.org/";)
     (synopsis "An embeddable scripting language.")
-- 
1.8.4

>From fcfaef3bf3fbfecb74a0259704129bab634a966b Mon Sep 17 00:00:00 2001
From: Mark H Weaver <address@hidden>
Date: Tue, 1 Apr 2014 17:36:30 -0400
Subject: [PATCH 3/7] gnu: zip: Improve build process and install man pages in
 share/man.

* gnu/packages/zip.scm (zip): Eliminate custom configure phase which copied
  and patched the Makefile.  Instead add "-f" and "prefix" to make-flags, as
  well as "MANDIR".  Remove "generic_gcc" from the make-flags, so that it will
  not be passed during other phases involving 'make'.  Instead replace the
  'build' phase with one that specifies the "generic_gcc" target.
---
 gnu/packages/zip.scm | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/gnu/packages/zip.scm b/gnu/packages/zip.scm
index 03f3bc2..1e1d29e 100644
--- a/gnu/packages/zip.scm
+++ b/gnu/packages/zip.scm
@@ -43,15 +43,15 @@
     (inputs `(("bzip2" ,bzip2)))
     (arguments
      `(#:tests? #f ; no test target
-       #:make-flags '("generic_gcc")
-       #:phases
-        (alist-replace
-         'configure
-         (lambda* (#:key outputs #:allow-other-keys)
-           (let* ((out (assoc-ref outputs "out")))
-             (copy-file "unix/Makefile" "Makefile")
-             (substitute* "Makefile" (("/usr/local") out))))
-        %standard-phases)))
+       #:make-flags (let ((out (assoc-ref %outputs "out")))
+                      (list "-f" "unix/Makefile"
+                            (string-append "prefix=" out)
+                            (string-append "MANDIR=" out "/share/man/man1")))
+       #:phases (alist-replace
+                 'build
+                 (lambda* (#:key (make-flags '()) #:allow-other-keys)
+                   (zero? (apply system* "make" "generic_gcc" make-flags)))
+                 (alist-delete 'configure %standard-phases))))
     (home-page "http://www.info-zip.org/Zip.html";)
     (synopsis "Zip compression and file packing utility")
     (description
-- 
1.8.4

>From eead09b35ea8a762d0e70c37e0224133deb865f7 Mon Sep 17 00:00:00 2001
From: Mark H Weaver <address@hidden>
Date: Tue, 1 Apr 2014 17:56:57 -0400
Subject: [PATCH 4/7] gnu: expect: Install man pages in share/man.

* gnu/packages/tcl.scm (expect): Add --mandir configure flag.
  Use 'let' to simplify configure flags generation.
---
 gnu/packages/tcl.scm | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/tcl.scm b/gnu/packages/tcl.scm
index 18324ec..3ebdcbe 100644
--- a/gnu/packages/tcl.scm
+++ b/gnu/packages/tcl.scm
@@ -95,14 +95,12 @@
        ("tcl" ,tcl)))
     (arguments
      '(#:configure-flags
-       (list (string-append "--with-tcl="
-                            (assoc-ref %build-inputs "tcl")
-                            "/lib")
-             (string-append "--with-tclinclude="
-                            (assoc-ref %build-inputs "tcl")
-                            "/include")
-             (string-append "--exec-prefix="
-                            (assoc-ref %outputs "out")))
+       (let ((out (assoc-ref %outputs "out"))
+             (tcl (assoc-ref %build-inputs "tcl")))
+         (list (string-append "--with-tcl=" tcl "/lib")
+               (string-append "--with-tclinclude=" tcl "/include")
+               (string-append "--exec-prefix=" out)
+               (string-append "--mandir=" out "/share/man")))
 
        #:phases (alist-cons-before
                  'configure 'set-path-to-stty
-- 
1.8.4

>From 7ad09ea9dad7162b3db99f5fb7d5ad7fb211f308 Mon Sep 17 00:00:00 2001
From: Mark H Weaver <address@hidden>
Date: Tue, 1 Apr 2014 18:04:36 -0400
Subject: [PATCH 5/7] gnu: pth: Install man pages in share/man.

* gnu/packages/pth.scm (pth): Add --mandir to configure flags.
---
 gnu/packages/pth.scm | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/pth.scm b/gnu/packages/pth.scm
index 211c0cf..fd4aba1 100644
--- a/gnu/packages/pth.scm
+++ b/gnu/packages/pth.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2012 Ludovic Courtès <address@hidden>
+;;; Copyright © 2014 Mark H Weaver <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -35,7 +36,13 @@
        (base32
         "0ckjqw5kz5m30srqi87idj7xhpw6bpki43mj07bazjm2qmh3cdbj"))))
     (build-system gnu-build-system)
-    (arguments '(#:parallel-build? #f))
+    (arguments
+     '(#:parallel-build? #f
+       ;; By default, man pages are put in PREFIX/man,
+       ;; but we want them in PREFIX/share/man.
+       #:configure-flags (list (string-append "--mandir="
+                                              (assoc-ref %outputs "out")
+                                              "/share/man"))))
     (home-page "http://www.gnu.org/software/pth";)
     (synopsis "Portable thread library")
     (description
-- 
1.8.4

>From 9d188261a51b8bcdca8e57f15b4f19d384635d90 Mon Sep 17 00:00:00 2001
From: Mark H Weaver <address@hidden>
Date: Tue, 1 Apr 2014 18:05:06 -0400
Subject: [PATCH 6/7] gnu: ocaml: Install man pages in share/man.

* gnu/packages/ocaml.scm (ocaml): Pass -mandir to configure.
---
 gnu/packages/ocaml.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index f6bb9f7..bcd4c19 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Cyril Roelandt <address@hidden>
+;;; Copyright © 2014 Mark H Weaver <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -47,7 +48,9 @@
                      ;; OCaml uses "-prefix <prefix>" rather than the usual
                      ;; "--prefix=<prefix>".
                      (let ((out (assoc-ref outputs "out")))
-                      (zero? (system* "./configure" "-prefix" out))))
+                      (zero? (system* "./configure" "-prefix" out
+                                      "-mandir"
+                                      (string-append out "/share/man")))))
                    (alist-replace
                     'build
                     (lambda* (#:key outputs #:allow-other-keys)
-- 
1.8.4

>From 361397deee430770a930aef236cd79b3217ad355 Mon Sep 17 00:00:00 2001
From: Mark H Weaver <address@hidden>
Date: Tue, 1 Apr 2014 18:55:28 -0400
Subject: [PATCH 7/7] gnu: bazaar: Install man pages in share/man.

* gnu/packages/version-control.scm (bazaar): Add a phase that
  fixes setup.py to install man pages in share/man.
---
 gnu/packages/version-control.scm | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 41df90b..5b89425 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2013 Cyril Roelandt <address@hidden>
 ;;; Copyright © 2013, 2014 Ludovic Courtès <address@hidden>
 ;;; Copyright © 2013, 2014 Andreas Enge <address@hidden>
+;;; Copyright © 2014 Mark H Weaver <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -63,8 +64,14 @@
      `(("gettext" ,gnu-gettext)))
     (arguments
      `(#:tests? #f ; no test target
-       #:python ,python-2)) ; Python 3 apparently not yet supported, see
+       #:python ,python-2   ; Python 3 apparently not yet supported, see
                             ; 
https://answers.launchpad.net/bzr/+question/229048
+       #:phases (alist-cons-after
+                 'unpack 'fix-mandir
+                 (lambda _
+                   (substitute* "setup.py"
+                     (("man/man1") "share/man/man1")))
+                 %standard-phases)))
     (home-page "https://gnu.org/software/bazaar";)
     (synopsis "Version control system supporting both distributed and 
centralized workflows")
     (description
-- 
1.8.4


reply via email to

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