aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/noweb.scm
blob: 0954e79952b230e39d1055f6f46d200a652478b0 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
;;;
;;; 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 <http://www.gnu.org/licenses/>.

(define-module (gnu packages noweb)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system gnu)
  #:use-module (guix licenses))

(define-public noweb
  (package
    (name "noweb")
    (version "2.11b")
    (source (origin
             (method url-fetch)
             (uri (string-append "ftp://www.eecs.harvard.edu/pub/nr/noweb-"
                                 version ".tgz"))
             (sha256
              (base32
               "10hdd6mrk26kyh4bnng4ah5h1pnanhsrhqa7qwqy6dyv3rng44y9"))))
    (build-system gnu-build-system)
    (arguments
     '(#:phases
       (modify-phases %standard-phases
         (add-before 'install 'pre-install
           (lambda* (#:key outputs #:allow-other-keys)
             (let ((out (assoc-ref outputs "out")))
               (mkdir-p (string-append out "/share/texmf/tex/latex"))
               #t)))
         (add-after 'install 'post-install
           (lambda* (#:key outputs inputs #:allow-other-keys)
             (let ((out (assoc-ref outputs "out"))
                   (cu  (assoc-ref inputs "coreutils"))
                   (du  (assoc-ref inputs "diffutils")))
               (with-directory-excursion out
                 (for-each (lambda (prog)
                             (substitute* prog
                               (("nawk") (which "awk"))))
                           (append (map (lambda (x)
                                          (string-append "bin/" x))
                                        '("noweb" "nountangle"
                                          "noroots" "noroff"
                                          "noindex"))
                                   (map (lambda (x)
                                          (string-append "lib/" x))
                                        '("btdefn" "emptydefn" "noidx"
                                          "pipedocs" "toascii" "tohtml"
                                          "toroff" "totex" "unmarkup"))))
                 (substitute* "bin/cpif"
                   (("^PATH=.*$")
                    (string-append "PATH=" cu "/bin:" du "/bin\n"))))
               #t)))
         (replace 'configure
           (lambda _
             ;; Jump in the source.
             (chdir "src")

             ;; The makefile reads "source: FAQ", but FAQ isn't
             ;; available.
             (substitute* "Makefile"
               (("FAQ") ""))
             #t)))
       #:make-flags (let ((out (assoc-ref %outputs "out")))
                      (list (string-append "BIN=" out "/bin")
                            (string-append "LIB=" out "/lib")
                            (string-append "MAN=" out "/share/man")
                            (string-append "TEXINPUTS=" out
                                           "/share/texmf/tex/latex")))
       #:tests? #f))                              ; no tests
    (home-page "http://www.cs.tufts.edu/~nr/noweb/")
    (synopsis "Literate programming tool")
    (description
     "Noweb is designed to meet the needs of literate programmers while
remaining as simple as possible.  Its primary advantages are simplicity,
extensibility, and language-independence—especially noticeable when compared
with other literate-programming tools.  noweb uses 5 control sequences to
WEB's 27.  The noweb manual is only 4 pages; an additional page explains how
to customize its LaTeX output.  noweb works “out of the box” with any
programming language, and supports TeX, LaTeX, HTML, and troff back ends.")
    (license (fsf-free "http://www.cs.tufts.edu/~nr/noweb/#copyright"))))
'>...This is the result of running: ./pre-inst-env guix style --input-simplification=safe and manually undoing changes on a dozen of packages to reduce rebuilds (derivations for emacs, icecat, and libreoffice are unchanged.) Ludovic Courtès 2021-12-13gnu: Simplify package inputs....This commit was obtained by running: ./pre-inst-env guix style without any additional argument. Ludovic Courtès 2021-12-10Merge remote-tracking branch 'signed/master' into core-updatesMathieu Othacehe 2021-12-08gnu: python-dropbox: Update to 11.25.0....* gnu/packages/file-systems.scm (python-dropbox): Update to 11.25.0. [propagated-inputs]: Remove python-certifi, python-chardet, and python-urllib3. Efraim Flashner 2021-12-05Merge remote-tracking branch 'origin/master' into core-updates-frozenRicardo Wurmus 2021-11-27gnu: davfs2: Update to 1.6.1....* gnu/packages/file-systems.scm (davfs2): Update to 1.6.1. [arguments]: Don't explicitly return #t from phases. Tobias Geerinckx-Rice 2021-11-27gnu: exfatprogs: Update to 1.1.3....* gnu/packages/file-systems.scm (exfatprogs): Update to 1.1.3. Tobias Geerinckx-Rice 2021-11-08Merge remote-tracking branch 'origin/master' into core-updates-frozenEfraim Flashner 2021-11-07gnu: xfstests: Update to 1.1.0-1.bae1d15....* gnu/packages/file-systems.scm (xfstests): Update to 1.1.0-1.bae1d15. Tobias Geerinckx-Rice 2021-10-31Merge remote-tracking branch 'origin/master' into core-updates-frozenEfraim Flashner 2021-10-23gnu: bcachefs-tools-static: Fix build....This follows up on commit 196e3f52355ee7d086e67eb769d714dd040d61c2: bcachefs-tools now unconditionally builds and installs libbcachefs.so. * gnu/packages/file-systems.scm (bcachefs-tools-static)[arguments]: Add a new 'skip-shared-library phase. Tobias Geerinckx-Rice 2021-10-23gnu: bcachefs-tools: Update to 0.1-12.f9f5778....* gnu/packages/file-systems.scm (bcachefs-tools): Update to 0.1-12.f9f5778. Tobias Geerinckx-Rice 2021-10-21gnu: autofs: Update to 5.1.8....* gnu/packages/file-systems.scm (autofs): Update to 5.1.8. [arguments]: Don't explicitly return #t from phases. Tobias Geerinckx-Rice 2021-10-18Merge remote-tracking branch 'signed/master' into core-updatesMathieu Othacehe 2021-10-15gnu: dbxfs: Download using git-fetch....* gnu/packages/file-systems.scm (dbxfs)[source]: Download using git-fetch. Efraim Flashner 2021-10-14Merge branch 'master' into core-updates-frozenMarius Bakke 2021-10-12gnu: dbxfs: Update home-page....* gnu/packages/file-systems.scm (dbxfs)[home-page]: Update to new upstream homepage. Efraim Flashner 2021-10-12Merge remote-tracking branch 'origin/master' into core-updates-frozen.Mathieu Othacehe 2021-10-03gnu: bcachefs-tools: Update to 0.1-11.3785043....* gnu/packages/file-systems.scm (bcachefs-tools): Update to 0.1-11.3785043. Tobias Geerinckx-Rice 2021-10-02gnu: zfs: Update to 2.1.1....* gnu/packages/file-systems.scm (zfs): Update to 2.1.1. [arguments]: Do not return #t from custom phases. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> Kaelyn Takata 2021-09-27gnu: bcachefs-tools: Update to 0.1-10.d214908....* gnu/packages/file-systems.scm (bcachefs-tools): Update to 0.1-10.d214908. Tobias Geerinckx-Rice 2021-09-07Merge branch 'master' into core-updates-frozenLudovic Courtès 2021-09-03gnu: bcachefs-tools: Update to 0.1-9.6c42566....* gnu/packages/file-systems.scm (bcachefs-tools): Update to 0.1-9.6c42566. [native-inputs]: Add python and python-docutils. Tobias Geerinckx-Rice