forked from lix-project/lix
9d2669d218
build logs. The program `log2xml' converts a Nix build log (read from standard input) into XML file that can then be converted to XHTML by the `log2html.xsl' stylesheet. The CSS stylesheet `logfile.css' is necessary to make it look good. This is primarily useful if the log file has a *tree structure*, i.e., that sub-tasks such as the various phases of a build (unpack, configure, make, etc.) or recursive invocations of Make are represented as such. While a log file is in principle an unstructured plain text file, builders can communicate this tree structure to `log2xml' by using escape sequences: - "\e[p" starts a new nesting level; the first line following the escape code is the header; - "\e[q" ends the current nesting level. The generic builder in nixpkgs (not yet committed) uses this. It shouldn't be to hard to patch GNU Make to speak this protocol. Further improvements to the generated HTML pages are to allow collapsing/expanding of subtrees, and to abbreviate store paths (but to show the full path by hovering the mouse over it).
9 lines
154 B
Makefile
9 lines
154 B
Makefile
bin_PROGRAMS = log2xml
|
|
|
|
log2xml_SOURCES = log2xml.cc
|
|
|
|
%.xml: %.log log2xml
|
|
./log2xml < $< > $@
|
|
|
|
%.html: %.xml log2html.xsl
|
|
xsltproc log2html.xsl $< > $@
|