bu5hm4n pushed a commit to branch feature/meson. http://git.enlightenment.org/core/efl.git/commit/?id=cf05d5895901b7e196daad5774cd0a2b807ab48d
commit cf05d5895901b7e196daad5774cd0a2b807ab48d Author: Marcel Hollerbach <[email protected]> Date: Sat Jan 6 09:54:28 2018 +0000 meson: here comes ecore_imf --- meson.build | 1 + meson_options.txt | 6 ++++++ src/lib/ecore_imf/meson.build | 32 +++++++++++++++++++++++++++++++ src/modules/ecore_imf/ibus/meson.build | 7 +++++++ src/modules/ecore_imf/meson.build | 28 +++++++++++++++++++++++++++ src/modules/ecore_imf/scim/meson.build | 6 ++++++ src/modules/ecore_imf/wayland/meson.build | 6 ++++++ src/modules/ecore_imf/xim/meson.build | 5 +++++ src/wayland_protocol/meson.build | 1 + 9 files changed, 92 insertions(+) diff --git a/meson.build b/meson.build index a880c4c249..598b12418d 100644 --- a/meson.build +++ b/meson.build @@ -120,6 +120,7 @@ subprojects = [ ['evas_goal' , false, true, false, false, false, false, []], ['ecore_input_evas' , false, true, false, false, false, false, []], ['ecore_evas' , true, true, false, false, false, false, []], +['ecore_imf' , true, true, false, false, false, false, []], ] # We generate Efl_Config.h and config.h later, they will be available here diff --git a/meson_options.txt b/meson_options.txt index 32db772cb9..54414b9d79 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -166,6 +166,12 @@ option('ecore_evas', description : 'build evas' ) +option('ecore_imf', + type : 'boolean', + value : true, + description : 'build evas' +) + option('build-id', type : 'string', value : 'none', diff --git a/src/lib/ecore_imf/meson.build b/src/lib/ecore_imf/meson.build new file mode 100644 index 0000000000..65060edd6a --- /dev/null +++ b/src/lib/ecore_imf/meson.build @@ -0,0 +1,32 @@ +ecore_imf_deps = [] + +ecore_imf_header_src = [ + 'Ecore_IMF.h' +] + +ecore_imf_src = [ + 'ecore_imf.c', + 'ecore_imf_context.c', + 'ecore_imf_module.c', + 'ecore_imf_private.h', +] + + +ecore_imf_lib = library('ecore_imf', + ecore_imf_src, pub_eo_file_target, + dependencies: [ecore, ecore_imf_deps], + include_directories : config_dir, + c_args : package_c_args, + install: true, +) + +ecore_imf = declare_dependency( + include_directories: [include_directories('.')], + link_with: ecore_imf_lib, + sources : pub_eo_file_target, + dependencies: [eina], +) + +install_headers(ecore_imf_header_src, + install_dir : dir_package_include, +) \ No newline at end of file diff --git a/src/modules/ecore_imf/ibus/meson.build b/src/modules/ecore_imf/ibus/meson.build new file mode 100644 index 0000000000..badbb9f711 --- /dev/null +++ b/src/modules/ecore_imf/ibus/meson.build @@ -0,0 +1,7 @@ +mod_src = files([ + 'ibus_module.c', + 'ibus_imcontext.c', + 'ibus_imcontext.h' +]) + +mod_deps = [ecore, ecore_imf, ecore_x, dependency('ibus-1.0'), dependency('glib-2.0'), ecore_evas] diff --git a/src/modules/ecore_imf/meson.build b/src/modules/ecore_imf/meson.build new file mode 100644 index 0000000000..bebe280066 --- /dev/null +++ b/src/modules/ecore_imf/meson.build @@ -0,0 +1,28 @@ +mods = ['ibus', 'xim'] + +if dependency('scim-1.0', required : false).found() + mods += ['scim'] +endif + +if get_option('ecore_wl2') + mods += ['wayland'] +endif + + +foreach mod_name : mods + mod_src = [] + mod_deps = [] + subdir(mod_name) + config_h.set('BUILD_ECORE_IMF_'+mod_name.to_upper(), '1') + + mod_install_dir = join_paths(dir_package_modules, mod_name, module_arch) + + shared_module(mod_name, + mod_src, + dependencies: mod_deps, + install: true, + install_dir : mod_install_dir + ) + module_files += join_paths(mod_install_dir, 'lib'+mod_name+'.so') + +endforeach diff --git a/src/modules/ecore_imf/scim/meson.build b/src/modules/ecore_imf/scim/meson.build new file mode 100644 index 0000000000..ecc65e40fa --- /dev/null +++ b/src/modules/ecore_imf/scim/meson.build @@ -0,0 +1,6 @@ +mod_src = files([ + 'scim_module.cpp', + 'scim_imcontext.cpp', + 'scim_imcontext.h' +]) +mod_deps = [ecore, ecore_imf, ecore_x, dependency('scim-1.0'), dependency('glib-2.0')] diff --git a/src/modules/ecore_imf/wayland/meson.build b/src/modules/ecore_imf/wayland/meson.build new file mode 100644 index 0000000000..a082d7ae98 --- /dev/null +++ b/src/modules/ecore_imf/wayland/meson.build @@ -0,0 +1,6 @@ +mod_src = files([ + 'wayland_module.c', + 'wayland_imcontext.c', + 'wayland_imcontext.h' +]) +mod_deps = [ecore, ecore_imf, ecore_wl2, wayland_protocol, ecore_evas, ecore_input] diff --git a/src/modules/ecore_imf/xim/meson.build b/src/modules/ecore_imf/xim/meson.build new file mode 100644 index 0000000000..669b50ef89 --- /dev/null +++ b/src/modules/ecore_imf/xim/meson.build @@ -0,0 +1,5 @@ +mod_src = files([ + 'ecore_imf_xim.c', +]) + +mod_deps = [ecore, ecore_imf, ecore_input, ecore_x, dependency('ibus-1.0'), dependency('glib-2.0'), ecore_evas] diff --git a/src/wayland_protocol/meson.build b/src/wayland_protocol/meson.build index 6dbcbc4ad2..29e670f0e0 100644 --- a/src/wayland_protocol/meson.build +++ b/src/wayland_protocol/meson.build @@ -15,6 +15,7 @@ wl_protocol_local = [ wl_protocol_sys = [ join_paths('xdg-shell', 'xdg-shell-unstable-v6.xml'), join_paths('linux-dmabuf', 'linux-dmabuf-unstable-v1.xml'), + join_paths('text-input', 'text-input-unstable-v1.xml'), ] foreach sys_protocol : wl_protocol_sys --
