diff mbox

More fixes for update_web_docs_svn for jit docs (PR jit/64257)

Message ID 1423074736-47636-1-git-send-email-dmalcolm@redhat.com
State New
Headers show

Commit Message

David Malcolm Feb. 4, 2015, 6:32 p.m. UTC
To build the jit docs, we need to use sphinx 1.0 or later; the
0.6.6 in EPEL 6 doesn't support all the directives we need.

The alternate python-sphinx10 in EPEL 6 has 1.0.8:
  python-sphinx10-1.0.8-1.el6.noarch
which is able to build the jit docs, apart from not having the
"pyramid" theme (this theme appears to have been added in 1.1).

Change the theme to "sphinxdoc", which seems to be the most
attractive theme in 1.0.8 (FWIW, it appears that LLVM are using
a custom variant of this sphinx theme for the docs on their
website).

I was able to use these changes to run the jit docs Makefile on
sourceware.org; the generated HTML can be seen at:
https://dmalcolm.fedorapeople.org/gcc/2015-02-04/jit-docs-sphinxdocs/

OK for trunk?

gcc/jit/ChangeLog:
	PR jit/64257
	* docs/conf.py (html_theme): Change from 'pyramid'
	to 'sphinxdoc'.

maintainer-scripts/ChangeLog:
	PR jit/64257
	* update_web_docs_svn: Update build of jit docs to use EPEL6
	variant install of sphinx 1.0.8, rather than 0.6.6.
---
 gcc/jit/docs/conf.py                   |  2 +-
 maintainer-scripts/update_web_docs_svn | 18 ++++++++++++++----
 2 files changed, 15 insertions(+), 5 deletions(-)

Comments

Gerald Pfeifer Feb. 4, 2015, 6:47 p.m. UTC | #1
On Wednesday 2015-02-04 13:32, David Malcolm wrote:
> OK for trunk?
> 
> gcc/jit/ChangeLog:
> 	PR jit/64257
> 	* docs/conf.py (html_theme): Change from 'pyramid'
> 	to 'sphinxdoc'.
> 
> maintainer-scripts/ChangeLog:
> 	PR jit/64257
> 	* update_web_docs_svn: Update build of jit docs to use EPEL6
> 	variant install of sphinx 1.0.8, rather than 0.6.6.

Yes.

> +# python-sphinx10 package.  The latter installs its executable as:

Here I'd omit the colon, but that is more of a stylistic question
I guess.

Gerald
David Malcolm Feb. 4, 2015, 7:10 p.m. UTC | #2
On Wed, 2015-02-04 at 19:47 +0100, Gerald Pfeifer wrote:
> On Wednesday 2015-02-04 13:32, David Malcolm wrote:
> > OK for trunk?
> > 
> > gcc/jit/ChangeLog:
> > 	PR jit/64257
> > 	* docs/conf.py (html_theme): Change from 'pyramid'
> > 	to 'sphinxdoc'.
> > 
> > maintainer-scripts/ChangeLog:
> > 	PR jit/64257
> > 	* update_web_docs_svn: Update build of jit docs to use EPEL6
> > 	variant install of sphinx 1.0.8, rather than 0.6.6.
> 
> Yes.
> 
> > +# python-sphinx10 package.  The latter installs its executable as:
> 
> Here I'd omit the colon, but that is more of a stylistic question
> I guess.

Thanks. I've committed it to svn trunk as r220412, omitting the colon.

Gerald: Please can you do the "svn up" on the relevant machine again, so
that it gets the updated "update_web_docs_svn"?

Hopefully this will fix the cronjob...

Dave
Gerald Pfeifer Feb. 4, 2015, 9:21 p.m. UTC | #3
On Wednesday 2015-02-04 14:10, David Malcolm wrote:
> Gerald: Please can you do the "svn up" on the relevant machine again, 
> so that it gets the updated "update_web_docs_svn"?

That was my plan, yes. :-)  I just did that and manually ran
the script, and it seems to work.

