gdbus-codegen: Rename --glib-min-version to --glib-min-required

This makes it consistent with the `GLIB_MIN_REQUIRED` defines which are
used for API stability/versioning in C code.

It doesn’t otherwise change the behaviour of the `--glib-min-version`
argument.

Signed-off-by: Philip Withnall <withnall@endlessm.com>

Helps: #1993
This commit is contained in:
Philip Withnall
2020-01-27 10:11:46 +00:00
parent 93607c4137
commit 4d1c3e15f9
6 changed files with 79 additions and 79 deletions

View File

@@ -62,7 +62,7 @@ def generate_header_guard(header_name):
class HeaderCodeGenerator:
def __init__(self, ifaces, namespace, generate_objmanager,
generate_autocleanup, header_name, input_files_basenames,
use_pragma, glib_min_version, outfile):
use_pragma, glib_min_required, outfile):
self.ifaces = ifaces
self.namespace, self.ns_upper, self.ns_lower = generate_namespace(namespace)
self.generate_objmanager = generate_objmanager
@@ -70,12 +70,12 @@ class HeaderCodeGenerator:
self.header_guard = generate_header_guard(header_name)
self.input_files_basenames = input_files_basenames
self.use_pragma = use_pragma
self.glib_min_version = glib_min_version
self.glib_min_required = glib_min_required
self.outfile = outfile
self.glib_min_version_is_2_64 = (glib_min_version[0] > 2 or
(glib_min_version[0] == 2 and
glib_min_version[1] >= 64))
self.glib_min_required_is_2_64 = (glib_min_required[0] > 2 or
(glib_min_required[0] == 2 and
glib_min_required[1] >= 64))
# ----------------------------------------------------------------------------------------------------
@@ -226,7 +226,7 @@ class HeaderCodeGenerator:
' %s *proxy'%(i.name_lower, m.name_lower, i.camel_name))
for a in m.in_args:
self.outfile.write(',\n %sarg_%s'%(a.ctype_in, a.name))
if self.glib_min_version_is_2_64:
if self.glib_min_required_is_2_64:
self.outfile.write(',\n GDBusCallFlags call_flags'
',\n gint timeout_msec')
if m.unix_fd:
@@ -256,7 +256,7 @@ class HeaderCodeGenerator:
' %s *proxy'%(i.name_lower, m.name_lower, i.camel_name))
for a in m.in_args:
self.outfile.write(',\n %sarg_%s'%(a.ctype_in, a.name))
if self.glib_min_version_is_2_64:
if self.glib_min_required_is_2_64:
self.outfile.write(',\n GDBusCallFlags call_flags'
',\n gint timeout_msec')
if m.unix_fd:
@@ -629,13 +629,13 @@ class HeaderCodeGenerator:
# ----------------------------------------------------------------------------------------------------
class InterfaceInfoHeaderCodeGenerator:
def __init__(self, ifaces, namespace, header_name, input_files_basenames, use_pragma, glib_min_version, outfile):
def __init__(self, ifaces, namespace, header_name, input_files_basenames, use_pragma, glib_min_required, outfile):
self.ifaces = ifaces
self.namespace, self.ns_upper, self.ns_lower = generate_namespace(namespace)
self.header_guard = generate_header_guard(header_name)
self.input_files_basenames = input_files_basenames
self.use_pragma = use_pragma
self.glib_min_version = glib_min_version
self.glib_min_required = glib_min_required
self.outfile = outfile
# ----------------------------------------------------------------------------------------------------
@@ -683,12 +683,12 @@ class InterfaceInfoHeaderCodeGenerator:
# ----------------------------------------------------------------------------------------------------
class InterfaceInfoBodyCodeGenerator:
def __init__(self, ifaces, namespace, header_name, input_files_basenames, glib_min_version, outfile):
def __init__(self, ifaces, namespace, header_name, input_files_basenames, glib_min_required, outfile):
self.ifaces = ifaces
self.namespace, self.ns_upper, self.ns_lower = generate_namespace(namespace)
self.header_name = header_name
self.input_files_basenames = input_files_basenames
self.glib_min_version = glib_min_version
self.glib_min_required = glib_min_required
self.outfile = outfile
# ----------------------------------------------------------------------------------------------------
@@ -916,19 +916,19 @@ class InterfaceInfoBodyCodeGenerator:
class CodeGenerator:
def __init__(self, ifaces, namespace, generate_objmanager, header_name,
input_files_basenames, docbook_gen, glib_min_version, outfile):
input_files_basenames, docbook_gen, glib_min_required, outfile):
self.ifaces = ifaces
self.namespace, self.ns_upper, self.ns_lower = generate_namespace(namespace)
self.generate_objmanager = generate_objmanager
self.header_name = header_name
self.input_files_basenames = input_files_basenames
self.docbook_gen = docbook_gen
self.glib_min_version = glib_min_version
self.glib_min_required = glib_min_required
self.outfile = outfile
self.glib_min_version_is_2_64 = (glib_min_version[0] > 2 or
(glib_min_version[0] == 2 and
glib_min_version[1] >= 64))
self.glib_min_required_is_2_64 = (glib_min_required[0] > 2 or
(glib_min_required[0] == 2 and
glib_min_required[1] >= 64))
# ----------------------------------------------------------------------------------------------------
@@ -1680,7 +1680,7 @@ class CodeGenerator:
%(i.name_lower, m.name_lower, i.camel_name))
for a in m.in_args:
self.outfile.write(' * @arg_%s: Argument to pass with the method invocation.\n'%(a.name))
if self.glib_min_version_is_2_64:
if self.glib_min_required_is_2_64:
self.outfile.write(' * @call_flags: Flags from the #GDBusCallFlags enumeration. If you want to allow interactive\n'
' authorization be sure to set %G_DBUS_CALL_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION.\n'
' * @timeout_msec: The timeout in milliseconds (with %G_MAXINT meaning "infinite") or\n'
@@ -1704,7 +1704,7 @@ class CodeGenerator:
' %s *proxy'%(i.name_lower, m.name_lower, i.camel_name))
for a in m.in_args:
self.outfile.write(',\n %sarg_%s'%(a.ctype_in, a.name))
if self.glib_min_version_is_2_64:
if self.glib_min_required_is_2_64:
self.outfile.write(',\n GDBusCallFlags call_flags'
',\n gint timeout_msec')
if m.unix_fd:
@@ -1726,7 +1726,7 @@ class CodeGenerator:
for a in m.in_args:
self.outfile.write(',\n arg_%s'%(a.name))
self.outfile.write('),\n')
if self.glib_min_version_is_2_64:
if self.glib_min_required_is_2_64:
self.outfile.write(' call_flags,\n'
' timeout_msec,\n')
else:
@@ -1797,7 +1797,7 @@ class CodeGenerator:
%(i.name_lower, m.name_lower, i.camel_name))
for a in m.in_args:
self.outfile.write(' * @arg_%s: Argument to pass with the method invocation.\n'%(a.name))
if self.glib_min_version_is_2_64:
if self.glib_min_required_is_2_64:
self.outfile.write(' * @call_flags: Flags from the #GDBusCallFlags enumeration. If you want to allow interactive\n'
' authorization be sure to set %G_DBUS_CALL_FLAGS_ALLOW_INTERACTIVE_AUTHORIZATION.\n'
' * @timeout_msec: The timeout in milliseconds (with %G_MAXINT meaning "infinite") or\n'
@@ -1824,7 +1824,7 @@ class CodeGenerator:
' %s *proxy'%(i.name_lower, m.name_lower, i.camel_name))
for a in m.in_args:
self.outfile.write(',\n %sarg_%s'%(a.ctype_in, a.name))
if self.glib_min_version_is_2_64:
if self.glib_min_required_is_2_64:
self.outfile.write(',\n GDBusCallFlags call_flags'
',\n gint timeout_msec')
if m.unix_fd:
@@ -1850,7 +1850,7 @@ class CodeGenerator:
for a in m.in_args:
self.outfile.write(',\n arg_%s'%(a.name))
self.outfile.write('),\n')
if self.glib_min_version_is_2_64:
if self.glib_min_required_is_2_64:
self.outfile.write(' call_flags,\n'
' timeout_msec,\n')
else:

