diff options
author | Daniel Mack <daniel@zonque.org> | 2015-06-17 22:52:24 +0200 |
---|---|---|
committer | Martin Pitt <martin.pitt@ubuntu.com> | 2015-06-18 08:20:03 +0200 |
commit | 4584eaea927c182ba403420701944022a222a29b (patch) | |
tree | 058cdb3bed8617e20bd2fdf27222337ac4397a48 /Makefile.am | |
parent | Merge pull request #269 from teg/udev-docs-1 (diff) | |
download | systemd-4584eaea927c182ba403420701944022a222a29b.tar.xz systemd-4584eaea927c182ba403420701944022a222a29b.zip |
build-sys: make SOURCE_XML_FILES array relative to $(top_srcdir)
When calling the build commands from another directory than the toplevel:
mkdir build
cd build
../configure [...]
... the compilation fails with the following error:
GEN man/systemd.directives.xml
Traceback (most recent call last):
File "../tools/make-directive-index.py", line 313, in make_page
_extract_directives(directive_groups, formatting, page)
File "../tools/make-directive-index.py", line 191, in _extract_directives
t = xml_parse(page)
File "/home/martin/upstream/systemd/tools/xml_helper.py", line 30, in xml_parse
doc = tree.parse(page, _parser)
File "lxml.etree.pyx", line 3301, in lxml.etree.parse (src/lxml/lxml.etree.c:72453)
File "parser.pxi", line 1791, in lxml.etree._parseDocument (src/lxml/lxml.etree.c:105915)
File "parser.pxi", line 1817, in lxml.etree._parseDocumentFromURL (src/lxml/lxml.etree.c:106214)
File "parser.pxi", line 1721, in lxml.etree._parseDocFromFile (src/lxml/lxml.etree.c:105213)
File "parser.pxi", line 1122, in lxml.etree._BaseParser._parseDocFromFile (src/lxml/lxml.etree.c:100163)
File "parser.pxi", line 580, in lxml.etree._ParserContext._handleParseResultDoc (src/lxml/lxml.etree.c:94286)
File "parser.pxi", line 690, in lxml.etree._handleParseResult (src/lxml/lxml.etree.c:95722)
File "parser.pxi", line 618, in lxml.etree._raiseParseError (src/lxml/lxml.etree.c:94754)
OSError: Error reading file 'man/bootup.xml': failed to load external entity "man/bootup.xml"
That is because the file names in the XML_FILES array are not relative
to $(top_srcdir), and hence ../tools/make-directive-index.py is called
with non-existant arguments.
To fix this, call patsubst when generating SOURCE_XML_FILES from
NON_INDEX_XML_FILES.
Diffstat (limited to 'Makefile.am')
-rw-r--r-- | Makefile.am | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am index 7dc57b18da..ba7f79b9c6 100644 --- a/Makefile.am +++ b/Makefile.am @@ -702,7 +702,7 @@ CLEANFILES += \ XML_GLOB = $(wildcard $(top_srcdir)/man/*.xml $(top_builddir)/man/*.xml) NON_INDEX_XML_FILES = $(filter-out man/systemd.index.xml,$(XML_FILES)) -SOURCE_XML_FILES = $(filter-out man/systemd.directives.xml,$(NON_INDEX_XML_FILES)) +SOURCE_XML_FILES = ${patsubst %,$(top_srcdir)/%,$(filter-out man/systemd.directives.xml,$(NON_INDEX_XML_FILES))} update-man-list: $(top_srcdir)/tools/make-man-rules.py $(XML_GLOB) $(AM_V_GEN)$(PYTHON) $^ > $(top_srcdir)/Makefile-man.tmp |