mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-05-14 01:43:11 +02:00
meson: Use glib-mkenums directly instead of via build_mkenum.py
This is no longer needed because we use templates and custom targets can capture output just fine on all platforms.
This commit is contained in:
parent
2d72a9e1d1
commit
1acd6de763
@ -1,25 +0,0 @@
|
|||||||
#!/usr/bin/env python3
|
|
||||||
|
|
||||||
# This is in its own file rather than inside meson.build
|
|
||||||
# because a) mixing the two is ugly and b) trying to
|
|
||||||
# make special characters such as \n go through all
|
|
||||||
# backends is a fool's errand.
|
|
||||||
|
|
||||||
import sys, os, shutil, subprocess
|
|
||||||
|
|
||||||
python = sys.argv[1]
|
|
||||||
glib_mkenums = sys.argv[2]
|
|
||||||
ofilename = sys.argv[3]
|
|
||||||
ofile_rel = os.path.basename(ofilename)
|
|
||||||
template_file_dir = sys.argv[4]
|
|
||||||
template_file_path = template_file_dir + '/' + ofile_rel + '.template'
|
|
||||||
headers = sys.argv[5:]
|
|
||||||
|
|
||||||
arg_array = ['--template', template_file_path]
|
|
||||||
|
|
||||||
cmd = [python, glib_mkenums]
|
|
||||||
pc = subprocess.Popen(cmd + arg_array + headers, stdout=subprocess.PIPE)
|
|
||||||
(stdo, _) = pc.communicate()
|
|
||||||
if pc.returncode != 0:
|
|
||||||
sys.exit(pc.returncode)
|
|
||||||
open(ofilename, 'wb').write(stdo)
|
|
@ -633,23 +633,25 @@ gio_headers += settings_headers
|
|||||||
gio_headers += gdbus_headers
|
gio_headers += gdbus_headers
|
||||||
install_headers(gio_headers, subdir : 'glib-2.0/gio/')
|
install_headers(gio_headers, subdir : 'glib-2.0/gio/')
|
||||||
|
|
||||||
gio_build_mkenum = find_program('build_mkenum.py')
|
# We can't use gnome.mkenums() because the GNOME module looks for glib-mkenums
|
||||||
|
# in PATH, which means you can't bootstrap glib with its own glib-mkenums.
|
||||||
gioenumtypes_h = custom_target('gioenumtypes_h',
|
gioenumtypes_h = custom_target('gioenumtypes_h',
|
||||||
output : 'gioenumtypes.h',
|
output : 'gioenumtypes.h',
|
||||||
|
capture : true,
|
||||||
input : gio_headers,
|
input : gio_headers,
|
||||||
install : true,
|
install : true,
|
||||||
install_dir : join_paths(get_option('includedir'), 'glib-2.0/gio'),
|
install_dir : join_paths(get_option('includedir'), 'glib-2.0/gio'),
|
||||||
command : [gio_build_mkenum, python, glib_mkenums,
|
command : [python, glib_mkenums,
|
||||||
'@OUTPUT@', meson.current_source_dir(),
|
'--template', meson.current_source_dir() + '/gioenumtypes.h.template',
|
||||||
'@INPUT@', gnetworking_h])
|
'@INPUT@', gnetworking_h])
|
||||||
|
|
||||||
gioenumtypes_c = custom_target('gioenumtypes_c',
|
gioenumtypes_c = custom_target('gioenumtypes_c',
|
||||||
output : 'gioenumtypes.c',
|
output : 'gioenumtypes.c',
|
||||||
|
capture : true,
|
||||||
input : gio_headers,
|
input : gio_headers,
|
||||||
depends : [gioenumtypes_h],
|
depends : [gioenumtypes_h],
|
||||||
command : [gio_build_mkenum, python, glib_mkenums,
|
command : [python, glib_mkenums,
|
||||||
'@OUTPUT@', meson.current_source_dir(),
|
'--template', meson.current_source_dir() + '/gioenumtypes.c.template',
|
||||||
'@INPUT@', gnetworking_h])
|
'@INPUT@', gnetworking_h])
|
||||||
|
|
||||||
gioenumtypes_dep = declare_dependency(sources : [gioenumtypes_h])
|
gioenumtypes_dep = declare_dependency(sources : [gioenumtypes_h])
|
||||||
|
Loading…
x
Reference in New Issue
Block a user