File: generate-directives.py

package info (click to toggle)
systemd 259.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 113,388 kB
  • sloc: ansic: 727,211; xml: 121,125; python: 36,732; sh: 34,990; cpp: 946; makefile: 278; awk: 102; lisp: 13; sed: 1
file content (26 lines) | stat: -rwxr-xr-x 622 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/usr/bin/env python3
# SPDX-License-Identifier: LGPL-2.1-or-later

import sys
import collections, re

d = collections.defaultdict(list)
for line in open(sys.argv[1]):
    m = re.match(r'^([a-zA-Z0-9-]+)\.([a-zA-Z0-9-]+),', line)
    if m:
        d[m.group(1)] += [m.group(2)]

sec_rx = sys.argv[2] if len(sys.argv) > 2 else '.'
sec_rx = re.compile(sec_rx)
unit_type = sys.argv[3] if len(sys.argv) > 3 else None

if unit_type:
    print(unit_type)

for section, items in d.items():
    if not sec_rx.match(section):
        continue
    print(f'[{section}]')
    for item in items:
        print(f'{item}=')
    print()