diff --git a/win32/Makefile.am b/win32/Makefile.am index 3a08bd59b..b19d5607d 100644 --- a/win32/Makefile.am +++ b/win32/Makefile.am @@ -3,4 +3,5 @@ SUBDIRS = vs9 vs10 vs11 vs12 vs14 vs15 EXTRA_DIST = \ glibpc.py \ pc_base.py \ - replace.py + replace.py \ + gen_util_scripts.py diff --git a/win32/gen_util_scripts.py b/win32/gen_util_scripts.py new file mode 100644 index 000000000..50525056e --- /dev/null +++ b/win32/gen_util_scripts.py @@ -0,0 +1,33 @@ +# Simple Python script to generate the full .schema.xml files + +import os +import sys +import argparse + +from replace import replace_multi + +def main(argv): + srcroot = os.path.join(os.path.abspath(os.path.dirname(__file__)), '..') + parser = argparse.ArgumentParser(description='Generate Utility Scripts') + parser.add_argument('-t', '--type', help='Script Type (glib-mkenums or gdbus-codegen)', required=True) + parser.add_argument('--version', help='Package Version', required=True) + args = parser.parse_args() + + replace_items = {'@PYTHON@': 'python', + '@PERL_PATH@': 'perl', + '@GLIB_VERSION@': args.version} + + if args.type == 'glib-mkenums': + replace_multi(srcroot + '/gobject/glib-mkenums.in', + srcroot + '/gobject/glib-mkenums', + replace_items) + elif args.type == 'gdbus-codegen': + replace_multi(srcroot + '/gio/gdbus-2.0/codegen/gdbus-codegen.in', + srcroot + '/gio/gdbus-2.0/codegen/gdbus-codegen', + replace_items) + + else: + raise ValueError('Type must be glib-mkenums or gdbus-codegen') + +if __name__ == '__main__': + sys.exit(main(sys.argv))