12 Jan, 2017

1 commit

  • commit e2a91f4f42018994d7424d405900d17eba6555d0 upstream.

    PDF build on Kernel 4.9-rc? returns an error with Sphinx 1.3.x
    and Sphinx 1.4.x, when trying to solve some cross-references.

    The solution is to redefine the \DURole macro.

    However, this is redefined too late. Move such redefinition to
    LaTeX preamble and bind it to just the Sphinx versions where the
    error is known to be present.

    Tested by building the documentation on interactive mode:
    make PDFLATEX=xelatex -C Documentation/output/./latex

    Fixes: e61a39baf74d ("[media] index.rst: Fix LaTeX error in interactive mode on Sphinx 1.4.x")
    Signed-off-by: Mauro Carvalho Chehab
    Signed-off-by: Jonathan Corbet
    Signed-off-by: Greg Kroah-Hartman

    Mauro Carvalho Chehab
     

12 Oct, 2016

1 commit

  • Pull media updates from Mauro Carvalho Chehab:

    - Documentation improvements: conversion of all non-DocBook documents
    to Sphinx and lots of fixes to the uAPI media book

    - New PCI driver for Techwell TW5864 media grabber boards

    - New SoC driver for ATMEL Image Sensor Controller

    - Removal of some obsolete SoC drivers (s5p-tv driver and soc_camera
    drivers)

    - Addition of ST CEC driver

    - Lots of drivers fixes, improvements and additions

    * tag 'media/v4.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (464 commits)
    [media] ttusb_dec: avoid the risk of go past buffer
    [media] cx23885: Fix some smatch warnings
    [media] si2165: switch to regmap
    [media] si2165: use i2c_client->dev instead of i2c_adapter->dev for logging
    [media] si2165: Remove legacy attach
    [media] cx231xx: attach si2165 driver via i2c_client
    [media] cx231xx: Prepare for attaching new style i2c_client DVB demod drivers
    [media] cx23885: attach si2165 driver via i2c_client
    [media] si2165: support i2c_client attach
    [media] si2165: avoid division by zero
    [media] rcar-vin: add R-Car gen2 fallback compatibility string
    [media] lgdt3306a: remove 20*50 msec unnecessary timeout
    [media] cx25821: Remove deprecated create_singlethread_workqueue
    [media] cx25821: Drop Freeing of Workqueue
    [media] cxd2841er: force 8MHz bandwidth for DVB-C if specified bw not supported
    [media] redrat3: hardware-specific parameters
    [media] redrat3: remove hw_timeout member
    [media] cxd2841er: BER and SNR reading for ISDB-T
    [media] dvb-usb: avoid link error with dib3000m{b,c|
    [media] dvb-usb: split out common parts of dibusb
    ...

    Linus Torvalds
     

05 Oct, 2016

1 commit

  • Pull documentation updates from Jonathan Corbet:
    "This is the documentation update pull for the 4.9 merge window.

    The Sphinx transition is still creating a fair amount of work. Here we
    have a number of fixes and, importantly, a proper PDF output solution,
    thanks to Jani Nikula, Mauro Carvalho Chehab and Markus Heiser.

    I've started a couple of new books: a driver API book (based on the
    old device-drivers.tmpl) and a development tools book. Both are meant
    to show how we can integrate together our existing documentation into
    a more coherent and accessible whole. It involves moving some stuff
    around and formatting changes, but, I think, the results are worth it.
    The good news is that most of our existing Documentation/*.txt files
    are *almost* in RST format already; the amount of messing around
    required is minimal.

    And, of course, there's the usual set of updates, typo fixes, and
    more"

    * tag 'docs-4.9' of git://git.lwn.net/linux: (120 commits)
    URL changed for Linux Foundation TAB
    dax : Fix documentation with respect to struct pages
    iio: Documentation: Correct the path used to create triggers.
    docs: Remove space-before-label guidance from CodingStyle
    docs-rst: add inter-document cross references
    Documentation/email-clients.txt: convert it to ReST markup
    Documentation/kernel-docs.txt: reorder based on timestamp
    Documentation/kernel-docs.txt: Add dates for online docs
    Documentation/kernel-docs.txt: get rid of broken docs
    Documentation/kernel-docs.txt: move in-kernel docs
    Documentation/kernel-docs.txt: remove more legacy references
    Documentation/kernel-docs.txt: add two published books
    Documentation/kernel-docs.txt: sort books per publication date
    Documentation/kernel-docs.txt: adjust LDD references
    Documentation/kernel-docs.txt: some improvements on the ReST output
    Documentation/kernel-docs.txt: Consistent indenting: 4 spaces
    Documentation/kernel-docs.txt: Add 4 paper/book references
    Documentation/kernel-docs.txt: Improve layouting of book list
    Documentation/kernel-docs.txt: Remove offline or outdated entries
    docs: Clean up bare :: lines
    ...

    Linus Torvalds
     

21 Sep, 2016

1 commit


23 Aug, 2016

7 commits


19 Aug, 2016

7 commits


15 Aug, 2016

2 commits

  • Jonathan Corbet
     
  • Add a generic way to build only a reST sub-folder with or
    without a individual *build-theme*.

    * control *sub-folders* by environment SPHINXDIRS
    * control *build-theme* by environment SPHINX_CONF

    Folders with a conf.py file, matching $(srctree)/Documentation/*/conf.py
    can be build and distributed *stand-alone*. E.g. to compile only the
    html of 'media' and 'gpu' folder use::

    make SPHINXDIRS="media gpu" htmldocs

    To use an additional sphinx-build configuration (*build-theme*) set the
    name of the configuration file to SPHINX_CONF. E.g. to compile only the
    html of 'media' with the *nit-picking* build use::

    make SPHINXDIRS=media SPHINX_CONF=conf_nitpick.py htmldocs

    With this, the Documentation/conf.py is read first and updated with the
    configuration values from the Documentation/media/conf_nitpick.py.

    Signed-off-by: Markus Heiser
    Signed-off-by: Jonathan Corbet

    Markus Heiser
     

