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.
This commit is contained in:
parent
b34503a7fd
commit
4584eaea92
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue