forked from AuroraMiddleware/gtk
Revert "meson: simplify builtin_immodules build option"
This reverts commit 749a58ab26
.
This maintains feature parity with the autotools build. To achieve the
equivalent of --with-included-immodules=wayland,
-Dbuiltin_immodules=wayland,waylandgtk can be used instead.
This commit is contained in:
parent
2b566f0633
commit
208e115368
@ -959,7 +959,7 @@ foreach l: immodules
|
||||
cond = l.get(2, true)
|
||||
cflags = l.get(3, [])
|
||||
|
||||
if cond and builtin_immodules
|
||||
if cond and (builtin_immodules.contains(name) or builtin_all_immodules)
|
||||
gtk_cargs += ['-DINCLUDE_IM_@0@'.format(name.underscorify())]
|
||||
mod = static_library('staticimmodule-@0@'.format(name),
|
||||
sources + gtk_dep_sources,
|
||||
|
30
meson.build
30
meson.build
@ -499,6 +499,8 @@ else
|
||||
cdata.set_quoted('ISO_CODES_PREFIX', get_option('prefix'))
|
||||
endif
|
||||
|
||||
backend_immodules = []
|
||||
|
||||
pc_gdk_extra_libs = []
|
||||
|
||||
cairo_found_type = cairo_dep.type_name()
|
||||
@ -554,6 +556,7 @@ if wayland_enabled
|
||||
wlprotocolsdep = dependency('wayland-protocols', version: wayland_proto_req)
|
||||
wlcursordep = dependency('wayland-cursor', version: wayland_req)
|
||||
wlegldep = dependency('wayland-egl')
|
||||
backend_immodules += ['wayland']
|
||||
|
||||
wayland_pkgs = [
|
||||
'wayland-client', wayland_req,
|
||||
@ -578,6 +581,8 @@ if x11_enabled
|
||||
fontconfig_dep = dependency('fontconfig', fallback: ['fontconfig', 'fontconfig_dep'])
|
||||
atkbridge_dep = dependency('atk-bridge-2.0', version: at_spi2_atk_req)
|
||||
|
||||
backend_immodules += ['xim']
|
||||
|
||||
x11_pkgs = ['fontconfig', 'x11', 'xext', 'xi', 'xrandr']
|
||||
|
||||
if xcursor_dep.found()
|
||||
@ -656,10 +661,12 @@ endif
|
||||
|
||||
if broadway_enabled
|
||||
pc_gdk_extra_libs += ['-lz']
|
||||
backend_immodules += ['broadway']
|
||||
endif
|
||||
|
||||
if quartz_enabled
|
||||
pc_gdk_extra_libs += ['-Wl,-framework,Cocoa', '-Wl,-framework,Carbon', '-Wl,-framework,CoreGraphics']
|
||||
backend_immodules += ['quartz']
|
||||
endif
|
||||
|
||||
extra_demo_ldflags = []
|
||||
@ -674,6 +681,7 @@ if win32_enabled
|
||||
pc_gdk_extra_libs += ['-Wl,-luuid']
|
||||
endif
|
||||
pc_gdk_extra_libs += ['-lwinmm', '-ldwmapi', '-lsetupapi', '-lcfgmgr32']
|
||||
backend_immodules += ['ime']
|
||||
|
||||
# Check whether libepoxy is built with EGL support on Windows
|
||||
win32_has_egl = epoxy_dep.get_variable(
|
||||
@ -684,20 +692,30 @@ endif
|
||||
|
||||
# IMModules stuff-unfortunately we need to put items here
|
||||
# as they can be built as modules or built directly into GTK
|
||||
builtin_all_immodules = false
|
||||
|
||||
builtin_modules_opt = get_option('builtin_immodules')
|
||||
if builtin_modules_opt == 'auto'
|
||||
builtin_immodules = []
|
||||
|
||||
if builtin_modules_opt == ''
|
||||
if os_win32
|
||||
# Current MSVC projects build all immodules directly into GTK by default,
|
||||
# as does the mingw autotools build
|
||||
message('IMModules are built into GTK for MSVC builds by default')
|
||||
builtin_immodules = true
|
||||
builtin_immodules = ['all']
|
||||
else
|
||||
builtin_immodules = false
|
||||
builtin_immodules = ['none']
|
||||
endif
|
||||
elif builtin_modules_opt == 'yes'
|
||||
builtin_immodules = true
|
||||
else
|
||||
builtin_immodules = false
|
||||
builtin_immodules = builtin_modules_opt.split(',')
|
||||
endif
|
||||
|
||||
if builtin_immodules.contains('none')
|
||||
builtin_immodules = []
|
||||
elif builtin_immodules.contains('all')
|
||||
builtin_all_immodules = true
|
||||
elif builtin_immodules.contains('backend')
|
||||
builtin_immodules += backend_immodules
|
||||
endif
|
||||
|
||||
proto_sources = [
|
||||
|
@ -45,5 +45,5 @@ option('installed_tests', type: 'boolean', value: 'false',
|
||||
description : 'enable installed tests')
|
||||
|
||||
# input modules
|
||||
option('builtin_immodules', type: 'combo', choices : ['yes', 'no', 'auto'],
|
||||
value: 'auto', description: 'Build immodules into GTK so/DLL')
|
||||
option('builtin_immodules', type: 'string',
|
||||
value: '', description: 'Build specified immodules into GTK so/DLL (comma-separated list), "all", "none" or "backend"')
|
||||
|
@ -7,7 +7,7 @@ foreach l: immodules
|
||||
cond = l.get(2, true)
|
||||
cflags = l.get(3, [])
|
||||
|
||||
if cond and not builtin_immodules
|
||||
if cond and not (builtin_immodules.contains(name) or builtin_all_immodules)
|
||||
shared_module('im-@0@'.format(name),
|
||||
immod_sources,
|
||||
c_args: common_cflags + cflags,
|
||||
|
Loading…
Reference in New Issue
Block a user