gnu: libdrm: Update to 2.4.74.
[jackhill/guix/guix.git] / gnu / packages / documentation.scm
CommitLineData
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
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/\
62release/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,
75articles, books, ebooks, slideshows, web pages, man pages and blogs.
76AsciiDoc files can be translated to many formats including HTML, PDF,
77EPUB, man page.
78
79AsciiDoc is highly configurable: both the AsciiDoc source file syntax and
80the backend output markups (which can be almost any type of SGML/XML
81markup) 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
107documentation from annotated C++ sources, but it also supports other popular
108programming languages such as C, Objective-C, C#, PHP, Java, Python,
109IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl,
110and 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
134generate both TeX output for high-quality hardcopies or HTML output for online
135brwosing. The documentation is extracted directly from the C/C++/IDL source
136or 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
167systems. It manages documentation metadata as specified by the Open Source
168Metadata Framework and provides a simple API to allow help browsers to find,
169sort, and search the document catalog. It will also be able to communicate
170with catalog servers on the Net to search for documents which are not on the
171local system.")
172 (license lgpl2.1+)))