Blame lasso/build_strerror.py
|
Packit Service |
88ab54 |
|
|
Packit Service |
88ab54 |
import glob
|
|
Packit Service |
88ab54 |
import re
|
|
Packit Service |
88ab54 |
import sys
|
|
Packit Service |
88ab54 |
import os
|
|
Packit Service |
ad8a8e |
from six import print_, StringIO
|
|
Packit Service |
88ab54 |
|
|
Packit Service |
88ab54 |
srcdir = sys.argv[1]
|
|
Packit Service |
88ab54 |
|
|
Packit Service |
88ab54 |
messages = dict()
|
|
Packit Service |
88ab54 |
description = ''
|
|
Packit Service |
88ab54 |
|
|
Packit Service |
ad8a8e |
with open('%s/errors.h' % srcdir,'r') as f:
|
|
Packit Service |
ad8a8e |
for line in f:
|
|
Packit Service |
ad8a8e |
m = re.match(r'^ \* LASSO.*ERROR', line)
|
|
Packit Service |
88ab54 |
if m:
|
|
Packit Service |
ad8a8e |
description = ''
|
|
Packit Service |
ad8a8e |
continue
|
|
Packit Service |
ad8a8e |
m = re.match(r'^ \* (.*[^:])$', line)
|
|
Packit Service |
ad8a8e |
if m:
|
|
Packit Service |
ad8a8e |
description += m.group(1)
|
|
Packit Service |
ad8a8e |
m = re.match(r'#define (LASSO_\w*ERROR\w+)', line)
|
|
Packit Service |
ad8a8e |
if m and description:
|
|
Packit Service |
ad8a8e |
description = re.sub(r'[ \n]+', ' ', description).strip()
|
|
Packit Service |
ad8a8e |
messages[m.group(1)] = description
|
|
Packit Service |
ad8a8e |
description = ''
|
|
Packit Service |
ad8a8e |
else:
|
|
Packit Service |
ad8a8e |
m = re.match(r'#define (LASSO_\w*ERROR\w+)',line)
|
|
Packit Service |
ad8a8e |
if m:
|
|
Packit Service |
ad8a8e |
messages[m.group(1)] = m.group(1)
|
|
Packit Service |
88ab54 |
|
|
Packit Service |
ad8a8e |
with open('%s/errors.c.in' % srcdir,'r') as f:
|
|
Packit Service |
ad8a8e |
for line in f:
|
|
Packit Service |
ad8a8e |
if '@ERROR_CASES@' in line:
|
|
Packit Service |
ad8a8e |
keys = sorted(messages.keys())
|
|
Packit Service |
ad8a8e |
for k in keys:
|
|
Packit Service |
ad8a8e |
print_(' case %s:\n'
|
|
Packit Service |
ad8a8e |
' return "%s";' %
|
|
Packit Service |
ad8a8e |
(k,messages[k].rstrip('\n')))
|
|
Packit Service |
ad8a8e |
else:
|
|
Packit Service |
ad8a8e |
print_(line, end="")
|