aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authorChristina O'Donnell <cdo@mutix.org>2024-04-03 23:46:34 +0100
committerLudovic Courtès <ludo@gnu.org>2024-04-11 12:35:43 +0200
commitf607663864dc021ed9ac84a1b755f02201ccd359 (patch)
treee3978817114883019c46abe9cf869f0700c683f7 /gnu/packages
parent8b65da6ac8ea5c0a5cb428e47b1bd8841ffef3fc (diff)
downloadguix-f607663864dc021ed9ac84a1b755f02201ccd359.tar.gz
guix-f607663864dc021ed9ac84a1b755f02201ccd359.zip
gnu: Add stddoc.
* gnu/packages/documentation.scm (stddoc): New variable. Change-Id: I0f60126ef78a45733ad7395352e9bad49561437b Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/documentation.scm57
1 files changed, 57 insertions, 0 deletions
diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm
index 507a326f6e..12fbaf1d0c 100644
--- a/gnu/packages/documentation.scm
+++ b/gnu/packages/documentation.scm
@@ -521,3 +521,60 @@ markdeep/latest/markdeep\\.min\\.js\\?\"></script>")
be displayed in any web browser, whether local or remote. It supports diagrams,
calendars, equations, and other features as extensions of Markdown syntax.")
(license license:bsd-2)))
+
+(define-public stddoc
+ (let ((commit "6eef9deaf2e36bae812f50e448a8012b3e5efb14")
+ (revision "1"))
+ (package
+ (name "stddoc")
+ (version (git-version "1.0.2" revision commit))
+ (home-page "https://github.com/r-lyeh/stddoc.c")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "06phjp7wbf4x1sagxwfapgv6iyiixmijxxbg2clb48kyvjg5mlwn"))
+ (snippet #~(delete-file "stddoc.c.html"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:tests? #f ; no tests
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ (substitute* "stddoc.c"
+ ;; Note: For some reason quote characters are being
+ ;; inserted into urls and tags, eg.
+ ;; 'https://morgan3d.github.io/m""arkdeep/latest/markdeep.min.js?'
+ (("https://casual-effects.com/m\"*arkdeep/latest/")
+ (string-append #$markdeep "/share/markdeep/latest/"))
+ (("https://morgan3d.github.io/m\"*arkdeep/latest/")
+ (string-append #$markdeep "/share/markdeep/latest/")))))
+ (replace 'build
+ (lambda _
+ (invoke #$(cc-for-target)
+ "-O2" "-g" "-o" "stddoc" "stddoc.c")
+ (with-input-from-file "stddoc.c"
+ (lambda _
+ (with-output-to-file "stddoc.c.html"
+ (lambda _
+ (invoke #$(if (%current-target-system)
+ "stddoc"
+ "./stddoc"))))))))
+ (replace 'install
+ (lambda _
+ (install-file "stddoc"
+ (string-append #$output "/bin"))
+ (install-file "stddoc.c.html"
+ (string-append #$output
+ "/share/doc")))))))
+ (native-inputs (if (%current-target-system) (list this-package) '()))
+ (synopsis "Documentation generator for multiple programming languages")
+ (description "@code{stddoc.c} is a tiny documentation generator with many
+supported programming languages. Markdeep code comments are extracted from stdin and
+printed into stdout as a HTML file.")
+ (license license:unlicense))))