1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
# tools
# Input: perl, m4, install_prefix, install_libdir, glibmm_pcname
# Output: install_procdir, m4_basefiles, m4_files, pm_basefiles, pm_files,
# gmmproc_conf_data, gmmproc, generate_wrap_init_pl
subdir('extra_defs_gen')
install_procdir = install_libdir / glibmm_pcname / 'proc'
# Configuration data for gmmproc.
gmmproc_conf_data = configuration_data()
gmmproc_conf_data.set('PERL', perl.found() ? perl.full_path() : '')
gmmproc_conf_data.set('configure_input', 'tools/gmmproc. Generated from gmmproc.in')
gmmproc_conf_data.set('prefix', install_prefix)
gmmproc_conf_data.set('exec_prefix', '${prefix}')
gmmproc_conf_data.set('libdir', '${exec_prefix}' / install_libdir)
gmmproc_conf_data.set('GLIBMM_MODULE_NAME', glibmm_pcname)
gmmproc_conf_data.set('M4', m4.found() ? '/'.join(m4.full_path().split('\\')) : '')
gmmproc_conf_data.set('PACKAGE_VERSION', meson.project_version())
gmmproc = configure_file(
input: 'gmmproc.in',
output: '@BASENAME@',
configuration: gmmproc_conf_data,
install_dir: install_procdir,
)
# Configuration data for generate_wrap_init.pl.
gen_wrap_init_conf_data = configuration_data()
gen_wrap_init_conf_data.set('PERL', perl.found() ? perl.full_path() : '')
gen_wrap_init_conf_data.set('configure_input',
'tools/generate_wrap_init.pl. Generated from generate_wrap_init.pl.in')
generate_wrap_init_pl = configure_file(
input: 'generate_wrap_init.pl.in',
output: '@BASENAME@',
configuration: gen_wrap_init_conf_data,
install_dir: install_procdir,
)
# Install m4 files for reuse by other *mm projects, when building from git.
m4_basefiles = [
'base.m4',
'class_boxedtype.m4',
'class_boxedtype_static.m4',
'class_generic.m4',
'class_gobject.m4',
'class_interface.m4',
'class_opaque_copyable.m4',
'class_opaque_refcounted.m4',
'class_shared.m4',
'compare.m4',
'convert.m4',
'convert_base.m4',
'convert_gio.m4',
'convert_glib.m4',
'convert_glibmm.m4',
'ctor.m4',
'doc.m4',
'enum.m4',
'gerror.m4',
'initialize.m4',
'initialize_base.m4',
'initialize_gio.m4',
'initialize_glib.m4',
'initialize_glibmm.m4',
'member.m4',
'method.m4',
'property.m4',
'signal.m4',
'vfunc.m4',
]
m4_files = []
foreach file : m4_basefiles
m4_files += 'm4' / file
endforeach
m4_files = files(m4_files)
install_data(m4_files, install_dir: install_procdir / 'm4')
# Install pm files for reuse by other *mm projects, when building from git.
pm_basefiles = [
'DocsParser.pm',
'Enum.pm',
'Function.pm',
'FunctionBase.pm',
'GtkDefs.pm',
'Object.pm',
'Output.pm',
'Property.pm',
'Util.pm',
'WrapParser.pm',
]
pm_files = []
foreach file : pm_basefiles
pm_files += 'pm' / file
endforeach
pm_files = files(pm_files)
install_data(pm_files, install_dir: install_procdir / 'pm')
|