mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 22:08:16 -05:00
gnu: python-matplotlib-documentation: Fix build.
* gnu/packages/python.scm (python-matplotlib-documentation)[native-inputs]: Add python-mock and graphviz. [arguments]: Use separate build and install phases; correctly set latex paper size. Signed-off-by: Marius Bakke <mbakke@fastmail.com>
This commit is contained in:
parent
9c974c9366
commit
1eaaea41e5
1 changed files with 31 additions and 30 deletions
|
@ -3968,6 +3968,8 @@ (define-public python-matplotlib-documentation
|
||||||
("python-sphinx" ,python-sphinx)
|
("python-sphinx" ,python-sphinx)
|
||||||
("python-numpydoc" ,python-numpydoc)
|
("python-numpydoc" ,python-numpydoc)
|
||||||
("python-ipython" ,python-ipython)
|
("python-ipython" ,python-ipython)
|
||||||
|
("python-mock" ,python-mock)
|
||||||
|
("graphviz" ,graphviz)
|
||||||
("texlive" ,texlive)
|
("texlive" ,texlive)
|
||||||
("texinfo" ,texinfo)
|
("texinfo" ,texinfo)
|
||||||
,@(package-native-inputs python-matplotlib)))
|
,@(package-native-inputs python-matplotlib)))
|
||||||
|
@ -3975,28 +3977,27 @@ (define-public python-matplotlib-documentation
|
||||||
`(#:tests? #f ; we're only generating documentation
|
`(#:tests? #f ; we're only generating documentation
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(delete 'build)
|
(replace 'build
|
||||||
|
(lambda _
|
||||||
|
(chdir "doc")
|
||||||
|
;; Produce pdf in 'A4' format.
|
||||||
|
(substitute* "conf.py"
|
||||||
|
(("latex_paper_size = 'letter'") "")
|
||||||
|
;; latex_paper_size is deprecated -> set paper size using
|
||||||
|
;; latex_elements
|
||||||
|
(("latex_elements\\['pointsize'\\] = '11pt'" match)
|
||||||
|
;; insert at a point where latex_elements{} is defined:
|
||||||
|
(string-append match "\nlatex_elements['papersize'] = 'a4paper'")))
|
||||||
|
(zero? (system* "python" "make.py" "html" "latex" "texinfo"))))
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let* ((data (string-append (assoc-ref outputs "out") "/share"))
|
(let* ((data (string-append (assoc-ref outputs "out") "/share"))
|
||||||
(doc (string-append data "/doc/" ,name "-" ,version))
|
(doc (string-append data "/doc/python-matplotlib-" ,version))
|
||||||
(info (string-append data "/info"))
|
(info (string-append data "/info"))
|
||||||
(html (string-append doc "/html")))
|
(html (string-append doc "/html")))
|
||||||
;; Make installed package available for building the
|
|
||||||
;; documentation
|
|
||||||
(with-directory-excursion "doc"
|
|
||||||
;; Produce pdf in 'A4' format.
|
|
||||||
(substitute* (find-files "." "conf\\.py")
|
|
||||||
(("latex_paper_size = 'letter'")
|
|
||||||
"latex_paper_size = 'a4'"))
|
|
||||||
(mkdir-p html)
|
(mkdir-p html)
|
||||||
(mkdir-p info)
|
(mkdir-p info)
|
||||||
;; The doc recommends to run the 'html' target twice.
|
|
||||||
(system* "python" "make.py" "html")
|
|
||||||
(system* "python" "make.py" "html")
|
|
||||||
(copy-recursively "build/html" html)
|
(copy-recursively "build/html" html)
|
||||||
(system* "python" "make.py" "latex")
|
|
||||||
(system* "python" "make.py" "texinfo")
|
|
||||||
(symlink (string-append html "/_images")
|
(symlink (string-append html "/_images")
|
||||||
(string-append info "/matplotlib-figures"))
|
(string-append info "/matplotlib-figures"))
|
||||||
(with-directory-excursion "build/texinfo"
|
(with-directory-excursion "build/texinfo"
|
||||||
|
@ -4010,7 +4011,7 @@ (define-public python-matplotlib-documentation
|
||||||
(copy-file "build/texinfo/matplotlib.info"
|
(copy-file "build/texinfo/matplotlib.info"
|
||||||
(string-append info "/matplotlib.info"))
|
(string-append info "/matplotlib.info"))
|
||||||
(copy-file "build/latex/Matplotlib.pdf"
|
(copy-file "build/latex/Matplotlib.pdf"
|
||||||
(string-append doc "/Matplotlib.pdf"))))
|
(string-append doc "/Matplotlib.pdf")))
|
||||||
#t)))))
|
#t)))))
|
||||||
(home-page (package-home-page python-matplotlib))
|
(home-page (package-home-page python-matplotlib))
|
||||||
(synopsis "Documentation for the python-matplotlib package")
|
(synopsis "Documentation for the python-matplotlib package")
|
||||||
|
|
Loading…
Reference in a new issue