[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#55248] [PATCH v3 4/9] gnu: chez-scheme: Refactor documentation phas
From: |
Philip McGrath |
Subject: |
[bug#55248] [PATCH v3 4/9] gnu: chez-scheme: Refactor documentation phases. |
Date: |
Mon, 9 May 2022 02:02:45 -0400 |
Patches merged in both upstream Chez Scheme and Racket's variant will
soon let us replace the 'install-docs' phase with just
'make install-docs'. Separating the 'link-doc-pdfs' phase (which won't
change) leaves us well-prepared for the transition, regardless of
whether Chez Scheme 9.5.10 or Racket 8.6 is released first.
* gnu/packages/chez.scm (chez-scheme)[arguments]: Split 'install-doc'
phase into 'install-docs' (matching the future 'make' target) and
'link-doc-pdfs'.
---
gnu/packages/chez.scm | 64 ++++++++++++++++++++++++-------------------
1 file changed, 36 insertions(+), 28 deletions(-)
diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm
index 34545b1f58..49051abd17 100644
--- a/gnu/packages/chez.scm
+++ b/gnu/packages/chez.scm
@@ -309,35 +309,43 @@ (define-public chez-scheme
(string-append (dirname scheme.boot)
"/chez-scheme.boot")))))))
;; Building the documentation requires stex and a running scheme.
- ;; FIXME: this is probably wrong for cross-compilation
- (add-after 'install-symlink 'install-doc
+ (add-after 'install-symlink 'install-docs
(lambda* (#:key native-inputs inputs outputs #:allow-other-keys)
- (match (assoc-ref outputs "doc")
- (#f
- (format #t "not installing docs~%"))
- (doc-prefix
- (let* ((chez+version (strip-store-file-name #$output))
- (scheme (search-input-file outputs "/bin/scheme"))
- (stexlib (search-input-directory (or native-inputs
- inputs)
- "/lib/stex"))
- (doc-dir (string-append doc-prefix
- "/share/doc/"
- chez+version)))
- (define* (stex-make #:optional (suffix ""))
- (invoke "make" "install"
- (string-append "Scheme=" scheme)
- (string-append "STEXLIB=" stexlib)
- (string-append "installdir=" doc-dir suffix)))
- (with-directory-excursion "csug"
- (stex-make "/csug"))
- (with-directory-excursion "release_notes"
- (stex-make "/release_notes"))
- (with-directory-excursion doc-dir
- (symlink "release_notes/release_notes.pdf"
- "release_notes.pdf")
- (symlink "csug/csug9_5.pdf"
- "csug.pdf"))))))))))
+ (let* ((doc-prefix (or (assoc-ref outputs "doc")
+ (assoc-ref outputs "out")))
+ (chez+version (strip-store-file-name #$output))
+ (scheme (search-input-file outputs "/bin/scheme"))
+ (stexlib (search-input-directory (or native-inputs
+ inputs)
+ "/lib/stex"))
+ (doc-dir (string-append doc-prefix
+ "/share/doc/"
+ chez+version)))
+ (define* (stex-make #:optional (suffix ""))
+ (invoke "make" "install"
+ (string-append "Scheme=" scheme)
+ (string-append "STEXLIB=" stexlib)
+ (string-append "installdir=" doc-dir suffix)))
+ (with-directory-excursion "csug"
+ (stex-make "/csug"))
+ (with-directory-excursion "release_notes"
+ (stex-make "/release_notes")))))
+ (add-after 'install-docs 'link-doc-pdfs
+ ;; otherwise, it's hard to notice them in a forest of HTML files
+ (lambda* (#:key outputs #:allow-other-keys)
+ (with-directory-excursion
+ (string-append (or (assoc-ref outputs "doc")
+ (assoc-ref outputs "out"))
+ "/share/doc/"
+ (strip-store-file-name #$output))
+ (symlink "release_notes/release_notes.pdf"
+ "release_notes.pdf")
+ (match (find-files "csug"
+ "csug.*\\.pdf$" ;; embeded version number
+ #:fail-on-error? #t)
+ ((pth)
+ (symlink pth
+ "csug.pdf")))))))))
;; Chez Scheme does not have a MIPS backend.
;; FIXME: Debian backports patches to get armhf working.
;; We should too. It is the Chez machine type arm32le
--
2.32.0
- [bug#55248] [PATCH v2 0/9] gnu: Update Racket to 8.5 and Chez Scheme to 9.5.8., (continued)
- [bug#55248] [PATCH v2 0/9] gnu: Update Racket to 8.5 and Chez Scheme to 9.5.8., Philip McGrath, 2022/05/08
- [bug#55248] [PATCH v2 8/9] gnu: chez-scheme-for-racket: Fix supported systems., Philip McGrath, 2022/05/08
- [bug#55248] [PATCH v2 4/9] gnu: chez-scheme: Refactor documentation phases., Philip McGrath, 2022/05/08
- [bug#55248] [PATCH v2 6/9] gnu: stex: Get machine type dynamically., Philip McGrath, 2022/05/08
- [bug#55248] [PATCH v2 2/9] gnu: racket: Fix out-of-source build., Philip McGrath, 2022/05/08
- [bug#55248] [PATCH v2 2/9] gnu: racket: Fix out-of-source build., Liliana Marie Prikler, 2022/05/08
- [bug#55248] [PATCH v3 0/9] gnu: Update Racket to 8.5 and Chez Scheme to 9.5.8., Philip McGrath, 2022/05/09
- [bug#55248] [PATCH v3 2/9] gnu: racket: Fix out-of-source build., Philip McGrath, 2022/05/09
- [bug#55248] [PATCH v3 3/9] gnu: chez-scheme: Update to 9.5.8., Philip McGrath, 2022/05/09
- [bug#55248] [PATCH v3 1/9] gnu: racket: Update to 8.5., Philip McGrath, 2022/05/09
- [bug#55248] [PATCH v3 4/9] gnu: chez-scheme: Refactor documentation phases.,
Philip McGrath <=
- [bug#55248] [PATCH v3 5/9] gnu: chez-scheme: Refactor configure phase and fix '--threads'., Philip McGrath, 2022/05/09
- [bug#55248] [PATCH v3 6/9] gnu: stex: Get machine type dynamically., Philip McGrath, 2022/05/09
- [bug#55248] [PATCH v3 7/9] gnu: chez-upstream-features-for-system: Improve implementation., Philip McGrath, 2022/05/09
- [bug#55248] [PATCH v3 7/9] gnu: chez-upstream-features-for-system: Improve implementation., Liliana Marie Prikler, 2022/05/09
- [bug#55248] [PATCH v3 7/9] gnu: chez-upstream-features-for-system: Improve implementation., Philip McGrath, 2022/05/09
- [bug#55248] [PATCH v3 7/9] gnu: chez-upstream-features-for-system: Improve implementation., Liliana Marie Prikler, 2022/05/09
- [bug#55248] [PATCH v3 8/9] gnu: chez-scheme-for-racket: Fix supported systems., Philip McGrath, 2022/05/09
- [bug#55248] [PATCH v3 8/9] gnu: chez-scheme-for-racket: Fix supported systems., Liliana Marie Prikler, 2022/05/09
- [bug#55248] [PATCH v3 8/9] gnu: chez-scheme-for-racket: Fix supported systems., Philip McGrath, 2022/05/09
- [bug#55248] [PATCH v3 8/9] gnu: chez-scheme-for-racket: Fix supported systems., Liliana Marie Prikler, 2022/05/09