13 Aug, 2016

3 commits


15 Jul, 2016

1 commit

  • The rst2pdf tool is a very broken toolchain, with is not capable
    of parsing complex documents. As such, it doesn't build the
    media book, failing with:

    [ERROR] pdfbuilder.py:130 too many values to unpack

    (using rst2pdf version 0.93.dev-r0 and Sphinx version 1.4.5)

    So, make it build only the books we know that are safe to build.

    Signed-off-by: Mauro Carvalho Chehab

    --

    Btw, with the standard Sphinx version shipped on Fedora 24 (Sphinx
    1.3.1), rst2pdf doesn't build even the simple kernel-documentation,
    failing with this error:
    writing Kernel... [ERROR] pdfbuilder.py:130 list index out of range

    This is a known bug:
    https://github.com/sphinx-doc/sphinx/issues/1844

    So, maybe we should just disable pdf generation from RST for good,
    as I suspect that maintaining it with a broken toolchain will be a
    big headache.

    Mauro Carvalho Chehab
     

08 Jul, 2016

1 commit


06 Jul, 2016

1 commit


01 Jul, 2016

1 commit

  • Implements the reST flat-table directive.

    The ``flat-table`` is a double-stage list similar to the ``list-table`` with
    some additional features:

    * column-span: with the role ``cspan`` a cell can be extended through
    additional columns

    * row-span: with the role ``rspan`` a cell can be extended through
    additional rows

    * auto span rightmost cell of a table row over the missing cells on the right
    side of that table-row. With Option ``:fill-cells:`` this behavior can
    changed from *auto span* to *auto fill*, which automaticly inserts (empty)

    list tables

    The *list tables* formats are double stage lists. Compared to the
    ASCII-art they migth be less comfortable for readers of the
    text-files. Their advantage is, that they are easy to create/modify
    and that the diff of a modification is much more meaningfull, because
    it is limited to the modified content.

    The initial implementation was taken from the sphkerneldoc project [1]

    [1] https://github.com/return42/sphkerneldoc/commits/master/scripts/site-python/linuxdoc/rstFlatTable.py

    Signed-off-by: Markus Heiser
    [jc: fixed typos and misspellings in the docs]
    Signed-off-by: Jonathan Corbet

    Markus Heiser
     

30 May, 2016

3 commits

  • Read the version and release from the top level Makefile (for use when
    Sphinx is invoked directly, by e.g. Read the Docs), but override them
    via Sphinx command line arguments in a normal documentation build.

    Signed-off-by: Jani Nikula

    Jani Nikula
     
  • Tell Sphinx where to find the extension, and pass on the kernel src tree
    and kernel-doc paths to the extension.

    With this, any .rst files under Documentation may contain the kernel-doc
    rst directive to include kernel-doc documentation from any source file.

    While building, it may be handy to pass kernel-doc extension
    configuration on the command line. For example, 'make SPHINXOPTS="-D
    kerneldoc_verbosity=0" htmldocs' silences all stderr output from
    kernel-doc when the kernel-doc exit code is 0. (The stderr will be
    logged unconditionally when the exit code is non-zero.)

    Signed-off-by: Jani Nikula

    Jani Nikula
     
  • Add basic configuration and makefile to build documentation from any
    .rst files under Documentation using Sphinx. For starters, there's just
    the placeholder index.rst.

    At the top level Makefile, hook Sphinx documentation targets alongside
    (but independent of) the DocBook toolchain, having both be run on the
    various 'make *docs' targets.

    All Sphinx processing is placed into Documentation/Makefile.sphinx. Both
    that and the Documentation/DocBook/Makefile are now expected to handle
    all the documentation targets, explicitly ignoring them if they're not
    relevant for that particular toolchain. The changes to the existing
    DocBook Makefile are kept minimal.

    There is graceful handling of missing Sphinx and rst2pdf (which is
    needed for pdf output) by checking for the tool and python module,
    respectively, with informative messages to the user.

    If the Read the Docs theme (sphinx_rtd_theme) is available, use it, but
    otherwise gracefully fall back to the Sphinx default theme, with an
    informative message to the user, and slightly less pretty HTML output.

    Sphinx can now handle htmldocs, pdfdocs (if rst2pdf is available),
    epubdocs and xmldocs targets. The output documents are written into per
    output type subdirectories under Documentation/output.

    Finally, you can pass options to sphinx-build using the SPHINXBUILD make
    variable. For example, 'make SPHINXOPTS=-v htmldocs' for more verbose
    output from Sphinx.

    This is based on the original work by Jonathan Corbet, but he probably
    wouldn't recognize this as his own anymore.

    Signed-off-by: Jani Nikula

    Jani Nikula