gnu: Add hexedit.
[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)
46 (uri (string-append "mirror://sourceforge/asciidoc/asciidoc-"
47 version ".tar.gz"))
48 (sha256
49 (base32
50 "1w71nk527lq504njmaf0vzr93pgahkgzzxzglrq6bay8cw2rvnvq"))))
51 (build-system gnu-build-system)
52 (arguments '(#:tests? #f)) ; no 'check' target
53 (inputs `(("python" ,python-2)))
54 (home-page "http://www.methods.co.nz/asciidoc/")
55 (synopsis "Text-based document generation system")
56 (description
57 "AsciiDoc is a text document format for writing notes, documentation,
58articles, books, ebooks, slideshows, web pages, man pages and blogs.
59AsciiDoc files can be translated to many formats including HTML, PDF,
60EPUB, man page.
61
62AsciiDoc is highly configurable: both the AsciiDoc source file syntax and
63the backend output markups (which can be almost any type of SGML/XML
64markup) can be customized and extended by the user.")
65 (license gpl2+)))
436d4d1f
AE
66
67(define-public doxygen
68 (package
69 (name "doxygen")
7c853c02 70 (version "1.8.11")
436d4d1f
AE
71 (source (origin
72 (method url-fetch)
73 (uri (string-append "http://ftp.stack.nl/pub/users/dimitri/"
74 name "-" version ".src.tar.gz"))
75 (sha256
76 (base32
7c853c02 77 "0ja02pm3fpfhc5dkry00kq8mn141cqvdqqpmms373ncbwi38pl35"))
fc1adab1 78 (patches (search-patches "doxygen-test.patch"))))
7c853c02 79 (build-system cmake-build-system)
436d4d1f
AE
80 (native-inputs
81 `(("bison" ,bison)
82 ("flex" ,flex)
83 ("libxml2" ,libxml2) ; provides xmllint for the tests
436d4d1f
AE
84 ("python" ,python-2))) ; for creating the documentation
85 (arguments
7c853c02 86 `(#:test-target "tests"))
436d4d1f 87 (home-page "http://www.stack.nl/~dimitri/doxygen/")
35b9e423 88 (synopsis "Generate documentation from annotated sources")
436d4d1f
AE
89 (description "Doxygen is the de facto standard tool for generating
90documentation from annotated C++ sources, but it also supports other popular
91programming languages such as C, Objective-C, C#, PHP, Java, Python,
92IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl,
93and to some extent D.")
94 (license gpl3+)))
b4e655e5
EB
95
96(define-public doc++
97 (package
98 (name "doc++")
99 (version "3.4.10")
100 (source (origin
101 (method url-fetch)
102 (uri (string-append "https://sourceforge.net/projects/docpp/"
103 "files/doc++-" version ".tar.gz"))
104 (sha256
105 (base32
106 "0i37zlxl8g352s4hzpdx0657k5x3czh3xcsfr27irc708gb277pn"))
107 (patches (search-patches "doc++-include-directives.patch"
108 "doc++-segfault-fix.patch"))))
109 (build-system gnu-build-system)
110 (native-inputs
111 `(("flex" ,flex)
112 ("gettext" ,gnu-gettext)))
113 (home-page "http://docpp.sourceforge.net/")
114 (synopsis "Documentation system for C, C++, IDL, and Java")
115 (description
116 "DOC++ is a documentation system for C, C++, IDL, and Java. It can
117generate both TeX output for high-quality hardcopies or HTML output for online
118brwosing. The documentation is extracted directly from the C/C++/IDL source
119or Java class files.")
120 (license gpl2+)))
fa8af53e
RJ
121
122(define-public scrollkeeper
123 (package
124 (name "scrollkeeper")
125 (version "0.3.14")
126 (source
127 (origin
128 (method url-fetch)
129 (uri (string-append "mirror://sourceforge/scrollkeeper/scrollkeeper-"
130 version ".tar.gz"))
131 (sha256
132 (base32 "1bfxwxc1ngh11v36z899sz9qam366r050fhkyb5adv65lb1x62sa"))))
133 (build-system gnu-build-system)
134 (arguments
135 `(#:configure-flags
136 (list (string-append "--with-xml-catalog="
137 (assoc-ref %build-inputs "docbook-xml")
138 "/xml/dtd/docbook/catalog.xml"))))
139 (inputs
140 `(("perl" ,perl)
141 ("libxml2" ,libxml2)
142 ("libxslt" ,libxslt)
143 ;; The configure script checks for either version 4.2 or 4.1.2.
144 ("docbook-xml" ,docbook-xml-4.2)))
145 (native-inputs
146 `(("intltool" ,intltool)))
147 (home-page "http://scrollkeeper.sourceforge.net/")
148 (synopsis "Open Documentation Cataloging Project")
149 (description "ScrollKeeper is a cataloging system for documentation on open
150systems. It manages documentation metadata as specified by the Open Source
151Metadata Framework and provides a simple API to allow help browsers to find,
152sort, and search the document catalog. It will also be able to communicate
153with catalog servers on the Net to search for documents which are not on the
154local system.")
155 (license lgpl2.1+)))