Commit | Line | Data |
---|---|---|
436d4d1f | 1 | ;;; GNU Guix --- Functional package management for GNU |
0573a923 | 2 | ;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org> |
7c853c02 | 3 | ;;; Copyright © 2014, 2016 Andreas Enge <andreas@enge.fr> |
b4e655e5 | 4 | ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> |
fa8af53e | 5 | ;;; Copyright © 2016 Roel Janssen <roel@gnu.org> |
436d4d1f AE |
6 | ;;; |
7 | ;;; This file is part of GNU Guix. | |
8 | ;;; | |
9 | ;;; GNU Guix is free software; you can redistribute it and/or modify it | |
10 | ;;; under the terms of the GNU General Public License as published by | |
11 | ;;; the Free Software Foundation; either version 3 of the License, or (at | |
12 | ;;; your option) any later version. | |
13 | ;;; | |
14 | ;;; GNU Guix is distributed in the hope that it will be useful, but | |
15 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 | ;;; GNU General Public License for more details. | |
18 | ;;; | |
19 | ;;; You should have received a copy of the GNU General Public License | |
20 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. | |
21 | ||
0573a923 EB |
22 | (define-module (gnu packages documentation) |
23 | #:use-module (guix licenses) | |
436d4d1f AE |
24 | #:use-module (guix packages) |
25 | #:use-module (guix download) | |
0573a923 | 26 | #:use-module (guix build-system gnu) |
7c853c02 | 27 | #:use-module (guix build-system cmake) |
436d4d1f | 28 | #:use-module (gnu packages) |
0573a923 | 29 | #:use-module (gnu packages python) |
436d4d1f | 30 | #:use-module (gnu packages bison) |
fa8af53e | 31 | #:use-module (gnu packages docbook) |
436d4d1f | 32 | #:use-module (gnu packages flex) |
9e57c1b5 | 33 | #:use-module (gnu packages graphviz) |
b4e655e5 | 34 | #:use-module (gnu packages gettext) |
fa8af53e | 35 | #:use-module (gnu packages glib) |
436d4d1f AE |
36 | #:use-module (gnu packages perl) |
37 | #:use-module (gnu packages xml) | |
0573a923 EB |
38 | #:autoload (gnu packages zip) (unzip)) |
39 | ||
40 | (define-public asciidoc | |
41 | (package | |
42 | (name "asciidoc") | |
43 | (version "8.6.9") | |
44 | (source (origin | |
45 | (method url-fetch) | |
de67e922 LF |
46 | (uri (string-append "mirror://sourceforge/asciidoc/asciidoc/" |
47 | version "/asciidoc-" version ".tar.gz")) | |
0573a923 EB |
48 | (sha256 |
49 | (base32 | |
50 | "1w71nk527lq504njmaf0vzr93pgahkgzzxzglrq6bay8cw2rvnvq")))) | |
51 | (build-system gnu-build-system) | |
dd10ba63 TČ |
52 | (arguments |
53 | `(#:tests? #f ; no 'check' target | |
54 | #:phases | |
55 | (modify-phases %standard-phases | |
56 | ;; Make asciidoc use the local docbook-xsl package instead of fetching | |
57 | ;; it from the internet at run-time. | |
58 | (add-before 'install 'make-local-docbook-xsl | |
59 | (lambda* (#:key inputs #:allow-other-keys) | |
60 | (substitute* (find-files "docbook-xsl" ".*\\.xsl$") | |
61 | (("xsl:import href=\"http://docbook.sourceforge.net/\ | |
62 | release/xsl/current") | |
63 | (string-append | |
64 | "xsl:import href=\"" | |
65 | (string-append (assoc-ref inputs "docbook-xsl") | |
66 | "/xml/xsl/docbook-xsl-" | |
67 | ,(package-version docbook-xsl))))) | |
68 | #t))))) | |
69 | (inputs `(("python" ,python-2) | |
70 | ("docbook-xsl" ,docbook-xsl))) | |
0573a923 EB |
71 | (home-page "http://www.methods.co.nz/asciidoc/") |
72 | (synopsis "Text-based document generation system") | |
73 | (description | |
74 | "AsciiDoc is a text document format for writing notes, documentation, | |
75 | articles, books, ebooks, slideshows, web pages, man pages and blogs. | |
76 | AsciiDoc files can be translated to many formats including HTML, PDF, | |
77 | EPUB, man page. | |
78 | ||
79 | AsciiDoc is highly configurable: both the AsciiDoc source file syntax and | |
80 | the backend output markups (which can be almost any type of SGML/XML | |
81 | markup) can be customized and extended by the user.") | |
82 | (license gpl2+))) | |
436d4d1f AE |
83 | |
84 | (define-public doxygen | |
85 | (package | |
86 | (name "doxygen") | |
7c853c02 | 87 | (version "1.8.11") |
436d4d1f AE |
88 | (source (origin |
89 | (method url-fetch) | |
90 | (uri (string-append "http://ftp.stack.nl/pub/users/dimitri/" | |
91 | name "-" version ".src.tar.gz")) | |
92 | (sha256 | |
93 | (base32 | |
7c853c02 | 94 | "0ja02pm3fpfhc5dkry00kq8mn141cqvdqqpmms373ncbwi38pl35")) |
fc1adab1 | 95 | (patches (search-patches "doxygen-test.patch")))) |
7c853c02 | 96 | (build-system cmake-build-system) |
436d4d1f AE |
97 | (native-inputs |
98 | `(("bison" ,bison) | |
99 | ("flex" ,flex) | |
100 | ("libxml2" ,libxml2) ; provides xmllint for the tests | |
436d4d1f AE |
101 | ("python" ,python-2))) ; for creating the documentation |
102 | (arguments | |
7c853c02 | 103 | `(#:test-target "tests")) |
436d4d1f | 104 | (home-page "http://www.stack.nl/~dimitri/doxygen/") |
35b9e423 | 105 | (synopsis "Generate documentation from annotated sources") |
436d4d1f AE |
106 | (description "Doxygen is the de facto standard tool for generating |
107 | documentation from annotated C++ sources, but it also supports other popular | |
108 | programming languages such as C, Objective-C, C#, PHP, Java, Python, | |
109 | IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl, | |
110 | and to some extent D.") | |
111 | (license gpl3+))) | |
b4e655e5 EB |
112 | |
113 | (define-public doc++ | |
114 | (package | |
115 | (name "doc++") | |
116 | (version "3.4.10") | |
117 | (source (origin | |
118 | (method url-fetch) | |
119 | (uri (string-append "https://sourceforge.net/projects/docpp/" | |
120 | "files/doc++-" version ".tar.gz")) | |
121 | (sha256 | |
122 | (base32 | |
123 | "0i37zlxl8g352s4hzpdx0657k5x3czh3xcsfr27irc708gb277pn")) | |
124 | (patches (search-patches "doc++-include-directives.patch" | |
125 | "doc++-segfault-fix.patch")))) | |
126 | (build-system gnu-build-system) | |
127 | (native-inputs | |
128 | `(("flex" ,flex) | |
b94a6ca0 | 129 | ("gettext" ,gettext-minimal))) |
b4e655e5 EB |
130 | (home-page "http://docpp.sourceforge.net/") |
131 | (synopsis "Documentation system for C, C++, IDL, and Java") | |
132 | (description | |
133 | "DOC++ is a documentation system for C, C++, IDL, and Java. It can | |
134 | generate both TeX output for high-quality hardcopies or HTML output for online | |
135 | brwosing. The documentation is extracted directly from the C/C++/IDL source | |
136 | or Java class files.") | |
137 | (license gpl2+))) | |
fa8af53e RJ |
138 | |
139 | (define-public scrollkeeper | |
140 | (package | |
141 | (name "scrollkeeper") | |
142 | (version "0.3.14") | |
143 | (source | |
144 | (origin | |
145 | (method url-fetch) | |
de67e922 LF |
146 | (uri (string-append "mirror://sourceforge/scrollkeeper/scrollkeeper/" |
147 | version "/scrollkeeper-" version ".tar.gz")) | |
fa8af53e RJ |
148 | (sha256 |
149 | (base32 "1bfxwxc1ngh11v36z899sz9qam366r050fhkyb5adv65lb1x62sa")))) | |
150 | (build-system gnu-build-system) | |
151 | (arguments | |
152 | `(#:configure-flags | |
153 | (list (string-append "--with-xml-catalog=" | |
154 | (assoc-ref %build-inputs "docbook-xml") | |
155 | "/xml/dtd/docbook/catalog.xml")))) | |
156 | (inputs | |
157 | `(("perl" ,perl) | |
158 | ("libxml2" ,libxml2) | |
159 | ("libxslt" ,libxslt) | |
160 | ;; The configure script checks for either version 4.2 or 4.1.2. | |
161 | ("docbook-xml" ,docbook-xml-4.2))) | |
162 | (native-inputs | |
163 | `(("intltool" ,intltool))) | |
164 | (home-page "http://scrollkeeper.sourceforge.net/") | |
165 | (synopsis "Open Documentation Cataloging Project") | |
166 | (description "ScrollKeeper is a cataloging system for documentation on open | |
167 | systems. It manages documentation metadata as specified by the Open Source | |
168 | Metadata Framework and provides a simple API to allow help browsers to find, | |
169 | sort, and search the document catalog. It will also be able to communicate | |
170 | with catalog servers on the Net to search for documents which are not on the | |
171 | local system.") | |
172 | (license lgpl2.1+))) |