View File

@@ -167,7 +167,7 @@ def codegen_main():
help='Use "pragma once" as the inclusion guard')
arg_parser.add_argument('--annotate', nargs=3, action='append', metavar='WHAT KEY VALUE',
help='Add annotation (may be used several times)')
arg_parser.add_argument('--glib-min-version', metavar='VERSION',
arg_parser.add_argument('--glib-min-required', metavar='VERSION',
help='Minimum version of GLib to be supported by the outputted code (default: 2.30)')
group = arg_parser.add_mutually_exclusive_group()
@@ -235,30 +235,30 @@ def codegen_main():
c_file = args.output
header_name = os.path.splitext(os.path.basename(c_file))[0] + '.h'
# Check the minimum GLib version. The minimum --glib-min-version is 2.30,
# Check the minimum GLib version. The minimum --glib-min-required is 2.30,
# because thats when gdbus-codegen was introduced. Support 1, 2 or 3
# component versions, but ignore the micro component if its present.
if args.glib_min_version:
if args.glib_min_required:
try:
parts = args.glib_min_version.split('.', 3)
glib_min_version = (int(parts[0]),
int(parts[1] if len(parts) > 1 else 0))
parts = args.glib_min_required.split('.', 3)
glib_min_required = (int(parts[0]),
int(parts[1] if len(parts) > 1 else 0))
# Ignore micro component, but still validate it:
_ = int(parts[2] if len(parts) > 2 else 0)
except (ValueError, IndexError):
print_error('Unrecognized --glib-min-version string {}'.format(
args.glib_min_version))
print_error('Unrecognized --glib-min-required string {}'.format(
args.glib_min_required))
if glib_min_version[0] < 2 or \
(glib_min_version[0] == 2 and glib_min_version[1] < 30):
print_error('Invalid --glib-min-version string {}: minimum '
'version is 2.30'.format(args.glib_min_version))
if glib_min_required[0] < 2 or \
(glib_min_required[0] == 2 and glib_min_required[1] < 30):
print_error('Invalid --glib-min-required string {}: minimum '
'version is 2.30'.format(args.glib_min_required))
else:
glib_min_version = (2, 30)
glib_min_required = (2, 30)
glib_min_version_is_2_64 = (glib_min_version[0] > 2 or
(glib_min_version[0] == 2 and
glib_min_version[1] >= 64))
glib_min_required_is_2_64 = (glib_min_required[0] > 2 or
(glib_min_required[0] == 2 and
glib_min_required[1] >= 64))
all_ifaces = []
input_files_basenames = []
@@ -266,7 +266,7 @@ def codegen_main():
with open(fname, 'rb') as f:
xml_data = f.read()
parsed_ifaces = parser.parse_dbus_xml(xml_data,
h_type_implies_unix_fd=glib_min_version_is_2_64)
h_type_implies_unix_fd=glib_min_required_is_2_64)
all_ifaces.extend(parsed_ifaces)
input_files_basenames.append(os.path.basename(fname))
@@ -290,7 +290,7 @@ def codegen_main():
header_name,
input_files_basenames,
args.pragma_once,
glib_min_version,
glib_min_required,
outfile)
gen.generate()
@@ -302,7 +302,7 @@ def codegen_main():
header_name,
input_files_basenames,
docbook_gen,
glib_min_version,
glib_min_required,
outfile)
gen.generate()
@@ -313,7 +313,7 @@ def codegen_main():
header_name,
input_files_basenames,
args.pragma_once,
glib_min_version,
glib_min_required,
outfile)
gen.generate()
@@ -323,7 +323,7 @@ def codegen_main():
args.c_namespace,
header_name,
input_files_basenames,
glib_min_version,
glib_min_required,
outfile)
gen.generate()