From 7d4a62f8c1404ed426500b97af03d4ef8d034a71 Mon Sep 17 00:00:00 2001 From: "Anthony G. Basile" Date: Thu, 15 Nov 2012 10:33:16 -0500 Subject: Isolation of udev code from remaining systemd This commit is a first attempt to isolate the udev code from the remaining code base. It intentionally does not modify any files but purely delete files which, on a first examination, appear to not be needed. This is a sweeping commit which may easily have missed needed code. Files can be retrieved by doing a checkout from the previous commit: git checkout 2944f347d0 -- --- make-directive-index.py | 149 ------------------------------------------------ 1 file changed, 149 deletions(-) delete mode 100755 make-directive-index.py (limited to 'make-directive-index.py') diff --git a/make-directive-index.py b/make-directive-index.py deleted file mode 100755 index eaf7019a2b..0000000000 --- a/make-directive-index.py +++ /dev/null @@ -1,149 +0,0 @@ -# -*- Mode: python; coding: utf-8; indent-tabs-mode: nil -*- */ -# -# This file is part of systemd. -# -# Copyright 2012 Zbigniew Jędrzejewski-Szmek -# -# systemd is free software; you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as published by -# the Free Software Foundation; either version 2.1 of the License, or -# (at your option) any later version. -# -# systemd is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with systemd; If not, see . - -import sys -import collections -import xml.etree.ElementTree as tree - -TEMPLATE = '''\ - - - - systemd.directives - systemd - - - - Developer - Zbigniew - Jędrzejewski-Szmek - zbyszek@in.waw.pl - - - - - - systemd.directives - 5 - - - - systemd.directives - Index of configuration directives - - - - Unit directives - - Directives for configuring units, used in unit - files. - - - - - - System manager directives - - Directives for configuring the behaviour of the - systemd process. - - - - - - UDEV directives - - Directives for configuring systemd units through the - udev database. - - - - - - Journal directives - - Directives for configuring the behaviour of the - journald process. - - - - -''' - -def _extract_directives(directive_groups, page): - t = tree.parse(page) - section = t.find('./refmeta/manvolnum').text - pagename = t.find('./refmeta/refentrytitle').text - for variablelist in t.iterfind('.//variablelist'): - klass = variablelist.attrib.get('class') or 'unit-directives' - stor = directive_groups[klass] - for varname in variablelist.iterfind('./varlistentry/term/varname'): - text = ''.join(varname.text.partition('=')[:2]) - stor[text].append((pagename, section)) - -def _make_section(refentry, name, directives): - varlist = refentry.find(".//*[@id='{}']".format(name)) - for varname, manpages in sorted(directives.items()): - entry = tree.SubElement(varlist, 'varlistentry') - a = tree.SubElement(tree.SubElement(entry, 'term'), 'varname') - a.text = varname - para = tree.SubElement(tree.SubElement(entry, 'listitem'), 'para') - - b = None - for manpage, manvolume in sorted(manpages): - if b is not None: - b.tail = ', ' - b = tree.SubElement(para, 'citerefentry') - c = tree.SubElement(b, 'refentrytitle') - c.text = manpage - d = tree.SubElement(b, 'manvolnum') - d.text = manvolume - entry.tail = '\n\n' - -def _make_page(directive_groups): - """Create an XML tree from directive_groups. - - directive_groups = { - 'class': {'variable': [('manpage', 'manvolume'), ...], - 'variable2': ...}, - ... - } - """ - refentry = tree.fromstring(TEMPLATE) - - for name, directives in directive_groups.items(): - _make_section(refentry, name, directives) - - return refentry - -def make_page(xml_files): - "Extract directives from xml_files and return XML index tree." - directive_groups = {name:collections.defaultdict(list) - for name in ['unit-directives', - 'udev-directives', - 'systemd-directives', - 'journal-directives', - ]} - for page in xml_files: - _extract_directives(directive_groups, page) - - return _make_page(directive_groups) - -if __name__ == '__main__': - tree.dump(make_page(sys.argv[1:])) -- cgit v1.2.3-54-g00ecf