Commit Graph

15 Commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek
1a13e31d27 build-sys,man: use XML entities to substite strings
This makes it easier to add substitutions to man pages,
avoiding the separate transformation step.

mkdir -p's are removed from the rule, because xsltproc will
will create directories on it's own.

All in all, two or three forks per man page are avoided,
which should make things marginally faster.

Unfortunately python parsers must too be tweaked to handle
entities. This isn't particularly easy: with lxml a custom
Resolver can be used, but the stdlib etree doesn't support
external entities *at all*. So when running without lxml,
the entities are just removed. Right now it doesn't matter,
since the entities are not indexed anyway. But I intend to
add indexing of filenames in the near future, and then the
index generated without lxml might be missing a few lines.
Oh well.
2013-03-29 20:30:21 -04:00
Zbigniew Jędrzejewski-Szmek
80cb917e62 man: use lxml for faster generation and pretty printing 2013-03-09 08:47:50 -05:00
Zbigniew Jędrzejewski-Szmek
3c1872ebb6 build-sys: check if manpage ids match file names
Commit ed1553a fixed current errors, but this error is easy to
make. A wrong id messes up the indexes and linking, so it is
better to catch this automatically.
2013-03-07 13:04:17 -05:00
Zbigniew Jędrzejewski-Szmek
56ba3c78ae build-sys: create Makefile-man.am automatically
man rules were repeating the same information in too many places,
which was error prone. Those rules can be easily generated from .xml
files. For efficiency and because python is not a required dependency,
Makefile-man.am is only regenerated when requested with

  make update-man-list

If no metadata in man/*.xml changed, this file should not change. So
only when a new man page or a new alias is added, this file should
show up in 'git diff'. The change should then be committed.

If the support for building from git without python was dropped, we
could drop Makefile-man.am from version control. This would also
increase the partial build time (since more stuff would be rebuild
whenever sources in man/*.xml would be modified), so it would probably
wouldn't be worth it.
2013-02-06 23:16:16 -05:00
Zbigniew Jędrzejewski-Szmek
dd6f5e4fb8 make-man-index: work around UnicodeDecodeError 2013-01-15 11:30:42 -05:00
Zbigniew Jędrzejewski-Szmek
f6b6728d1d man: generate xml not html for index
This way we also get a man page. The output is not as polished.
I hope that it doesn't matter too much.

index.html is not generated now, the page is called
systemd.index.html. If necessary, an install hook should be added.
2013-01-15 11:30:42 -05:00
Zbigniew Jędrzejewski-Szmek
c4eb236a2c build-sys: invoke scripts with $PYTHON during build
Python binary to be used during compilation can be set with
./configure PYTHON=...

The she-bang line is removed, since it is not used anymore.
2013-01-04 22:22:21 -05:00
Lennart Poettering
6b91ae13f2 python: change license to LGPL 2.1
The original license has been MIT for this code, but David Strauss (its
original author) agreed to relicense it to LGPL 2.1 for inclusion in
systemd.
2012-09-13 04:06:11 +02:00
Mantas Mikulėnas
b56d18ee60 make-man-index.py: compatibility with Python 3
Despite its name, ElementTree.tostring() returns already-encoded
bytes() instead of a string in Python 3; sys.stdout doesn't like that.
2012-07-25 11:26:22 +02:00
Kay Sievers
7653b3c29a make-man-index.py: pretty-print HTML 2012-07-16 21:47:01 +02:00
Lennart Poettering
a6c9b1c492 man: actually generate h2 headers for letters in index as we meant to 2012-07-16 19:26:08 +02:00
Lennart Poettering
051eaebb58 man: include number of man pages in index page 2012-07-16 19:11:10 +02:00
Lennart Poettering
92e1ecc62b man: set description in italics in the index 2012-07-16 18:10:18 +02:00
Lennart Poettering
8864111310 man: show man page summary in index, too 2012-07-16 17:39:26 +02:00
Lennart Poettering
9c4fa6ed10 min: generate an index page for all man pages
This makes use of python, if it is available
2012-07-16 17:19:39 +02:00