Still, do you think you can add a bit of error handling such
that an issue like the one we had (cf. 
https://gcc.gnu.org/ml/gccadmin/2015-q1/msg00077.html ) does
not kill the entire script?  A bit of resilience would be good.

Gerald
Andrew Pinski Feb. 5, 2015, 1:28 a.m. UTC | #4
On Wed, Feb 4, 2015 at 10:32 AM, David Malcolm <dmalcolm@redhat.com> wrote:
> To build the jit docs, we need to use sphinx 1.0 or later; the
> 0.6.6 in EPEL 6 doesn't support all the directives we need.
>
> The alternate python-sphinx10 in EPEL 6 has 1.0.8:
>   python-sphinx10-1.0.8-1.el6.noarch
> which is able to build the jit docs, apart from not having the
> "pyramid" theme (this theme appears to have been added in 1.1).
>
> Change the theme to "sphinxdoc", which seems to be the most
> attractive theme in 1.0.8 (FWIW, it appears that LLVM are using
> a custom variant of this sphinx theme for the docs on their
> website).
>
> I was able to use these changes to run the jit docs Makefile on
> sourceware.org; the generated HTML can be seen at:
> https://dmalcolm.fedorapeople.org/gcc/2015-02-04/jit-docs-sphinxdocs/

Can you document this in https://gcc.gnu.org/install/prerequisites.html ?
Also can you make sure that release script creates the precreates
documentation so people don't need to install something else to
install GCC (releases don't need makeinfo to install).

Thanks,
Andrew


>
> OK for trunk?
>
> gcc/jit/ChangeLog:
>         PR jit/64257
>         * docs/conf.py (html_theme): Change from 'pyramid'
>         to 'sphinxdoc'.
>
> maintainer-scripts/ChangeLog:
>         PR jit/64257
>         * update_web_docs_svn: Update build of jit docs to use EPEL6
>         variant install of sphinx 1.0.8, rather than 0.6.6.
> ---
>  gcc/jit/docs/conf.py                   |  2 +-
>  maintainer-scripts/update_web_docs_svn | 18 ++++++++++++++----
>  2 files changed, 15 insertions(+), 5 deletions(-)
>
> diff --git a/gcc/jit/docs/conf.py b/gcc/jit/docs/conf.py
> index 1bdc081..8f4dd8b 100644
> --- a/gcc/jit/docs/conf.py
> +++ b/gcc/jit/docs/conf.py
> @@ -107,7 +107,7 @@ pygments_style = 'sphinx'
>
>  # The theme to use for HTML and HTML Help pages.  See the documentation for
>  # a list of builtin themes.
> -html_theme = 'pyramid'
> +html_theme = 'sphinxdoc'
>
>  # Theme options are theme-specific and customize the look and feel of a theme
>  # further.  For a list of options available for each theme, see the
> diff --git a/maintainer-scripts/update_web_docs_svn b/maintainer-scripts/update_web_docs_svn
> index ac3bae6..e0132dc 100755
> --- a/maintainer-scripts/update_web_docs_svn
> +++ b/maintainer-scripts/update_web_docs_svn
> @@ -166,11 +166,21 @@ for file in $MANUALS; do
>  done
>
>  # The jit is a special-case, using sphinx rather than texinfo.
> -# The jit Makefile uses "sphinx-build".  This is packaged in
> -# Fedora and EPEL 6 within "python-sphinx", and in openSUSE
> -# within "python-Sphinx".
> +# Specifically, the jit docs need sphinx 1.0 or later.
> +#
> +# The jit/docs Makefile uses the executable $(SPHINXBUILD),
> +# defaulting to "sphinx-build".
> +#
> +# sphinx is packaged in Fedora and EPEL 6 within "python-sphinx",
> +# and in openSUSE within "python-Sphinx".
> +#
> +# For EPEL6, python-sphinx is sphinx 0.6.6, which is missing various
> +# directives (e.g. ":c:macro:"), so we need the variant
> +# python-sphinx10 package.  The latter installs its executable as:
> +#   /usr/bin/sphinx-1.0-build
> +# so we need to override SPHINXBUILD with this when invoking "make".
>  pushd gcc/gcc/jit/docs
> -make html
> +make SPHINXBUILD=/usr/bin/sphinx-1.0-build html
>  popd
>  cp -a gcc/gcc/jit/docs/_build/html jit
>  mkdir -p $DOCSDIR/jit
> --
> 1.8.5.3
>
diff mbox

Patch

diff --git a/gcc/jit/docs/conf.py b/gcc/jit/docs/conf.py
index 1bdc081..8f4dd8b 100644
--- a/gcc/jit/docs/conf.py
+++ b/gcc/jit/docs/conf.py
@@ -107,7 +107,7 @@  pygments_style = 'sphinx'
 
 # The theme to use for HTML and HTML Help pages.  See the documentation for
 # a list of builtin themes.
-html_theme = 'pyramid'
+html_theme = 'sphinxdoc'
 
 # Theme options are theme-specific and customize the look and feel of a theme
 # further.  For a list of options available for each theme, see the
diff --git a/maintainer-scripts/update_web_docs_svn b/maintainer-scripts/update_web_docs_svn
index ac3bae6..e0132dc 100755
--- a/maintainer-scripts/update_web_docs_svn
+++ b/maintainer-scripts/update_web_docs_svn
@@ -166,11 +166,21 @@  for file in $MANUALS; do
 done
 
 # The jit is a special-case, using sphinx rather than texinfo.
-# The jit Makefile uses "sphinx-build".  This is packaged in
-# Fedora and EPEL 6 within "python-sphinx", and in openSUSE
-# within "python-Sphinx".
+# Specifically, the jit docs need sphinx 1.0 or later.
+#
+# The jit/docs Makefile uses the executable $(SPHINXBUILD),
+# defaulting to "sphinx-build".
+#
+# sphinx is packaged in Fedora and EPEL 6 within "python-sphinx",
+# and in openSUSE within "python-Sphinx".
+#
+# For EPEL6, python-sphinx is sphinx 0.6.6, which is missing various
+# directives (e.g. ":c:macro:"), so we need the variant
+# python-sphinx10 package.  The latter installs its executable as:
+#   /usr/bin/sphinx-1.0-build
+# so we need to override SPHINXBUILD with this when invoking "make".
 pushd gcc/gcc/jit/docs
-make html
+make SPHINXBUILD=/usr/bin/sphinx-1.0-build html
 popd
 cp -a gcc/gcc/jit/docs/_build/html jit
 mkdir -p $DOCSDIR/jit