mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-27 07:56:14 +01:00
a00e7ed32e
glib-genmarshal is now a Python script instead of a compiled program, so we need to: -Remove the projects that are used to build the glib-genmarshal sources. -Generate the full glib-genmarshal Python script from glib-genmarshal.in -Make Python a hard build-time requirement, since we use this tool in many parts of the stack (and it is the case for glib-mkenums). -Tell people in the Visual Studio build README.txt files that Python 2.7.x or 3.x is now required for the build/"install".
39 lines
1.4 KiB
Python
39 lines
1.4 KiB
Python
# 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,
|
|
'@VERSION@': args.version}
|
|
|
|
if args.type == 'glib-mkenums':
|
|
replace_multi(srcroot + '/gobject/glib-mkenums.in',
|
|
srcroot + '/gobject/glib-mkenums',
|
|
replace_items)
|
|
elif args.type == 'glib-genmarshal':
|
|
replace_multi(srcroot + '/gobject/glib-genmarshal.in',
|
|
srcroot + '/gobject/glib-genmarshal',
|
|
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))
|