mirror of
https://github.com/systemd/systemd
synced 2025-10-06 00:13:24 +02:00
- pass our system include directories to make generators use our libc wrappers and latest kernel headers, - include relevant headers in generated gperf file, - use files() rather than find_program(), as the result of find_program() cannot be passed to 'input' of custom_target(), - move generate-bpf-delegate-configs.py to src/core/, as it is only used by libcore.
29 lines
834 B
Python
Executable File
29 lines
834 B
Python
Executable File
#!/usr/bin/env python3
|
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
|
|
from lxml import etree as tree
|
|
|
|
|
|
class CustomResolver(tree.Resolver):
|
|
def resolve(self, url, _id, context):
|
|
if 'custom-entities.ent' in url:
|
|
return self.resolve_filename('man/custom-entities.ent', context)
|
|
if 'ethtool-link-mode' in url:
|
|
return self.resolve_filename('src/shared/ethtool-link-mode.xml', context)
|
|
if 'bpf-delegate' in url:
|
|
return self.resolve_filename('src/core/bpf-delegate.xml', context)
|
|
|
|
return None
|
|
|
|
_parser = tree.XMLParser()
|
|
# pylint: disable=no-member
|
|
_parser.resolvers.add(CustomResolver())
|
|
|
|
def xml_parse(page):
|
|
doc = tree.parse(page, _parser)
|
|
doc.xinclude()
|
|
return doc
|
|
|
|
def xml_print(xml):
|
|
return tree.tostring(xml, pretty_print=True, encoding='utf-8')
|