at 24.11-pre 214 lines 8.2 kB view raw
1diff --git a/gio/gdbus-2.0/codegen/meson.build b/gio/gdbus-2.0/codegen/meson.build 2index 6d19cd4ba..0205e5074 100644 3--- a/gio/gdbus-2.0/codegen/meson.build 4+++ b/gio/gdbus-2.0/codegen/meson.build 5@@ -20,7 +20,7 @@ gdbus_codegen_conf.set('DATADIR', glib_datadir) 6 # Install gdbus-codegen executable 7 gdbus_codegen = configure_file(input : 'gdbus-codegen.in', 8 output : 'gdbus-codegen', 9- install_dir : get_option('bindir'), 10+ install_dir : get_option('devbindir'), 11 install_tag : 'bin-devel', 12 configuration : gdbus_codegen_conf 13 ) 14diff --git a/gio/meson.build b/gio/meson.build 15index 59c2b0fc0..87cbb8229 100644 16--- a/gio/meson.build 17+++ b/gio/meson.build 18@@ -885,14 +885,15 @@ pkg.generate(libgio, 19 variables : [ 20 'schemasdir=' + '${datadir}' / schemas_subdir, 21 'dtdsdir=' + '${datadir}' / dtds_subdir, 22+ 'devbindir=' + get_option('devbindir'), 23 'giomoduledir=' + pkgconfig_giomodulesdir, 24 'gio=' + '${bindir}' / 'gio', 25- 'gio_querymodules=' + pkgconfig_multiarch_bindir / 'gio-querymodules', 26- 'glib_compile_schemas=' + pkgconfig_multiarch_bindir / 'glib-compile-schemas', 27- 'glib_compile_resources=' + '${bindir}' / 'glib-compile-resources', 28+ 'gio_querymodules=' + '${devbindir}' / 'gio-querymodules', 29+ 'glib_compile_schemas=' + '${devbindir}' / 'glib-compile-schemas', 30+ 'glib_compile_resources=' + '${devbindir}' / 'glib-compile-resources', 31 'gdbus=' + '${bindir}' /'gdbus', 32- 'gdbus_codegen=' + '${bindir}' / 'gdbus-codegen', 33- 'gresource=' + '${bindir}' / 'gresource', 34+ 'gdbus_codegen=' + '${devbindir}' / 'gdbus-codegen', 35+ 'gresource=' + '${devbindir}' / 'gresource', 36 'gsettings=' + '${bindir}' / 'gsettings', 37 ], 38 version : glib_version, 39@@ -995,6 +996,7 @@ gio_tool = executable('gio', gio_tool_sources, 40 41 executable('gresource', 'gresource-tool.c', 42 install : true, 43+ install_dir : get_option('devbindir'), 44 install_tag : 'bin', 45 # intl.lib is not compatible with SAFESEH 46 link_args : noseh_link_args, 47@@ -1002,7 +1004,7 @@ executable('gresource', 'gresource-tool.c', 48 49 gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodule-priv.c', 50 install : true, 51- install_dir : multiarch_bindir, 52+ install_dir : get_option('devbindir'), 53 install_tag : 'bin', 54 c_args : gio_c_args, 55 # intl.lib is not compatible with SAFESEH 56@@ -1012,7 +1014,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu 57 glib_compile_schemas = executable('glib-compile-schemas', 58 ['glib-compile-schemas.c'], 59 install : true, 60- install_dir : multiarch_bindir, 61+ install_dir : get_option('devbindir'), 62 install_tag : 'bin', 63 # intl.lib is not compatible with SAFESEH 64 link_args : noseh_link_args, 65@@ -1021,6 +1023,7 @@ glib_compile_schemas = executable('glib-compile-schemas', 66 glib_compile_resources = executable('glib-compile-resources', 67 [gconstructor_as_data_h, 'glib-compile-resources.c'], 68 install : true, 69+ install_dir : get_option('devbindir'), 70 install_tag : 'bin-devel', 71 c_args : gio_c_args, 72 # intl.lib is not compatible with SAFESEH 73diff --git a/gio/tests/meson.build b/gio/tests/meson.build 74index 232ecca5e..e292927ac 100644 75--- a/gio/tests/meson.build 76+++ b/gio/tests/meson.build 77@@ -1182,16 +1182,18 @@ if have_bash and have_pkg_config 78 79 gio_binaries = [ 80 'gio', 81- 'glib-compile-resources', 82 'gdbus', 83- 'gdbus-codegen', 84- 'gresource', 85 'gsettings', 86 ] 87- gio_multiarch_binaries = [ 88+ gio_dev_binaries = [ 89+ 'glib-compile-resources', 90+ 'gdbus-codegen', 91+ 'gresource', 92 'gio-querymodules', 93 'glib-compile-schemas', 94 ] 95+ gio_multiarch_binaries = [ 96+ ] 97 98 foreach binary: gio_binaries 99 pkg_config_tests += [ 100@@ -1200,6 +1202,13 @@ if have_bash and have_pkg_config 101 prefix / get_option('bindir') / binary) 102 ] 103 endforeach 104+ foreach binary: gio_dev_binaries 105+ pkg_config_tests += [ 106+ 'test "$(pkg-config --variable=@0@ gio-2.0)" = "@1@"'.format( 107+ binary.underscorify(), 108+ prefix / get_option('devbindir') / binary) 109+ ] 110+ endforeach 111 112 foreach binary: gio_multiarch_binaries 113 pkg_config_tests += [ 114diff --git a/glib/meson.build b/glib/meson.build 115index d2efebadc..eb9fa5b2f 100644 116--- a/glib/meson.build 117+++ b/glib/meson.build 118@@ -447,9 +447,10 @@ pkg.generate(libglib, 119 subdirs : ['glib-2.0'], 120 extra_cflags : ['-I${libdir}/glib-2.0/include'] + win32_cflags, 121 variables : [ 122- 'glib_genmarshal=' + '${bindir}' / 'glib-genmarshal', 123- 'gobject_query=' + '${bindir}' / 'gobject-query', 124- 'glib_mkenums=' + '${bindir}' / 'glib-mkenums', 125+ 'devbindir=' + get_option('devbindir'), 126+ 'glib_genmarshal=' + '${devbindir}' / 'glib-genmarshal', 127+ 'gobject_query=' + '${devbindir}' / 'gobject-query', 128+ 'glib_mkenums=' + '${devbindir}' / 'glib-mkenums', 129 'glib_valgrind_suppressions=' + '${datadir}' / 130 valgrind_suppression_file_install_subdir / 131 fs.name(valgrind_suppression_file), 132@@ -490,6 +491,7 @@ if host_system == 'windows' 133 else 134 gtester = executable('gtester', 'gtester.c', 135 install : true, 136+ install_dir : get_option('devbindir'), 137 install_tag : 'bin-devel', 138 c_args : ['-UG_DISABLE_ASSERT'], 139 include_directories : configinc, 140@@ -505,7 +507,7 @@ report_conf.set('PYTHON', python_name) 141 configure_file( 142 input: 'gtester-report.in', 143 output: 'gtester-report', 144- install_dir: get_option('bindir'), 145+ install_dir: get_option('devbindir'), 146 install_tag : 'bin-devel', 147 configuration: report_conf, 148 install_mode: 'rwxr-xr-x' 149diff --git a/glib/tests/meson.build b/glib/tests/meson.build 150index f6efc593a..5522dcb96 100644 151--- a/glib/tests/meson.build 152+++ b/glib/tests/meson.build 153@@ -568,9 +568,9 @@ if have_bash and have_pkg_config 154 'test "$(pkg-config --variable=datadir glib-2.0)" = "@0@"'.format( 155 prefix / get_option('datadir')), 156 'test "$(pkg-config --variable=gobject_query glib-2.0)" = "@0@"'.format( 157- prefix / get_option('bindir') / 'gobject-query'), 158+ prefix / get_option('devbindir') / 'gobject-query'), 159 'test "$(pkg-config --variable=glib_mkenums glib-2.0)" = "@0@"'.format( 160- prefix / get_option('bindir') / 'glib-mkenums'), 161+ prefix / get_option('devbindir') / 'glib-mkenums'), 162 'test "$(pkg-config --variable=glib_valgrind_suppressions glib-2.0)" = "@0@"'.format( 163 prefix / get_option('datadir') / 164 valgrind_suppression_file_install_subdir / fs.name(valgrind_suppression_file)), 165diff --git a/gobject/meson.build b/gobject/meson.build 166index 2129aaf8a..da8462428 100644 167--- a/gobject/meson.build 168+++ b/gobject/meson.build 169@@ -94,7 +94,7 @@ foreach tool: python_tools 170 input : tool + '.in', 171 output : tool, 172 configuration : python_tools_conf, 173- install_dir : glib_bindir, 174+ install_dir : get_option('devbindir'), 175 install_tag : 'bin-devel', 176 ) 177 178@@ -172,6 +172,7 @@ meson.override_dependency('gobject-2.0', libgobject_dep) 179 180 gobject_query = executable('gobject-query', 'gobject-query.c', 181 install : true, 182+ install_dir : get_option('devbindir'), 183 install_tag : 'bin-devel', 184 dependencies : [libglib_dep, libgobject_dep]) 185 186diff --git a/meson_options.txt b/meson_options.txt 187index 69a2135bc..cfe14bb09 100644 188--- a/meson_options.txt 189+++ b/meson_options.txt 190@@ -4,6 +4,11 @@ option('runtime_libdir', 191 description : 'install runtime libraries relative to libdir', 192 deprecated: true) 193 194+option('devbindir', 195+ type : 'string', 196+ value : '', 197+ description : 'bindir for development tools') 198+ 199 option('charsetalias_dir', 200 type : 'string', 201 value : '', 202diff --git a/tools/meson.build b/tools/meson.build 203index 257312ebf..f8315392b 100644 204--- a/tools/meson.build 205+++ b/tools/meson.build 206@@ -8,7 +8,7 @@ if have_sh 207 gettextize_conf.set('datarootdir', glib_datadir) 208 gettextize_conf.set('datadir', glib_datadir) 209 configure_file(input : 'glib-gettextize.in', 210- install_dir : glib_bindir, 211+ install_dir : get_option('devbindir'), 212 install_tag : 'bin-devel', 213 output : 'glib-gettextize', 214 configuration : gettextize_conf)