Message ID | 1422053051-11954-1-git-send-email-dmalcolm@redhat.com |
---|---|
State | New |
Headers | show |
On Friday 2015-01-23 17:44, David Malcolm wrote: > The following patch builds and installs the JIT documentation for > the website (just HTML for now). > > It's tricky to test (I don't have a copy of /www/gcc/bin/preprocess), > but I was able to use this to generate sane-looking documentation, > both for the .texi files, and for the JIT documentation. You can easily get the preprocess script by checking out wwwdocs, cf. https://gcc.gnu.org/about.html. That still will require MetaHTML which, sadly, became an abandoned FSF project, and will require a hack or two to build, so let's just go with your patch. A few notes, though: > maintainer-scripts/ChangeLog: > PR jit/64257 > * update_web_docs_svn: Don't delete gcc/jit/docs, > since the jit docs are not .tex files (Makefile, .rst and > .png). Special-case the building of the JIT docs (using > sphinx-build). Special-case copying them up (since they > contain .css, .js and .png files in addition to .html, and > have nested subdirectories). The "since" should be part of the code, not the ChangeLog. > diff --git a/maintainer-scripts/update_web_docs_svn b/maintainer-scripts/update_web_docs_svn > index c661220..c7eb890 100755 > --- a/maintainer-scripts/update_web_docs_svn > +++ b/maintainer-scripts/update_web_docs_svn > +# The JIT is a special-case, using sphinx rather than texinfo. special case > +# The jit Makefile uses "sphinx-build", which is packaged in > +# Fedora and EPEL 6 within "python-sphinx". JIT (above) vs jit (here)? How about saying "...packaged in "python-sphinx" in Fedora and EPEL 6 and in "python-Sphinx" in openSUSE"? > +# Again, the jit is a special case, with nested subdirectories > +# below "jit", and with some non-HTML files (.png images from us, > +# plus .js and .css supplied by sphinx). > +for file in $(find jit \ > + -name "*.html" -o -name "*.css" \ > + -o -name "*.js" -o -name "*.png"); do This looks like a Bash-ism. Can you use backticks of something like find ... | while read file; ... ? > + cp $file $DOCSDIR/$file Just "cp $file $DOCSDIR/" ? This one may be a better of style, but is easier to tweak in case we need to quote later on, for example. Gerald
On Jan 26, 2015, at 3:43 AM, Gerald Pfeifer <gerald@pfeifer.com> wrote: >> +# Again, the jit is a special case, with nested subdirectories >> +# below "jit", and with some non-HTML files (.png images from us, >> +# plus .js and .css supplied by sphinx). >> +for file in $(find jit \ >> + -name "*.html" -o -name "*.css" \ >> + -o -name "*.js" -o -name "*.png"); do > > This looks like a Bash-ism. Can you use back ticks http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html $() is standard and preferred over back ticks. :-) Life goes on.
diff --git a/maintainer-scripts/update_web_docs_svn b/maintainer-scripts/update_web_docs_svn index c661220..c7eb890 100755 --- a/maintainer-scripts/update_web_docs_svn +++ b/maintainer-scripts/update_web_docs_svn @@ -116,6 +116,7 @@ find gcc -type f \( -name '*.texi' \ -o -path gcc/gcc/doc/include/texinfo.tex \ -o -path gcc/gcc/BASE-VER \ -o -path gcc/gcc/DEV-PHASE \ + -o -path "gcc/gcc/jit/docs/*" \ -o -print0 \) | xargs -0 rm -f # Build a tarball of the sources. @@ -158,6 +159,15 @@ for file in $MANUALS; do fi done +# The JIT is a special-case, using sphinx rather than texinfo. +# The jit Makefile uses "sphinx-build", which is packaged in +# Fedora and EPEL 6 within "python-sphinx". +pushd gcc/gcc/jit/docs +make html +popd +cp -a gcc/gcc/jit/docs/_build/html jit +mkdir -p $DOCSDIR/jit + # Work around makeinfo generated file names and references with # "_002d" instead of "-". find . -name '*.html' | while read f; do @@ -204,6 +214,16 @@ for file in */*.html *.ps *.pdf *.tar; do fi done +# Again, the jit is a special case, with nested subdirectories +# below "jit", and with some non-HTML files (.png images from us, +# plus .js and .css supplied by sphinx). +for file in $(find jit \ + -name "*.html" -o -name "*.css" \ + -o -name "*.js" -o -name "*.png"); do + mkdir -p $(dirname $DOCSDIR/$file) + cp $file $DOCSDIR/$file +done + cd $DOCSDIR # Finally, generate the installation documentation