From 8e3606698eb439eecd7302a885504365aca7e564 Mon Sep 17 00:00:00 2001 From: Marcel Hollerbach Date: Sun, 10 May 2020 14:41:57 +0200 Subject: [PATCH] refactor build libraries are split into deps, external deps, and pub deps. Evas engines are refactored to use the predefined engine deps. this is preparation work for efl-one. Reviewed-by: Stefan Schmidt Differential Revision: https://phab.enlightenment.org/D11806 --- src/bin/ecore_buffer/meson.build | 2 +- src/bin/edje/meson.build | 3 +- src/bin/elementary/meson.build | 16 +++---- src/bin/exactness/meson.build | 4 +- src/examples/elementary/meson.build | 2 +- src/lib/ecore/meson.build | 17 ++++---- src/lib/ecore_audio/meson.build | 23 +++++----- src/lib/ecore_buffer/meson.build | 9 ++-- src/lib/ecore_cocoa/meson.build | 14 ++++-- src/lib/ecore_con/meson.build | 28 ++++++------ src/lib/ecore_drm2/meson.build | 9 ++-- src/lib/ecore_evas/meson.build | 15 ++++--- src/lib/ecore_fb/meson.build | 9 ++-- src/lib/ecore_file/meson.build | 13 +++--- src/lib/ecore_imf/meson.build | 9 ++-- src/lib/ecore_imf_evas/meson.build | 7 +-- src/lib/ecore_input/meson.build | 8 ++-- src/lib/ecore_input_evas/meson.build | 7 +-- src/lib/ecore_ipc/meson.build | 8 ++-- src/lib/ecore_sdl/meson.build | 9 ++-- src/lib/ecore_win32/meson.build | 18 +++++--- src/lib/ecore_wl2/meson.build | 18 +++++--- src/lib/ecore_x/meson.build | 19 ++++---- src/lib/ector/meson.build | 16 ++++--- src/lib/edje/meson.build | 13 +++--- src/lib/eet/meson.build | 9 ++-- src/lib/eeze/meson.build | 21 ++++----- src/lib/efl/meson.build | 5 ++- src/lib/efl_canvas_wl/meson.build | 2 +- src/lib/efreet/meson.build | 13 +++--- src/lib/eina/meson.build | 19 ++++---- src/lib/eio/meson.build | 15 ++++--- src/lib/eldbus/meson.build | 9 ++-- src/lib/elementary/meson.build | 17 +++++--- src/lib/elput/meson.build | 13 +++--- src/lib/embryo/meson.build | 12 +++--- src/lib/emile/meson.build | 13 +++--- src/lib/emotion/meson.build | 7 +-- src/lib/eo/meson.build | 9 ++-- src/lib/ephysics/meson.build | 10 ++--- src/lib/ethumb/meson.build | 7 +-- src/lib/ethumb_client/meson.build | 7 +-- src/lib/evas/meson.build | 43 +++++++++++-------- src/lib/evas/software_generic/meson.build | 2 + src/lib/evil/meson.build | 11 +++-- .../ecore_evas/engines/wayland/meson.build | 2 +- src/modules/ecore_imf/meson.build | 1 - src/modules/evas/engines/buffer/meson.build | 6 +-- src/modules/evas/engines/drm/meson.build | 4 +- src/modules/evas/engines/fb/meson.build | 4 +- src/modules/evas/engines/gl_cocoa/meson.build | 4 +- src/modules/evas/engines/gl_drm/meson.build | 4 +- .../evas/engines/gl_generic/meson.build | 4 +- src/modules/evas/engines/gl_x11/meson.build | 4 +- src/modules/evas/engines/meson.build | 2 +- .../evas/engines/software_ddraw/meson.build | 4 +- .../evas/engines/software_gdi/meson.build | 4 +- .../evas/engines/software_x11/meson.build | 4 +- .../evas/engines/wayland_egl/meson.build | 4 +- .../evas/engines/wayland_shm/meson.build | 4 +- src/modules/evas/image_loaders/meson.build | 2 +- src/modules/evas/image_savers/meson.build | 2 +- src/static_libs/buildsystem/meson.build | 4 ++ src/static_libs/draw/meson.build | 11 +++++ src/static_libs/rg_etc/meson.build | 4 ++ src/tests/elementary/meson.build | 4 +- src/tests/evas/meson.build | 2 +- src/wayland_protocol/meson.build | 5 +++ 68 files changed, 361 insertions(+), 268 deletions(-) diff --git a/src/bin/ecore_buffer/meson.build b/src/bin/ecore_buffer/meson.build index 5e1a9d9381..b2df51b4f7 100644 --- a/src/bin/ecore_buffer/meson.build +++ b/src/bin/ecore_buffer/meson.build @@ -1,6 +1,6 @@ executable('bqmgr', ['bq_mgr_protocol.c', 'bq_mgr.c'], - dependencies: [ecore, ecore_buffer, ecore_buffer_deps], + dependencies: [ecore, ecore_buffer, ecore_buffer_deps, ecore_buffer_ext_deps], install: true, install_dir: join_paths(dir_lib, 'ecore_buffer', 'bin') ) diff --git a/src/bin/edje/meson.build b/src/bin/edje/meson.build index fa059ca4b7..82d51c7a77 100644 --- a/src/bin/edje/meson.build +++ b/src/bin/edje/meson.build @@ -6,7 +6,8 @@ edje_bin_deps = [ ecore_file, ecore_input, ecore_imf, ecore_imf_evas, embryo, efreet, eio, - edje, ecore_evas + edje, ecore_evas, + intl, ] edje_cc_src = [ diff --git a/src/bin/elementary/meson.build b/src/bin/elementary/meson.build index ef5d3ded60..de731e55cf 100644 --- a/src/bin/elementary/meson.build +++ b/src/bin/elementary/meson.build @@ -177,7 +177,7 @@ else endif elementary_test = executable('elementary_test', elementary_test_src, - dependencies: [elementary] + elementary_deps + elementary_pub_deps, + dependencies: [elementary, intl] + elementary_deps + elementary_pub_deps, install: true, c_args : package_c_args + [ '-Delementary_test_BIN_DIR="'+dir_bin+'"', @@ -189,7 +189,7 @@ elementary_test = executable('elementary_test', library('elementary_test', elementary_test_src, - dependencies: [elementary] + elementary_deps + elementary_pub_deps, + dependencies: [elementary, intl] + elementary_deps + elementary_pub_deps, install: false, c_args : package_c_args + [ '-Delementary_test_BIN_DIR="'+dir_bin+'"', @@ -205,7 +205,7 @@ elementary_config_src = [ elementary_config = executable('elementary_config', elementary_config_src, - dependencies: [elementary] + elementary_deps + elementary_pub_deps, + dependencies: [elementary, intl] + elementary_deps + elementary_pub_deps, install: true, c_args : package_c_args, link_args: link_args @@ -218,7 +218,7 @@ if sys_windows == false elementary_quicklaunch = executable('elementary_quicklaunch', elementary_quicklaunch_src, - dependencies: [elementary] + elementary_deps + elementary_pub_deps, + dependencies: [elementary, intl] + elementary_deps + elementary_pub_deps, install: true, c_args : package_c_args, link_args: link_args @@ -231,7 +231,7 @@ elementary_codegen_src = [ elementary_codegen = executable('elementary_codegen', elementary_codegen_src, - dependencies: [elementary] + elementary_deps + elementary_pub_deps, + dependencies: [elementary, intl] + elementary_deps + elementary_pub_deps, install: true, c_args : package_c_args, link_args: link_args @@ -260,7 +260,7 @@ elm_prefs_cc_src = [ elm_prefs_cc = executable('elm_prefs_cc', elm_prefs_cc_src, - dependencies: [elementary] + elementary_deps + elementary_pub_deps, + dependencies: [elementary, intl] + elementary_deps + elementary_pub_deps, install: true, c_args : package_c_args, link_args: link_args @@ -282,7 +282,7 @@ if sys_windows == false elementary_run = executable('elementary_run', elementary_run_src, - dependencies: [elementary] + elementary_deps + elementary_pub_deps, + dependencies: [elementary, intl] + elementary_deps + elementary_pub_deps, install: true, c_args : package_c_args, link_args: link_args @@ -302,7 +302,7 @@ elementary_perf_src = [ elementary_perf = executable('elementary_perf', elementary_perf_src, - dependencies: [elementary] + elementary_deps + elementary_pub_deps, + dependencies: [elementary, intl] + elementary_deps + elementary_pub_deps, install: true, c_args : package_c_args + [ '-Delementary_test_BIN_DIR="'+dir_bin+'"', diff --git a/src/bin/exactness/meson.build b/src/bin/exactness/meson.build index 2f2b2bb280..4d048f18c9 100644 --- a/src/bin/exactness/meson.build +++ b/src/bin/exactness/meson.build @@ -32,7 +32,7 @@ edjs = custom_target('player_entry', exactness_play_bin = library('exactness_play', [ 'player.c', 'common.c', 'common.h', edjs ], - dependencies: [ elementary ], + dependencies: [ elementary, dl], c_args: '-DDATA_DIR="'+join_paths(dir_data, 'exactness')+'"', install: true, version : meson.project_version() @@ -40,7 +40,7 @@ exactness_play_bin = library('exactness_play', exactness_record_bin = library('exactness_record', [ 'recorder.c', 'common.c', 'common.h' ], - dependencies: [ elementary ], + dependencies: [ elementary, dl], c_args: '-DDATA_DIR="'+join_paths(dir_data, 'exactness')+'"', install: true, version : meson.project_version() diff --git a/src/examples/elementary/meson.build b/src/examples/elementary/meson.build index 14a743c9c5..7876285349 100644 --- a/src/examples/elementary/meson.build +++ b/src/examples/elementary/meson.build @@ -122,7 +122,7 @@ examples = [ ] foreach example : examples - executable(example, example + '.c', dependencies: [elementary, ecore, eio]) + executable(example, example + '.c', dependencies: [elementary, ecore, eio, m]) endforeach if get_option('bindings').contains('cxx') cxx_examples = [ diff --git a/src/lib/ecore/meson.build b/src/lib/ecore/meson.build index 637761dcc4..0f72f4ba28 100644 --- a/src/lib/ecore/meson.build +++ b/src/lib/ecore/meson.build @@ -1,5 +1,6 @@ -ecore_deps = [intl] +ecore_deps = [] ecore_pub_deps = [eina, eo, efl] +ecore_ext_deps = [intl, m, buildsystem] pub_legacy_eo_files = [ 'ecore_event_message.eo', @@ -98,7 +99,7 @@ ecore_header_src = [ 'efl_loop_timer_eo.legacy.h', ] -ecore_src = [ +ecore_src = files([ 'efl_app.c', 'ecore.c', 'ecore_alloc.c', @@ -168,18 +169,18 @@ ecore_src = [ 'efl_core_env.c', 'efl_core_proc_env.c', 'efl_core_command_line.c', -] +]) if sys_windows == true #nothing for now ... needs testing - ecore_src += ['ecore_exe_win32.c'] + ecore_src += files(['ecore_exe_win32.c']) else - ecore_src += ['ecore_signal.c', 'ecore_exe_posix.c'] + ecore_src += files(['ecore_signal.c', 'ecore_exe_posix.c']) endif if get_option('glib') == true and sys_windows == false - ecore_deps += dependency('glib-2.0') - ecore_deps += dependency('gthread-2.0') + ecore_ext_deps += dependency('glib-2.0') + ecore_ext_deps += dependency('gthread-2.0') config_h.set('GLIB_INTEGRATION_ALWAYS', '1') config_h.set('HAVE_GLIB', '1') endif @@ -194,7 +195,7 @@ endif ecore_lib = library('ecore', ecore_src, pub_eo_file_target, - dependencies: ecore_pub_deps + [m, buildsystem, ecore_deps], + dependencies: ecore_pub_deps + [ecore_deps, ecore_ext_deps], include_directories : config_dir + [include_directories(join_paths('..','..'))], install: true, c_args : package_c_args, diff --git a/src/lib/ecore_audio/meson.build b/src/lib/ecore_audio/meson.build index 68a5c606c2..0376968a4b 100644 --- a/src/lib/ecore_audio/meson.build +++ b/src/lib/ecore_audio/meson.build @@ -1,5 +1,6 @@ ecore_audio_deps = [ecore] ecore_audio_pub_deps = [eina, eo] +ecore_audio_ext_deps = [m] pub_eo_files = [ 'ecore_audio.eo', @@ -41,46 +42,46 @@ ecore_audio_header_src = [ 'ecore_audio_obj_out_wasapi.h' ] -ecore_audio_src = [ +ecore_audio_src = files([ 'ecore_audio.c', 'ecore_audio_obj.c', 'ecore_audio_obj_in.c', 'ecore_audio_obj_out.c', 'ecore_audio_obj_in_tone.c', 'ecore_audio_private.h' -] +]) -ecore_audio_src += [ +ecore_audio_src += files([ 'ecore_audio_obj_in_sndfile.c', 'ecore_audio_obj_out_sndfile.c', 'ecore_audio_sndfile_vio.c' -] +]) ecore_audio_deps += dependency('sndfile') config_h.set('HAVE_SNDFILE', '1') if get_option('pulseaudio') - ecore_audio_deps += dependency('libpulse') + ecore_audio_ext_deps += dependency('libpulse') - ecore_audio_src += [ + ecore_audio_src += files([ 'ecore_audio_pulse_ml.c', 'ecore_audio_obj_out_pulse.c' - ] + ]) config_h.set('HAVE_PULSE', '1') endif if sys_windows == true - ecore_audio_src += [ + ecore_audio_src += files([ 'ecore_audio_obj_out_wasapi.c' - ] - ecore_audio_deps += [cc.find_library('ksuser', required: true), cc.find_library('winmm', required: true)] + ]) + ecore_audio_ext_deps += [cc.find_library('ksuser', required: true), cc.find_library('winmm', required: true)] endif ecore_audio_lib = library('ecore_audio', ecore_audio_src, pub_eo_file_target, c_args : package_c_args, - dependencies: ecore_audio_pub_deps + [m] + ecore_audio_deps, + dependencies: ecore_audio_pub_deps + ecore_audio_deps + ecore_audio_ext_deps, include_directories : config_dir, install: true, version : meson.project_version() diff --git a/src/lib/ecore_buffer/meson.build b/src/lib/ecore_buffer/meson.build index c4aa63f62c..1d05cbe65b 100644 --- a/src/lib/ecore_buffer/meson.build +++ b/src/lib/ecore_buffer/meson.build @@ -1,12 +1,13 @@ -ecore_buffer_deps = [dependency('wayland-client'), dependency('wayland-server'), ecore] +ecore_buffer_deps = [ecore] ecore_buffer_pub_deps = [eina] +ecore_buffer_ext_deps = [dependency('wayland-client'), dependency('wayland-server')] ecore_buffer_header_src = [ 'Ecore_Buffer.h', 'Ecore_Buffer_Queue.h' ] -ecore_buffer_src = [ +ecore_buffer_src = files([ 'bq_mgr_protocol.c', 'buffer_queue.c', 'shared_buffer.c', @@ -15,12 +16,12 @@ ecore_buffer_src = [ 'ecore_buffer_con.c', 'ecore_buffer_provider.c', 'ecore_buffer_consumer.c' -] +]) ecore_buffer_lib = library('ecore_buffer', ecore_buffer_src, pub_eo_file_target, c_args : package_c_args, - dependencies: ecore_buffer_pub_deps + ecore_buffer_deps, + dependencies: ecore_buffer_pub_deps + ecore_buffer_deps + ecore_buffer_ext_deps, include_directories : config_dir, install: true, version : meson.project_version() diff --git a/src/lib/ecore_cocoa/meson.build b/src/lib/ecore_cocoa/meson.build index e04ca0fd5d..a44d6a4d58 100644 --- a/src/lib/ecore_cocoa/meson.build +++ b/src/lib/ecore_cocoa/meson.build @@ -1,12 +1,18 @@ +cocoa_external_dep = declare_dependency( + link_args : ['-lobjc', '-framework', 'CoreFoundation', '-framework', 'cocoa', ], +) + ecore_cocoa_deps = [eina, ecore_input, ecore, emile, eet] ecore_cocoa_pub_deps = [eina] +ecore_cocoa_ext_deps = [cocoa_external_dep] + pub_eo_file_target = [] ecore_cocoa_header_src = [ 'Ecore_Cocoa.h' ] -ecore_cocoa_src = [ +ecore_cocoa_src = files([ 'ecore_cocoa.m', 'ecore_cocoa_keys.h', 'ecore_cocoa_window.h', @@ -15,7 +21,7 @@ ecore_cocoa_src = [ 'ecore_cocoa_app.m', 'ecore_cocoa_app.h', 'ecore_cocoa_private.h' -] +]) evas_include_directories = [ include_directories(join_paths('..', 'evas')), @@ -28,9 +34,9 @@ evas_include_directories = [ ecore_cocoa_lib = library('ecore_cocoa', ecore_cocoa_src, pub_eo_file_target, c_args : package_c_args, - dependencies: ecore_cocoa_deps + ecore_cocoa_pub_deps, + dependencies: ecore_cocoa_deps + ecore_cocoa_pub_deps + ecore_cocoa_ext_deps, + link_args : '-Wl,-U,_evas_textblock_text_markup_to_utf8', include_directories : config_dir + evas_include_directories, - link_args : ['-lobjc', '-framework', 'CoreFoundation', '-framework', 'cocoa', '-Wl,-U,_evas_textblock_text_markup_to_utf8'], install: true, version : meson.project_version() ) diff --git a/src/lib/ecore_con/meson.build b/src/lib/ecore_con/meson.build index 44faa486af..bf288053ad 100644 --- a/src/lib/ecore_con/meson.build +++ b/src/lib/ecore_con/meson.build @@ -1,6 +1,6 @@ -ecore_con_deps = [] +ecore_con_deps = [buildsystem, eldbus, eet] ecore_con_pub_deps = [eina, eo, efl, ecore] - +ecore_con_ext_deps = [buildsystem_simple, dl, http_parser] if sys_windows == true ipv6 = true else @@ -110,7 +110,7 @@ ecore_con_header_src = [ 'ecore_con_eet_server_obj_eo.legacy.h' ] -ecore_con_src = [ +ecore_con_src = files([ 'ecore_con_alloc.c', 'ecore_con.c', 'ecore_con_proxy_helper.c', @@ -145,46 +145,46 @@ ecore_con_src = [ 'efl_net_server_ssl.c', 'ecore_con_local.c', 'efl_net_ip_address.c' -] +]) if sys_windows == true - ecore_con_src += [ + ecore_con_src += files([ 'efl_net_socket_windows.c', 'efl_net_dialer_windows.c', 'efl_net_server_windows.c' - ] + ]) else - ecore_con_src += [ + ecore_con_src += files([ 'efl_net_socket_unix.c', 'efl_net_dialer_unix.c', 'efl_net_server_unix.c' - ] + ]) endif if get_option('network-backend') == 'none' - ecore_con_src += [ + ecore_con_src += files([ 'efl_net_control_access_point-none.c', 'efl_net_control_technology-none.c', 'efl_net_control-none.c', 'efl_net_session-none.c' - ] + ]) else - ecore_con_src += [ + ecore_con_src += files([ 'efl_net-connman.h', 'efl_net-connman.c', 'efl_net_control_access_point-connman.c', 'efl_net_control_technology-connman.c', 'efl_net_control-connman.c', 'efl_net_session-connman.c' - ] + ]) ecore_con_deps += eldbus endif -ecore_con_deps += crypto +ecore_con_ext_deps += crypto ecore_con_lib = library('ecore_con', ecore_con_src, pub_eo_file_target, - dependencies: [ecore, ecore_con_deps, http_parser, eldbus, eet, buildsystem, dl], + dependencies: [ecore_con_deps, ecore_con_ext_deps, ecore_con_pub_deps], include_directories : config_dir, install: true, c_args : package_c_args, diff --git a/src/lib/ecore_drm2/meson.build b/src/lib/ecore_drm2/meson.build index 53ddc303b3..212dd366c7 100644 --- a/src/lib/ecore_drm2/meson.build +++ b/src/lib/ecore_drm2/meson.build @@ -1,23 +1,24 @@ -ecore_drm2_deps = [eeze, elput, dl, libdrm] +ecore_drm2_deps = [eeze, elput] ecore_drm2_pub_deps = [ecore] +ecore_drm2_ext_deps = [dl, libdrm] ecore_drm2_header_src = [ 'Ecore_Drm2.h' ] -ecore_drm2_src = [ +ecore_drm2_src = files([ 'ecore_drm2_plane.c', 'ecore_drm2_fb.c', 'ecore_drm2_outputs.c', 'ecore_drm2_device.c', 'ecore_drm2.c', 'ecore_drm2_private.h' -] +]) ecore_drm2_lib = library('ecore_drm2', ecore_drm2_src, pub_eo_file_target, c_args : package_c_args, - dependencies: ecore_drm2_pub_deps + ecore_drm2_deps, + dependencies: ecore_drm2_pub_deps + ecore_drm2_deps + ecore_drm2_ext_deps, include_directories : config_dir, install: true, version : meson.project_version() diff --git a/src/lib/ecore_evas/meson.build b/src/lib/ecore_evas/meson.build index c673097dbc..554c77cf44 100644 --- a/src/lib/ecore_evas/meson.build +++ b/src/lib/ecore_evas/meson.build @@ -1,5 +1,6 @@ -ecore_evas_deps = [eina, ecore_input_evas, ecore_input, ecore, eet, evas, efl, eo, eina, emile] +ecore_evas_deps = [eina, ecore_input_evas, ecore_input, ecore, eet, evas, efl, eo, eina, emile, buildsystem] ecore_evas_pub_deps = [evas, ecore] +ecore_evas_ext_deps = [buildsystem_simple] pub_eo_file_target = [] ecore_evas_header_src = [ @@ -8,7 +9,7 @@ ecore_evas_header_src = [ ] -ecore_evas_src = [ +ecore_evas_src = files([ 'ecore_evas.c', 'ecore_evas_buffer.c', 'ecore_evas_buffer.h', @@ -25,20 +26,24 @@ ecore_evas_src = [ 'ecore_evas_x11.h', 'ecore_evas_util.c', 'ecore_evas_fallback_selection.c' -] +]) + +ecore_evas_ext_deps += declare_dependency( + include_directories: include_directories(join_paths('..', '..', 'modules', 'evas', 'engines', 'buffer')), +) ecore_evas_lib = library('ecore_evas', ecore_evas_src, pub_eo_file_target, c_args : package_c_args, - dependencies: [ecore_evas_deps, buildsystem], + dependencies: ecore_evas_deps + ecore_evas_ext_deps, include_directories : config_dir, install: true, version : meson.project_version() ) ecore_evas = declare_dependency( - include_directories: [include_directories('.')], + include_directories: [include_directories('.'), include_directories(join_paths('..', '..', 'modules', 'evas', 'engines', 'buffer'))], link_with: ecore_evas_lib, sources : pub_eo_file_target + priv_eo_file_target, dependencies: [evas], diff --git a/src/lib/ecore_fb/meson.build b/src/lib/ecore_fb/meson.build index 28ad6bfe88..6d50e0f146 100644 --- a/src/lib/ecore_fb/meson.build +++ b/src/lib/ecore_fb/meson.build @@ -1,22 +1,23 @@ ecore_fb_deps = [ecore, ecore_input] ecore_fb_pub_deps = [eina] +ecore_fb_ext_deps = [] if get_option('tslib') - ecore_fb_deps += dependency('tslib') + ecore_fb_ext_deps += dependency('tslib') endif ecore_fb_header_src = [ 'Ecore_Fb.h' ] -ecore_fb_src = [ +ecore_fb_src = files([ 'ecore_fb.c', 'ecore_fb_li.c', 'ecore_fb_ts.c', 'ecore_fb_vt.c', 'ecore_fb_keytable.h', 'ecore_fb_private.h' -] +]) ecore_fb_lib = library('ecore_fb', ecore_fb_src, pub_eo_file_target, @@ -31,7 +32,7 @@ ecore_fb = declare_dependency( include_directories: [include_directories('.')], link_with: ecore_fb_lib, sources : pub_eo_file_target + priv_eo_file_target, - dependencies: ecore_fb_pub_deps, + dependencies: ecore_fb_pub_deps + ecore_fb_ext_deps, ) install_headers(ecore_fb_header_src, diff --git a/src/lib/ecore_file/meson.build b/src/lib/ecore_file/meson.build index 9bbee467d6..9e0212d6c0 100644 --- a/src/lib/ecore_file/meson.build +++ b/src/lib/ecore_file/meson.build @@ -1,20 +1,21 @@ ecore_file_deps = [ecore_con, ecore] ecore_file_pub_deps = [eina] +ecore_file_ext_deps = [] -ecore_file_src = [ +ecore_file_src = files([ 'ecore_file.c', 'ecore_file_download.c', 'ecore_file_monitor.c', 'ecore_file_path.c', 'ecore_file_private.h' -] +]) if sys_windows == true - ecore_file_src += [ 'ecore_file_monitor_win32.c'] + ecore_file_src += files([ 'ecore_file_monitor_win32.c']) elif sys_linux == true - ecore_file_src += [ 'ecore_file_monitor_inotify.c'] + ecore_file_src += files([ 'ecore_file_monitor_inotify.c']) else - ecore_file_src += [ 'ecore_file_monitor_poll.c'] + ecore_file_src += files([ 'ecore_file_monitor_poll.c']) endif ecore_file_header_src = ['Ecore_File.h'] @@ -23,7 +24,7 @@ ecore_file_header_src = ['Ecore_File.h'] ecore_file_lib = library('ecore_file', ecore_file_src, c_args : package_c_args, - dependencies: ecore_file_deps + ecore_file_pub_deps + ecore_file_deps, + dependencies: ecore_file_deps + ecore_file_pub_deps + ecore_file_ext_deps, include_directories : config_dir + [include_directories(join_paths('..','..'))], install: true, version : meson.project_version() diff --git a/src/lib/ecore_imf/meson.build b/src/lib/ecore_imf/meson.build index 978594d20a..7b305751dd 100644 --- a/src/lib/ecore_imf/meson.build +++ b/src/lib/ecore_imf/meson.build @@ -1,21 +1,22 @@ -ecore_imf_deps = [ecore] +ecore_imf_deps = [ecore, buildsystem] ecore_imf_pub_deps = [eina] +ecore_imf_ext_deps = [buildsystem_simple] ecore_imf_header_src = [ 'Ecore_IMF.h' ] -ecore_imf_src = [ +ecore_imf_src = files([ '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: [buildsystem, ecore_imf_deps, ecore_imf_pub_deps], + dependencies: [ecore_imf_deps, ecore_imf_pub_deps, ecore_imf_ext_deps], include_directories : config_dir, c_args : package_c_args, install: true, diff --git a/src/lib/ecore_imf_evas/meson.build b/src/lib/ecore_imf_evas/meson.build index 28d53ea78d..b5d2d64125 100644 --- a/src/lib/ecore_imf_evas/meson.build +++ b/src/lib/ecore_imf_evas/meson.build @@ -2,16 +2,17 @@ ecore_imf_evas_header_src = [ 'Ecore_IMF_Evas.h' ] -ecore_imf_evas_src = [ +ecore_imf_evas_src = files([ 'ecore_imf_evas.c' -] +]) ecore_imf_evas_deps = [ecore_imf, evas] ecore_imf_evas_pub_deps = [eina, eo, efl] +ecore_imf_evas_ext_deps = [m] ecore_imf_evas_lib = library('ecore_imf_evas', ecore_imf_evas_src, - dependencies: ecore_imf_evas_pub_deps + [m] + ecore_imf_evas_deps, + dependencies: ecore_imf_evas_pub_deps + ecore_imf_evas_deps + ecore_imf_evas_ext_deps, include_directories : config_dir + [include_directories('.')], install: true, c_args : package_c_args, diff --git a/src/lib/ecore_input/meson.build b/src/lib/ecore_input/meson.build index d985eb58e8..d1250c3591 100644 --- a/src/lib/ecore_input/meson.build +++ b/src/lib/ecore_input/meson.build @@ -1,27 +1,27 @@ ecore_input_deps = [ecore] ecore_input_pub_deps = [eina, eo] +ecore_input_ext_deps = [] ecore_input_header_src = [ 'Ecore_Input.h' ] -ecore_input_src = [ +ecore_input_src = files([ 'ecore_input.c', 'ecore_input_compose.c', 'ecore_input_joystick.c', 'ecore_input_compose.h', 'ecore_input_private.h' -] +]) if get_option('eeze') ecore_input_deps += eeze endif - ecore_input_lib = library('ecore_input', ecore_input_src, pub_eo_file_target, c_args : package_c_args, - dependencies: ecore_input_pub_deps + ecore_input_deps, + dependencies: ecore_input_pub_deps + ecore_input_deps + ecore_input_ext_deps, include_directories : config_dir, install: true, version : meson.project_version() diff --git a/src/lib/ecore_input_evas/meson.build b/src/lib/ecore_input_evas/meson.build index ee2516bfbf..612a931c16 100644 --- a/src/lib/ecore_input_evas/meson.build +++ b/src/lib/ecore_input_evas/meson.build @@ -1,21 +1,22 @@ ecore_input_evas_deps = [ecore, ecore_input, evas] ecore_input_evas_pub_deps = [eina, evas] +ecore_input_evas_ext_deps = [] pub_eo_file_target = [] ecore_input_evas_header_src = [ 'Ecore_Input_Evas.h' ] -ecore_input_evas_src = [ +ecore_input_evas_src = files([ 'ecore_input_evas.c', 'ecore_input_evas_private.h', -] +]) ecore_input_evas_lib = library('ecore_input_evas', ecore_input_evas_src, pub_eo_file_target, c_args : package_c_args, - dependencies: ecore_input_evas_pub_deps + ecore_input_evas_deps, + dependencies: [ecore_input_evas_pub_deps, ecore_input_evas_deps, ecore_input_evas_ext_deps], include_directories : config_dir, install: true, version : meson.project_version() diff --git a/src/lib/ecore_ipc/meson.build b/src/lib/ecore_ipc/meson.build index e34caa3619..6439148d16 100644 --- a/src/lib/ecore_ipc/meson.build +++ b/src/lib/ecore_ipc/meson.build @@ -1,19 +1,19 @@ ecore_ipc_deps = [ecore, ecore_con] ecore_ipc_pub_deps = [eina] - +ecore_ipc_ext_deps = [] ecore_ipc_header_src = [ 'Ecore_Ipc.h' ] -ecore_ipc_src = [ +ecore_ipc_src = files([ 'ecore_ipc.c', 'ecore_ipc_private.h', -] +]) ecore_ipc_lib = library('ecore_ipc', ecore_ipc_src, pub_eo_file_target, c_args : package_c_args, - dependencies: ecore_ipc_deps + ecore_ipc_pub_deps, + dependencies: [ecore_ipc_deps, ecore_ipc_pub_deps, ecore_ipc_ext_deps], include_directories : config_dir, install: true, version : meson.project_version() diff --git a/src/lib/ecore_sdl/meson.build b/src/lib/ecore_sdl/meson.build index b4685818c1..f3cd70428d 100644 --- a/src/lib/ecore_sdl/meson.build +++ b/src/lib/ecore_sdl/meson.build @@ -1,20 +1,21 @@ ecore_sdl_deps = [eina, ecore, ecore_input] ecore_sdl_pub_deps = [] +ecore_sdl_ext_deps = [m] -ecore_sdl_src = [ +ecore_sdl_src = files([ 'ecore_sdl.c' -] +]) ecore_sdl_header_src = [ 'Ecore_Sdl.h', 'Ecore_Sdl_Keys.h' ] -ecore_sdl_deps += dependency('sdl2') +ecore_sdl_ext_deps += dependency('sdl2') ecore_sdl_lib = library('ecore_sdl', ecore_sdl_src, - dependencies: [m] + ecore_sdl_deps + ecore_sdl_pub_deps, + dependencies: [ecore_sdl_deps, ecore_sdl_pub_deps, ecore_sdl_ext_deps], include_directories : config_dir + [include_directories(join_paths('..','..'))], install: true, c_args : package_c_args, diff --git a/src/lib/ecore_win32/meson.build b/src/lib/ecore_win32/meson.build index 1bb4589f28..b105dbae91 100644 --- a/src/lib/ecore_win32/meson.build +++ b/src/lib/ecore_win32/meson.build @@ -1,8 +1,14 @@ -if sys_windows == true - ecore_win32_deps = [evil, eina, ecore, ecore_input] - ecore_win32_pub_deps = [] +ecore_win32_deps = [] +ecore_win32_pub_deps = [] +ecore_win32_ext_deps = [] +ecore_win32_src = [] - ecore_win32_src = [ +if sys_windows == true + ecore_win32_deps += [evil, eina, ecore, ecore_input] + ecore_win32_pub_deps += [] + ecore_win32_ext_deps += [] + + ecore_win32_src += files([ 'ecore_win32.c', 'ecore_win32_clipboard.c', 'ecore_win32_cursor.c', @@ -14,7 +20,7 @@ if sys_windows == true 'ecore_win32_event.c', 'ecore_win32_monitor.c', 'ecore_win32_window.c', - ] + ]) ecore_win32_header_src = [ 'Ecore_Win32.h' @@ -22,7 +28,7 @@ if sys_windows == true ecore_win32_lib = library('ecore_win32', ecore_win32_src, - dependencies: ecore_win32_deps + ecore_win32_pub_deps, + dependencies: [ecore_win32_deps, ecore_win32_pub_deps, ecore_win32_ext_deps], include_directories : config_dir, install: true, c_args : package_c_args, diff --git a/src/lib/ecore_wl2/meson.build b/src/lib/ecore_wl2/meson.build index 4260aa78a5..eb88e47703 100644 --- a/src/lib/ecore_wl2/meson.build +++ b/src/lib/ecore_wl2/meson.build @@ -1,14 +1,13 @@ -ecore_wl2_deps = [ - dependency('wayland-client'), dependency('wayland-server'), dependency('xkbcommon'), - wayland_protocol, dl, m, ecore, ecore_input, libdrm, buildsystem -] +ecore_wl2_deps = [ecore, ecore_input, buildsystem] ecore_wl2_pub_deps = [eina, ecore] +ecore_wl2_ext_deps = [dependency('wayland-client'), dependency('wayland-server'), dependency('xkbcommon'), + wayland_protocol, libdrm, buildsystem_simple, dl, m] ecore_wl2_header_src = [ 'Ecore_Wl2.h' ] -ecore_wl2_src = [ +ecore_wl2_src = files([ 'ecore_wl2_internal.h', 'ecore_wl2_subsurf.c', 'ecore_wl2_dnd.c', @@ -20,12 +19,12 @@ ecore_wl2_src = [ 'ecore_wl2_private.h', 'ecore_wl2_buffer.c', 'ecore_wl2_surface.c' -] +]) ecore_wl2_lib = library('ecore_wl2', ecore_wl2_src, pub_eo_file_target, c_args : package_c_args, - dependencies: ecore_wl2_deps + ecore_wl2_pub_deps, + dependencies: ecore_wl2_deps + ecore_wl2_pub_deps + ecore_wl2_ext_deps, include_directories : config_dir, install: true, version : meson.project_version() @@ -38,6 +37,11 @@ ecore_wl2 = declare_dependency( dependencies: ecore_wl2_pub_deps, ) +ecore_wl2_internal_headers = declare_dependency( + include_directories: include_directories('.'), + dependencies: [wayland_protocol_simple, libdrm, dependency('wayland-client'), dependency('wayland-server'), dependency('xkbcommon'),], +) + install_headers(ecore_wl2_header_src, install_dir : dir_package_include, ) diff --git a/src/lib/ecore_x/meson.build b/src/lib/ecore_x/meson.build index 51bdb2a7e8..608d3cda22 100644 --- a/src/lib/ecore_x/meson.build +++ b/src/lib/ecore_x/meson.build @@ -1,5 +1,6 @@ -ecore_x_deps = [ecore, dl, m, ecore_input] +ecore_x_deps = [ecore, ecore_input] ecore_x_pub_deps = [eina, efl] +ecore_x_ext_deps = [dl, m] ecore_x_header_src = [ 'Ecore_X.h', @@ -7,7 +8,7 @@ ecore_x_header_src = [ 'Ecore_X_Cursor.h' ] -ecore_x_src = [ +ecore_x_src = files([ 'ecore_x_atoms_decl.h', 'ecore_x.c', 'ecore_x_dnd.c', @@ -43,7 +44,7 @@ ecore_x_src = [ 'ecore_x_vsync.c', 'ecore_x_gesture.c', 'ecore_x_private.h' -] +]) ecore_x_checks = [ ['Xcomposite', 'Xcomposite.h', 'Xcomposite', 'XCompositeQueryExtension'], @@ -104,12 +105,12 @@ int main () { else error('extension '+ecore_x_check[0]+' not found for X11') endif - ecore_x_deps += x_lib + ecore_x_ext_deps += x_lib endforeach -ecore_x_deps += x11 -ecore_x_deps += xcb -ecore_x_deps += x11_xcb +ecore_x_ext_deps += x11 +ecore_x_ext_deps += xcb +ecore_x_ext_deps += x11_xcb # there are a few special cases @@ -125,12 +126,12 @@ cc.has_header_symbol('X11/Xcursor/Xcursor.h', 'XcursorSupportsARGB', dependencies : [x11, xcb] ) config_h.set('ECORE_XCURSOR', '1') -ecore_x_deps += lib +ecore_x_ext_deps += lib ecore_x_lib = library('ecore_x', ecore_x_src, pub_eo_file_target, c_args : package_c_args, - dependencies: ecore_x_pub_deps + ecore_x_deps, + dependencies: ecore_x_pub_deps + ecore_x_deps + ecore_x_ext_deps, include_directories : config_dir, install: true, version : meson.project_version() diff --git a/src/lib/ector/meson.build b/src/lib/ector/meson.build index 628c83f384..0d044b5404 100644 --- a/src/lib/ector/meson.build +++ b/src/lib/ector/meson.build @@ -1,5 +1,6 @@ -ector_deps = [eina, emile, eet, eo, efl] +ector_deps = [eina, emile, eet, eo, efl, draw] ector_pub_deps = [eina, efl] +ector_ext_deps = [triangulator, freetype, draw_without_deps, m] pub_eo_file_target = [] ector_opt_lib = [ ] @@ -9,7 +10,7 @@ ector_header_src = [ # nothing for now ector stays only intree ] -ector_src = [ +ector_src = files([ 'ector_main.c', 'ector_gl_internal.h', 'ector_buffer.c', @@ -19,7 +20,7 @@ ector_src = [ 'ector_renderer_gradient.c', 'ector_renderer_gradient_radial.c', 'ector_renderer_gradient_linear.c' -] +]) pub_eo_files = [ 'ector_surface.eo', @@ -80,14 +81,19 @@ endforeach subdir('software') +ector_opt_lib_dep = declare_dependency( + link_with: ector_opt_lib +) + +ector_ext_deps += ector_opt_lib_dep + ector_lib = library('ector', ector_src, pub_eo_file_target, c_args : package_c_args, - dependencies: ector_pub_deps + [triangulator, freetype, draw, m] + ector_deps, + dependencies: ector_pub_deps + ector_ext_deps + ector_deps, include_directories : config_dir, install: true, version : meson.project_version(), - link_with: ector_opt_lib ) ector = declare_dependency( diff --git a/src/lib/edje/meson.build b/src/lib/edje/meson.build index 84b8ac7318..8332f9525a 100644 --- a/src/lib/edje/meson.build +++ b/src/lib/edje/meson.build @@ -3,10 +3,12 @@ edje_deps = [ eet, evas, ecore_evas, ecore_file, ecore_input, ecore_imf, ecore_imf_evas, - embryo, efreet, eio, intl + embryo, efreet, eio, intl, + buildsystem ] -edje_pub_deps = [m, evas, eo, efl, lua] +edje_pub_deps = [evas, eo, efl] +edje_ext_deps = [m, lua, buildsystem_simple] if (get_option('physics')) edje_deps += ephysics @@ -102,7 +104,7 @@ edje_header_src = [ 'efl_canvas_layout_eo.legacy.h', ] -edje_src = [ +edje_src = files([ 'edje_private.h', 'edje_convert.h', 'edje_box_layout.c', @@ -141,12 +143,11 @@ edje_src = [ 'edje_part_box.c', 'edje_part_text.c', 'edje_part_invalid.c' - -] +]) edje_lib = library('edje', edje_src, pub_eo_file_target, priv_eo_file_target, - dependencies: edje_pub_deps + edje_deps, + dependencies: edje_pub_deps + edje_deps + edje_ext_deps, include_directories : config_dir + [include_directories('.')], install: true, c_args : [package_c_args], diff --git a/src/lib/eet/meson.build b/src/lib/eet/meson.build index 2dec5335c0..78b5146296 100644 --- a/src/lib/eet/meson.build +++ b/src/lib/eet/meson.build @@ -1,11 +1,12 @@ -eet_deps = [crypto, jpeg, rg_etc, m] +eet_deps = [rg_etc] eet_pub_deps = [eina, emile, efl] +eet_ext_deps = [crypto, jpeg, m, rg_etc_simple] eet_header_src = [ 'Eet.h' ] -eet_src = [ +eet_src = files([ 'Eet_private.h', 'eet_alloc.c', 'eet_cipher.c', @@ -16,12 +17,12 @@ eet_src = [ 'eet_lib.c', 'eet_node.c', 'eet_utils.c', -] +]) eet_lib = library('eet', eet_src, pub_eo_file_target, c_args : package_c_args, - dependencies: eet_deps + eet_pub_deps, + dependencies: eet_deps + eet_pub_deps + eet_ext_deps, include_directories : config_dir, install: true, version : meson.project_version() diff --git a/src/lib/eeze/meson.build b/src/lib/eeze/meson.build index 313a73d888..1435fe7a2f 100644 --- a/src/lib/eeze/meson.build +++ b/src/lib/eeze/meson.build @@ -1,5 +1,6 @@ eeze_deps = [buildsystem] -eeze_pub_deps = [eina, efl] +eeze_pub_deps = [eina, efl, ecore, ecore_file] +eeze_ext_deps = [] pub_eo_file_target = [] eeze_header_src = [ @@ -10,7 +11,7 @@ eeze_header_src = [ join_paths('..','..','bin','eeze','eeze_scanner','eeze_scanner.h') ] -eeze_src = [ +eeze_src = files([ 'eeze_main.c', 'eeze_net.c', 'eeze_net_private.h', @@ -26,7 +27,7 @@ eeze_src = [ 'eeze_disk_udev.c', 'eeze_disk_mount.c', 'eeze_disk_private.h' -] +]) if get_option('v4l2') config_h.set('HAVE_V4L2', '1') @@ -37,17 +38,17 @@ endif if (get_option('libmount')) libmount = dependency('mount') - eeze_deps += [libmount] + eeze_ext_deps += [libmount] if libmount.version() == '2.19' - eeze_src += 'eeze_disk_libmount.c' + eeze_src += files('eeze_disk_libmount.c') elif libmount.version() < '2.19' - eeze_src += 'eeze_disk_libmount_old.c' + eeze_src += files('eeze_disk_libmount_old.c') elif libmount.version() > '2.19' - eeze_src += 'eeze_disk_libmount_new.c' + eeze_src += files('eeze_disk_libmount_new.c') endif config_h.set('HAVE_EEZE_MOUNT', '1') else - eeze_src += 'eeze_disk_dummy.c' + eeze_src += files('eeze_disk_dummy.c') endif options_to_check = ['eject', 'mount', 'unmount'] @@ -55,7 +56,7 @@ options_to_check = ['eject', 'mount', 'unmount'] udev = dependency('libudev', version: ['>=148'] ) -eeze_deps += udev +eeze_ext_deps += udev if udev.version() < '199' config_h.set('OLD_LIBUDEV', '1') @@ -87,7 +88,7 @@ config_h.set_quoted('EEZE_UNMOUNT_BIN', unmount_bin) eeze_lib = library('eeze', eeze_src, pub_eo_file_target, - dependencies: eeze_deps + eeze_pub_deps + [ecore, ecore_file, buildsystem, eeze_deps], + dependencies: eeze_deps + eeze_pub_deps + eeze_deps + eeze_ext_deps, include_directories : config_dir, install: true, c_args : package_c_args, diff --git a/src/lib/efl/meson.build b/src/lib/efl/meson.build index 326e34eafd..5dbc825894 100644 --- a/src/lib/efl/meson.build +++ b/src/lib/efl/meson.build @@ -1,5 +1,6 @@ -efl_deps = [] +efl_deps = [m] efl_pub_deps = [eo] +efl_ext_deps = [] efl_header_src = [ 'Efl.h', @@ -14,7 +15,7 @@ package_header_subdirs += 'interfaces' efl_lib = library('efl', efl_src, pub_eo_file_target, c_args : package_c_args, - dependencies: [eina, eo, m], + dependencies: [efl_deps, efl_pub_deps, efl_ext_deps], install: true, version : meson.project_version() ) diff --git a/src/lib/efl_canvas_wl/meson.build b/src/lib/efl_canvas_wl/meson.build index d021975844..63527c7d5c 100644 --- a/src/lib/efl_canvas_wl/meson.build +++ b/src/lib/efl_canvas_wl/meson.build @@ -1,5 +1,5 @@ efl_canvas_wl_deps = [ecore_wl2, ecore_input, ecore, ecore_evas, evas, emile, eina] -efl_canvas_wl_pub_deps = [eo, efl, evas, dependency('wayland-server', version : '>= 1.11.0'), dependency('xkbcommon', version : '>= 0.6.0')] +efl_canvas_wl_pub_deps = [eo, efl, evas, dependency('wayland-server', version : '>= 1.11.0'), dependency('xkbcommon', version : '>= 0.6.0'), wayland_protocol] if (get_option('x11')) efl_canvas_wl_deps += [ecore_x] diff --git a/src/lib/efreet/meson.build b/src/lib/efreet/meson.build index 271eca0b1a..41d3113566 100644 --- a/src/lib/efreet/meson.build +++ b/src/lib/efreet/meson.build @@ -11,7 +11,7 @@ efreet_header_src = [ 'Efreet_Trash.h' ] -efreet_src = [ +efreet_src = files([ 'efreet.c', 'efreet_base.c', 'efreet_icon.c', @@ -28,17 +28,20 @@ efreet_src = [ 'efreet_cache_private.h', 'efreet_mime.c', 'efreet_trash.c' -] +]) -efreet_deps = [eet, ecore, ecore_con, ecore_file, eo, efl, eina, emile, ecore_ipc, buildsystem,intl] +efreet_deps = [eet, ecore, ecore_con, ecore_file, eo, efl, eina, emile, ecore_ipc, buildsystem] efreet_pub_deps = [eina, eo, efl] +efreet_ext_deps = [buildsystem_simple, intl, m] + +package_c_args += ['-DDATA_DIR="'+dir_data+'"'] efreet_lib = library('efreet', efreet_src, - dependencies: efreet_pub_deps + [m] + efreet_deps, + dependencies: efreet_pub_deps + efreet_ext_deps + efreet_deps, include_directories : config_dir + [include_directories('.')], install: true, - c_args : [package_c_args, '-DDATA_DIR="'+dir_data+'"'], + c_args : package_c_args, version : meson.project_version() ) diff --git a/src/lib/eina/meson.build b/src/lib/eina/meson.build index 53e1b6120b..8df3660f31 100644 --- a/src/lib/eina/meson.build +++ b/src/lib/eina/meson.build @@ -1,5 +1,6 @@ eina_deps = [dl] eina_pub_deps = [thread_dep] +eina_ext_deps = [m, rt, dl, thread_dep] if sys_windows == true eina_pub_deps += [evil] @@ -114,7 +115,7 @@ public_headers = [ 'Eina.h' ] -sources = [ +eina_src = files([ 'eina_abi.c', 'eina_accessor.c', 'eina_array.c', @@ -191,12 +192,12 @@ sources = [ 'eina_vpath.c', 'eina_vpath_xdg.c', 'eina_abstract_content.c', -] +]) + eina_mp_sources if sys_windows == true - sources += 'eina_file_win32.c' + eina_src += files('eina_file_win32.c') else - sources += 'eina_file.c' + eina_src += files('eina_file.c') endif eina_config = configuration_data() @@ -242,7 +243,7 @@ if use_valgrind else config_h.set('HAVE_VALGRIND', 1) endif - eina_deps += valgrind + eina_ext_deps += valgrind else config_h.set('NVALGRIND', 1) valgrind = [] @@ -349,7 +350,7 @@ public_headers += eina_config_file unwind = dependency('libunwind-generic', required: false) if unwind.found() config_h.set('HAVE_UNWIND', 1) - eina_deps += unwind + eina_ext_deps += unwind config_h.set('EINA_LOG_BACKTRACE_ENABLE', 1) endif @@ -358,13 +359,15 @@ iconv = dependency('iconv', required: false) if iconv.found() == false iconv = cc.find_library('iconv', required: false) endif +eina_ext_deps += [iconv] execinfo = cc.find_library('execinfo', required: false) +eina_ext_deps += [execinfo] -eina_lib = library('eina', sources, +eina_lib = library('eina', eina_src, c_args : package_c_args, include_directories : config_dir, - dependencies: [m, rt, dl, execinfo, iconv, eina_deps, thread_dep, eina_mem_pools, evil], + dependencies: eina_ext_deps + [eina_deps, evil], install: true, version : meson.project_version() ) diff --git a/src/lib/eio/meson.build b/src/lib/eio/meson.build index 64f33a2430..a5536cd90b 100644 --- a/src/lib/eio/meson.build +++ b/src/lib/eio/meson.build @@ -32,7 +32,7 @@ eio_header_src = [ 'eio_inline_helper.x' ] -eio_src = [ +eio_src = files([ 'eio_dir.c', 'eio_eet.c', 'eio_file.c', @@ -48,27 +48,28 @@ eio_src = [ 'efl_io_model_private.h', 'eio_private.h', 'eio_sentry_private.h' -] +]) linker_args = [] if sys_windows == true - eio_src += ['eio_monitor_win32.c'] + eio_src += files(['eio_monitor_win32.c']) elif sys_osx == true - eio_src += ['eio_monitor_cocoa.c'] + eio_src += files(['eio_monitor_cocoa.c']) linker_args = [['-framework', 'CoreServices']] elif sys_linux == true - eio_src += ['eio_monitor_inotify.c'] + eio_src += files(['eio_monitor_inotify.c']) elif sys_bsd == true - eio_src += ['eio_monitor_kevent.c'] + eio_src += files(['eio_monitor_kevent.c']) endif eio_deps = [ecore, ecore_file, eet, eo, eina, efl, emile, efreet] eio_pub_deps = [eina, eet] +eio_ext_deps = [m] eio_lib = library('eio', eio_src, pub_eo_file_target, - dependencies: [eina, eo, efl, m, eio_deps], + dependencies: eio_deps + eio_pub_deps + eio_ext_deps, include_directories : config_dir + [include_directories('.')], install: true, c_args : package_c_args, diff --git a/src/lib/eldbus/meson.build b/src/lib/eldbus/meson.build index a58be32b1b..ea3d6930c9 100644 --- a/src/lib/eldbus/meson.build +++ b/src/lib/eldbus/meson.build @@ -1,5 +1,6 @@ eldbus_deps = [ecore] eldbus_pub_deps = [eina, eo, efl] +eldbus_ext_deps = [] pub_eo_files = [ 'eldbus_model_connection.eo', @@ -61,7 +62,7 @@ eldbus_header_src = [ 'eldbus_message_eina_value.h' ] -eldbus_src = [ +eldbus_src = files([ 'eldbus_private.h', 'eldbus_private_types.h', 'eldbus_model_private.h', @@ -90,14 +91,14 @@ eldbus_src = [ 'eldbus_model_arguments.c', 'eldbus_model_signal.c', 'eldbus_introspection.c' -] +]) -eldbus_deps += dependency('dbus-1') +eldbus_ext_deps += dependency('dbus-1') eldbus_lib = library('eldbus', eldbus_src, pub_eo_file_target, c_args : package_c_args, - dependencies: eldbus_pub_deps + eldbus_deps, + dependencies: eldbus_pub_deps + eldbus_deps + eldbus_ext_deps, include_directories : config_dir, install: true, version : meson.project_version() diff --git a/src/lib/elementary/meson.build b/src/lib/elementary/meson.build index fb4431d3f7..f6674fbdc3 100644 --- a/src/lib/elementary/meson.build +++ b/src/lib/elementary/meson.build @@ -712,7 +712,7 @@ elementary_header_src = [ 'Elementary_Cursor.h' ] + elementary_pub_headers + elementary_headers_unstable -elementary_src = [ +elementary_src = files([ 'elm_priv.h', 'elementary_config.h', 'els_box.h', @@ -947,12 +947,12 @@ elementary_src = [ 'efl_ui_stack.c', 'efl_ui_separator.c', 'efl_ui_spotlight_animation_manager.c', -] +]) -elementary_deps = [emile, eo, efl, edje, ethumb, ethumb_client, emotion, ecore_imf, ecore_con, eldbus, efreet, eio, atspi, dl, intl] +elementary_deps = [emile, eo, efl, edje, ethumb, ethumb_client, emotion, ecore_imf, ecore_con, eldbus, efreet, eio] elementary_pub_deps = [eina, eet, evas, ecore, ecore_evas, ecore_file, ecore_input, ecore_imf, ecore_con, edje, eldbus, efreet, ethumb_client, efl] - +elementary_ext_deps = [atspi, dl, intl] elm_options = configuration_data() config_h.set_quoted('ELM_TOP_BUILD_DIR', meson.build_root()) @@ -986,6 +986,10 @@ endif if get_option('wl') config_h.set('HAVE_ELEMENTARY_WL2', '1') elementary_deps += ecore_wl2 + elementary_ext_deps += declare_dependency( + include_directories: include_directories([join_paths('..', '..', 'modules', 'ecore_evas', 'engines', 'wayland'), join_paths('..', '..', 'lib', 'ecore_wl2')]), + dependencies : ecore_wl2_internal_headers + ) endif if get_option('drm') @@ -1013,8 +1017,8 @@ elm_package_c_args = package_c_args elementary_lib = library('elementary', elementary_src, pub_eo_file_target, priv_eo_file_target, c, embed_config, - dependencies: elementary_pub_deps + elementary_deps, - include_directories : config_dir + [include_directories('.')] + [include_directories(join_paths('..', '..', '..'))] + [ecore_evas_wayland_engine_include_dir], + dependencies: elementary_pub_deps + elementary_deps + elementary_ext_deps, + include_directories : config_dir + [include_directories('.')] + [include_directories(join_paths('..', '..', '..'))], install: true, c_args : elm_package_c_args, version : meson.project_version() @@ -1027,7 +1031,6 @@ elementary = declare_dependency( dependencies: elementary_pub_deps, ) - if get_option('install-eo-files') install_data(pub_eo_files + pub_eo_types_files, install_dir: join_paths(eolian_include_dir, package_version_name) diff --git a/src/lib/elput/meson.build b/src/lib/elput/meson.build index bbfe85d74f..639840e424 100644 --- a/src/lib/elput/meson.build +++ b/src/lib/elput/meson.build @@ -1,11 +1,12 @@ elput_deps = [ecore, ecore_input, eeze, eo, m] elput_pub_deps = [eina, eldbus] +elput_ext_deps = [] elput_header_src = [ 'Elput.h' ] -elput_src = [ +elput_src = files([ 'elput_touch.c', 'elput_evdev.c', 'elput_input.c', @@ -13,16 +14,16 @@ elput_src = [ 'elput_manager.c', 'elput.c', 'elput_private.h' -] +]) -elput_deps += dependency('libinput', version : ['>=1.7.0']) -elput_deps += dependency('xkbcommon', version : ['>=0.3.0']) -elput_deps += dependency('libudev') +elput_ext_deps += dependency('libinput', version : ['>=1.7.0']) +elput_ext_deps += dependency('xkbcommon', version : ['>=0.3.0']) +elput_ext_deps += dependency('libudev') elput_lib = library('elput', elput_src, pub_eo_file_target, c_args : package_c_args, - dependencies: elput_pub_deps + elput_deps, + dependencies: elput_pub_deps + elput_deps + elput_ext_deps, include_directories : config_dir, install: true, version : meson.project_version() diff --git a/src/lib/embryo/meson.build b/src/lib/embryo/meson.build index 6ab8af8fe7..e0bb2385f9 100644 --- a/src/lib/embryo/meson.build +++ b/src/lib/embryo/meson.build @@ -1,12 +1,12 @@ -embryo_deps = [ecore] +embryo_deps = [eina, ecore, buildsystem] embryo_pub_deps = [eina, eo, efl] - +embryo_ext_deps = [buildsystem_simple, m] embryo_header_src = [ 'Embryo.h' ] -embryo_src = [ +embryo_src = files([ 'embryo_amx.c', 'embryo_args.c', 'embryo_float.c', @@ -15,13 +15,11 @@ embryo_src = [ 'embryo_str.c', 'embryo_time.c', 'embryo_private.h' -] - -embryo_deps = [eina, m] +]) embryo_lib = library('embryo', embryo_src, - dependencies: [m, buildsystem] + embryo_deps, + dependencies: [embryo_deps, embryo_pub_deps, embryo_ext_deps], include_directories : config_dir + [include_directories(join_paths('..','..'))], install: true, c_args : package_c_args, diff --git a/src/lib/emile/meson.build b/src/lib/emile/meson.build index d8734cd1f2..fb5822836b 100644 --- a/src/lib/emile/meson.build +++ b/src/lib/emile/meson.build @@ -1,5 +1,6 @@ -emile_deps = [jpeg, crypto, dependency('zlib')] +emile_deps = [] emile_pub_deps = [eina, efl] +emile_ext_deps = [jpeg, crypto, dependency('zlib'), lz4, rg_etc, m] emile_headers = [ 'Emile.h', @@ -9,25 +10,25 @@ emile_headers = [ 'emile_base64.h' ] -emile_src = [ +emile_src = files([ 'emile_private.h', 'emile_main.c', 'emile_compress.c', 'emile_image.c', 'emile_base64.c', -] +]) if (get_option('crypto') == 'gnutls') - emile_src += 'emile_cipher_gnutls.c' + emile_src += files('emile_cipher_gnutls.c') elif (get_option('crypto') == 'openssl') - emile_src += 'emile_cipher_openssl.c' + emile_src += files('emile_cipher_openssl.c') endif emile_lib = library('emile', emile_src, c_args : package_c_args, include_directories: config_dir, - dependencies: emile_pub_deps + emile_deps + [lz4, rg_etc, m], + dependencies: emile_pub_deps + emile_deps + emile_ext_deps, install: true, version : meson.project_version() ) diff --git a/src/lib/emotion/meson.build b/src/lib/emotion/meson.build index e779a39248..b289fb221a 100644 --- a/src/lib/emotion/meson.build +++ b/src/lib/emotion/meson.build @@ -28,17 +28,18 @@ emotion_header_src = [ 'efl_canvas_video_eo.legacy.h', ] -emotion_src = [ +emotion_src = files([ 'emotion_modules.h', 'emotion_private.h', 'emotion_smart.c', 'emotion_webcam.c', 'emotion_modules.c', 'emotion_main.c' -] +]) emotion_deps = [ecore, eet, evas, eio, emile] emotion_pub_deps = [eina, eo, efl] +emotion_ext_deps = [] if get_option('eeze') == true emotion_deps += [eeze] @@ -49,7 +50,7 @@ emotion_package_c_args = package_c_args emotion_lib = library('emotion', emotion_src, pub_eo_file_target, priv_eo_file_target, - dependencies: emotion_deps + emotion_pub_deps, + dependencies: emotion_deps + emotion_pub_deps + emotion_ext_deps, include_directories : config_dir + [include_directories('.')], install: true, c_args : emotion_package_c_args, diff --git a/src/lib/eo/meson.build b/src/lib/eo/meson.build index 1360276e60..9cd33775b0 100644 --- a/src/lib/eo/meson.build +++ b/src/lib/eo/meson.build @@ -1,5 +1,6 @@ eo_deps = [] eo_pub_deps = [eina] +eo_ext_deps = [valgrind, dl, execinfo] pub_eo_files = [ 'efl_object.eo', @@ -7,7 +8,7 @@ pub_eo_files = [ 'efl_object_override.eo' ] -eo_src = [ +eo_src = files([ 'eo.c', 'eo_ptr_indirection.c', 'eo_ptr_indirection.h', @@ -17,7 +18,7 @@ eo_src = [ 'eo_add_fallback.h', 'eo_private.h', 'eo_internal.h' -] +]) pub_eo_types_files = [ 'eina_types.eot' @@ -61,7 +62,7 @@ eolian_include_directories += ['-I', meson.current_source_dir()] eo_lib = library('eo', eo_src, pub_eo_file_target, c_args : package_c_args, - dependencies: [eina, valgrind, dl, execinfo], + dependencies: [eo_deps, eo_pub_deps, eo_ext_deps], install: true, version : meson.project_version() ) @@ -69,7 +70,7 @@ eo_lib = library('eo', eo_lib_dbg = library('eo_dbg', eo_src, pub_eo_file_target, c_args : package_c_args + [ '-DEO_DEBUG' ], - dependencies: [eina, valgrind, dl, execinfo], + dependencies: [eo_deps, eo_pub_deps, eo_ext_deps], install: true, version : meson.project_version() ) diff --git a/src/lib/ephysics/meson.build b/src/lib/ephysics/meson.build index ad1a168ae5..6233f58885 100644 --- a/src/lib/ephysics/meson.build +++ b/src/lib/ephysics/meson.build @@ -1,13 +1,13 @@ bullet = dependency('bullet') -ephysics_deps = [evas, bullet] +ephysics_deps = [evas] ephysics_pub_deps = [eina, eo, efl] - +ephysics_ext_deps = [m, bullet] ephysics_header_src = [ 'EPhysics.h' ] -ephysics_src = [ +ephysics_src = files([ 'ephysics_private.h', 'ephysics_trimesh.h', 'ephysics_body_materials.h', @@ -18,11 +18,11 @@ ephysics_src = [ 'ephysics_quaternion.cpp', 'ephysics_shape.cpp', 'ephysics_world.cpp' -] +]) ephysics_lib = library('ephysics', ephysics_src, - dependencies: ephysics_pub_deps + [m] + ephysics_deps, + dependencies: ephysics_pub_deps + ephysics_deps + ephysics_ext_deps, include_directories : config_dir + [include_directories('.')], install: true, c_args : package_c_args, diff --git a/src/lib/ethumb/meson.build b/src/lib/ethumb/meson.build index ffc62e91e5..fbe1436e4b 100644 --- a/src/lib/ethumb/meson.build +++ b/src/lib/ethumb/meson.build @@ -2,19 +2,20 @@ ethumb_header_src = [ 'Ethumb.h' ] -ethumb_src = [ +ethumb_src = files([ 'ethumb.c', 'ethumb_private.h', 'md5.h', 'md5.c', -] +]) ethumb_deps = [eet, evas, ecore, ecore_evas, ecore_file, ecore_imf, edje, emile] ethumb_pub_deps = [eina, eo, efl] +ethumb_ext_deps = [m] ethumb_lib = library('ethumb', ethumb_src, - dependencies: ethumb_pub_deps + [m] + ethumb_deps, + dependencies: ethumb_pub_deps + ethumb_ext_deps + ethumb_deps, include_directories : config_dir + [include_directories('.')], install: true, c_args : package_c_args, diff --git a/src/lib/ethumb_client/meson.build b/src/lib/ethumb_client/meson.build index bddbab1d8d..1326fee995 100644 --- a/src/lib/ethumb_client/meson.build +++ b/src/lib/ethumb_client/meson.build @@ -2,9 +2,9 @@ ethumb_client_header_src = [ 'Ethumb_Client.h' ] -ethumb_client_src = [ +ethumb_client_src = files([ 'ethumb_client.c' -] +]) ethumb_client_deps = [ eldbus, @@ -12,10 +12,11 @@ ethumb_client_deps = [ ] ethumb_client_pub_deps = [eina, eo, efl, ethumb] +ethumb_client_ext_deps = [] ethumb_client_lib = library('ethumb_client', ethumb_client_src, - dependencies: ethumb_client_pub_deps + ethumb_client_deps, + dependencies: ethumb_client_pub_deps + ethumb_client_deps + ethumb_client_ext_deps, include_directories : config_dir + [include_directories('.')], install: true, c_args : package_c_args, diff --git a/src/lib/evas/meson.build b/src/lib/evas/meson.build index 8b9c15f742..5799685e87 100644 --- a/src/lib/evas/meson.build +++ b/src/lib/evas/meson.build @@ -48,7 +48,9 @@ evas_vg_loaders_file = [ evas_vg_savers_file = ['eet', 'svg'] rel_evas_modules = join_paths('..', '..', '..', 'modules', 'evas', 'engines', 'software_generic') -evas_deps = [eo, eet, eina, efl, emile, ector, ecore, buildsystem, intl] +evas_deps = [eo, eet, eina, efl, emile, ector, ecore, draw, buildsystem] +evas_ext_deps = [buildsystem_simple, intl, m, draw_simple, valgrind, libunibreak, lua, vg_common] + pub_eo_file_target = [] priv_eo_files = [] evas_include_directories = [] @@ -128,27 +130,24 @@ evas_include_directories += [ include_directories('common'), include_directories('include'), include_directories('filters'), - vg_common_inc_dir ] -evas_src += [ +evas_src += files([ 'main.c' -] +]) evas_src_opt = [ ] -evas_src += vg_common_src - -evas_deps += dependency('freetype2') +evas_ext_deps += dependency('freetype2') if (get_option('fontconfig')) config_h.set('HAVE_FONTCONFIG', '1') - evas_deps += dependency('fontconfig') + evas_ext_deps += dependency('fontconfig') endif if (get_option('fribidi')) config_h.set('HAVE_FRIBIDI', '1') - evas_deps += dependency('fribidi') + evas_ext_deps += dependency('fribidi') endif if (get_option('pixman')) @@ -156,16 +155,16 @@ if (get_option('pixman')) foreach support : pixman_support config_h.set(support, '1') endforeach - evas_deps += dependency('pixman-1') + evas_ext_deps += dependency('pixman-1') endif if (get_option('hyphen')) config_h.set('HAVE_HYPHEN', '1') hyphen = dependency('hyphen', required : false) if hyphen.found() == false - evas_deps += cc.find_library('hyphen') + evas_ext_deps += cc.find_library('hyphen') endif - evas_deps += hyphen + evas_ext_deps += hyphen config_h.set_quoted('EVAS_DICTS_HYPHEN_DIR', get_option('dictionaries-hyphen-dir')) endif @@ -181,12 +180,12 @@ subdir('vg') gl_deps = [] if get_option('harfbuzz') - evas_deps += dependency('harfbuzz') + evas_ext_deps += dependency('harfbuzz') config_h.set('HAVE_HARFBUZZ', '1') endif if get_option('wl') - evas_deps += wayland_protocol + evas_ext_deps += wayland_protocol endif @@ -201,7 +200,7 @@ if get_option('opengl') != 'none' endif evas_link = [ ] -evas_pub_deps = [eina, ecore, ector, emile] +evas_pub_deps = [eina, ecore, ector, emile, buildsystem] #FIXME buildsystem here is wrong, but needed in this commit if cpu_sse3 == true or cpu_neon == true and cpu_neon_intrinsics == false evas_opt = static_library('evas_opt', @@ -211,7 +210,7 @@ if cpu_sse3 == true or cpu_neon == true and cpu_neon_intrinsics == false evas_include_directories + [vg_common_inc_dir], c_args: native_arch_opt_c_args, - dependencies: [eina, eo, ector, emile, evas_deps, m], + dependencies: [eina, eo, ector, emile, evas_deps, evas_ext_deps], ) evas_link += [ evas_opt ] endif @@ -279,10 +278,16 @@ foreach loader : evas_vg_savers_file endif endforeach +evas_ext_deps += evas_static_list + +evas_ext_deps += declare_dependency( + link_with: evas_link, +) + evas_lib = library('evas', include_directories: evas_include_directories + [vg_common_inc_dir], sources : [evas_src, pub_eo_file_target, priv_eo_file_target], - dependencies: [evas_deps, m, draw, valgrind, libunibreak, evas_static_list], + dependencies: [evas_deps, evas_ext_deps], link_with: evas_link, install: true, c_args : package_c_args, @@ -292,13 +297,13 @@ evas_lib = library('evas', evas = declare_dependency( link_with : [evas_lib], sources: pub_eo_file_target, - dependencies : [m] + evas_pub_deps + evas_deps, + dependencies : evas_pub_deps, include_directories: evas_include_directories + [vg_common_inc_dir] + [include_directories(join_paths('..', '..', 'modules', 'evas', 'engines', 'buffer'))], ) evas_bin = declare_dependency( link_with : [evas_lib], - dependencies : [eina, ecore, ector, emile, lua], + dependencies : [eina, ecore, ector, emile], include_directories : evas_include_directories ) diff --git a/src/lib/evas/software_generic/meson.build b/src/lib/evas/software_generic/meson.build index 187002a6af..8727feba32 100644 --- a/src/lib/evas/software_generic/meson.build +++ b/src/lib/evas/software_generic/meson.build @@ -33,4 +33,6 @@ foreach file : raw_evas_src evas_src += files(join_paths(rel_evas_modules, file)) endforeach +evas_include_directories += include_directories('.') + subdir('filters') diff --git a/src/lib/evil/meson.build b/src/lib/evil/meson.build index 823b724a91..deecb9e3cb 100644 --- a/src/lib/evil/meson.build +++ b/src/lib/evil/meson.build @@ -1,7 +1,10 @@ evil_deps = [] evil_pub_deps = [] +evil_ext_deps = [] +evil_src = [] + if target_machine.system() == 'windows' - evil_src = [ + evil_src += files([ 'evil_dlfcn.c', 'evil_fcntl.c', 'evil_langinfo.c', @@ -15,7 +18,7 @@ if target_machine.system() == 'windows' 'evil_unistd.c', 'evil_util.c', 'evil_private.h', - ] + ]) psapi = cc.find_library('psapi') ole32 = cc.find_library('ole32') @@ -23,9 +26,11 @@ if target_machine.system() == 'windows' secur32 = cc.find_library('secur32') uuid = cc.find_library('uuid') + evil_ext_deps += [psapi, ole32, ws2_32, secur32, uuid, regexp] + evil_lib = library('evil', evil_src, c_args : package_c_args, - dependencies : [psapi, ole32, ws2_32, secur32, uuid, regexp], + dependencies : evil_ext_deps, include_directories : [config_dir], install: true, version: meson.project_version(), diff --git a/src/modules/ecore_evas/engines/wayland/meson.build b/src/modules/ecore_evas/engines/wayland/meson.build index fbc27a396b..259d8bcdd8 100644 --- a/src/modules/ecore_evas/engines/wayland/meson.build +++ b/src/modules/ecore_evas/engines/wayland/meson.build @@ -11,7 +11,7 @@ engine_src = files([ 'ecore_evas_wayland_private.h' ]) -engine_deps = [ecore_wl2, ecore_input] +engine_deps = [ecore_wl2, ecore_input] + ecore_wl2_ext_deps engine_include_dir += include_directories(join_paths('..', '..', '..', 'evas', 'engines', 'wayland_common')) diff --git a/src/modules/ecore_imf/meson.build b/src/modules/ecore_imf/meson.build index 72154d521d..72ab44ff51 100644 --- a/src/modules/ecore_imf/meson.build +++ b/src/modules/ecore_imf/meson.build @@ -8,7 +8,6 @@ if get_option('wl') mods += ['wayland'] endif - loader_disabler = get_option('ecore-imf-loaders-disabler') foreach mod_name : mods diff --git a/src/modules/evas/engines/buffer/meson.build b/src/modules/evas/engines/buffer/meson.build index 23aef86b9a..4a6f31fe3a 100644 --- a/src/modules/evas/engines/buffer/meson.build +++ b/src/modules/evas/engines/buffer/meson.build @@ -5,18 +5,18 @@ engine_src = files([ 'evas_outbuf.c' ]) -engine_deps = [] - evas_include_directories += include_directories('.') install_headers('Evas_Engine_Buffer.h', install_dir : join_paths(dir_include, 'evas-'+version_major), ) +engine_deps += [eet] + evas_engine_buffer_mod = shared_module(mod_full_name, engine_src, c_args : package_c_args, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/drm/meson.build b/src/modules/evas/engines/drm/meson.build index fb97b631de..a75732a1b1 100644 --- a/src/modules/evas/engines/drm/meson.build +++ b/src/modules/evas/engines/drm/meson.build @@ -5,11 +5,11 @@ engine_src = files([ 'evas_outbuf.c' ]) -engine_deps = [ecore_drm2, libdrm] +engine_deps += [ecore_drm2, libdrm] shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/fb/meson.build b/src/modules/evas/engines/fb/meson.build index 625edd5d33..29f3b76dd5 100644 --- a/src/modules/evas/engines/fb/meson.build +++ b/src/modules/evas/engines/fb/meson.build @@ -7,11 +7,11 @@ engine_src = files([ 'evas_fb_main.c', ]) -engine_deps = [ecore_fb] +engine_deps += [ecore_fb] shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/gl_cocoa/meson.build b/src/modules/evas/engines/gl_cocoa/meson.build index a0bd765c9b..2fc5bb9b2c 100644 --- a/src/modules/evas/engines/gl_cocoa/meson.build +++ b/src/modules/evas/engines/gl_cocoa/meson.build @@ -5,11 +5,11 @@ engine_src = files([ 'evas_outbuf.m', ]) -engine_deps = [ecore_cocoa, gl_deps] +engine_deps += [ecore_cocoa, gl_deps] shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/gl_drm/meson.build b/src/modules/evas/engines/gl_drm/meson.build index 8acf82365d..b21c00edb5 100644 --- a/src/modules/evas/engines/gl_drm/meson.build +++ b/src/modules/evas/engines/gl_drm/meson.build @@ -5,11 +5,11 @@ engine_src = files([ 'evas_outbuf.c', ]) -engine_deps = [ecore_drm2, libdrm, gl_deps, dependency('gbm')] +engine_deps += [ecore_drm2, libdrm, gl_deps, dependency('gbm')] shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/gl_generic/meson.build b/src/modules/evas/engines/gl_generic/meson.build index 68163b5711..3a00883b8a 100644 --- a/src/modules/evas/engines/gl_generic/meson.build +++ b/src/modules/evas/engines/gl_generic/meson.build @@ -62,13 +62,13 @@ foreach eo_file : pub_eo_files '-gchd', '@INPUT@']) endforeach -engine_deps = [gl_deps] +engine_deps += [gl_deps] engine_include_dir = include_directories(join_paths('..','software_generic'), join_paths('..', 'gl_common')) shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/gl_x11/meson.build b/src/modules/evas/engines/gl_x11/meson.build index 0bac84147e..fd39ba29e8 100644 --- a/src/modules/evas/engines/gl_x11/meson.build +++ b/src/modules/evas/engines/gl_x11/meson.build @@ -5,11 +5,11 @@ engine_src = files([ 'evas_x_main.c', ]) -engine_deps = [ecore_x_deps, gl_deps] +engine_deps += [ecore_x_ext_deps, gl_deps] shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/meson.build b/src/modules/evas/engines/meson.build index 2504a761a9..1efdbbddc8 100644 --- a/src/modules/evas/engines/meson.build +++ b/src/modules/evas/engines/meson.build @@ -46,7 +46,7 @@ foreach engine_conf : engines if build engine_include_dir = [] engine_src = [] - engine_deps = [] + engine_deps = [eina, evas, evas_ext_deps] engine_dep = declare_dependency( include_directories: include_directories(engine), ) diff --git a/src/modules/evas/engines/software_ddraw/meson.build b/src/modules/evas/engines/software_ddraw/meson.build index 1b58f71a04..b15acfd3ad 100644 --- a/src/modules/evas/engines/software_ddraw/meson.build +++ b/src/modules/evas/engines/software_ddraw/meson.build @@ -5,13 +5,13 @@ engine_src = files([ 'evas_ddraw_main.cpp', ]) -engine_deps = [cc.find_library('ddraw')] +engine_deps += [cc.find_library('ddraw')] shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], c_args : package_c_args, cpp_args: ['-fno-rtti', '-fno-exceptions'], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/software_gdi/meson.build b/src/modules/evas/engines/software_gdi/meson.build index 50bbb546ed..549094913f 100644 --- a/src/modules/evas/engines/software_gdi/meson.build +++ b/src/modules/evas/engines/software_gdi/meson.build @@ -5,12 +5,12 @@ engine_src = files([ 'evas_gdi_main.c', ]) -engine_deps = [cc.find_library('gdi32')] +engine_deps += [cc.find_library('gdi32')] shared_module(mod_full_name, engine_src, c_args : package_c_args, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/software_x11/meson.build b/src/modules/evas/engines/software_x11/meson.build index c2f8f544e8..6ddaeee37b 100644 --- a/src/modules/evas/engines/software_x11/meson.build +++ b/src/modules/evas/engines/software_x11/meson.build @@ -26,11 +26,11 @@ config_h.set('BUILD_ENGINE_SOFTWARE_XLIB', '1') #ecore_x_deps carries all the extensions etc. so we dont have to search them twice #it looks weird but is right, gl_deps is needed for evas_x_egl.c -engine_deps = [x11, ecore_x, ecore_x_deps, gl_deps] +engine_deps += [x11, ecore_x, ecore_x_deps, gl_deps] shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/wayland_egl/meson.build b/src/modules/evas/engines/wayland_egl/meson.build index af7314627b..caeab5e0e3 100644 --- a/src/modules/evas/engines/wayland_egl/meson.build +++ b/src/modules/evas/engines/wayland_egl/meson.build @@ -4,13 +4,13 @@ engine_src = files([ 'evas_wl_main.c' ]) -engine_deps = [ecore_wl2, dependency('wayland-egl'), gl_deps] +engine_deps += [ecore_wl2, dependency('wayland-egl'), gl_deps] engine_include_dir = include_directories(join_paths('..','wayland_common')) shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/engines/wayland_shm/meson.build b/src/modules/evas/engines/wayland_shm/meson.build index 2a181cea48..c5bbd6062c 100644 --- a/src/modules/evas/engines/wayland_shm/meson.build +++ b/src/modules/evas/engines/wayland_shm/meson.build @@ -4,13 +4,13 @@ engine_src = files([ 'evas_outbuf.c' ]) -engine_deps = [ecore_wl2] +engine_deps += [ecore_wl2] engine_include_dir = include_directories(join_paths('..','wayland_common')) shared_module(mod_full_name, engine_src, include_directories : config_dir + [engine_include_dir], - dependencies : [eina, evas] + engine_deps, + dependencies : engine_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/image_loaders/meson.build b/src/modules/evas/image_loaders/meson.build index 999cb865a4..963245ecfe 100644 --- a/src/modules/evas/image_loaders/meson.build +++ b/src/modules/evas/image_loaders/meson.build @@ -11,7 +11,7 @@ foreach loader_inst : evas_image_loaders_file shared_module('shared_loader_'+loader, file, c_args : package_c_args, include_directories : config_dir, - dependencies : [eina, evas] + loader_deps, + dependencies : [eina, evas, evas_ext_deps] + loader_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/modules/evas/image_savers/meson.build b/src/modules/evas/image_savers/meson.build index 7ba39aa287..7a5ebcb3b3 100644 --- a/src/modules/evas/image_savers/meson.build +++ b/src/modules/evas/image_savers/meson.build @@ -11,7 +11,7 @@ foreach loader_inst : evas_image_savers_file shared_module('shared_saver_'+loader, file, c_args : package_c_args, include_directories : config_dir, - dependencies : [eina, evas] + loader_deps, + dependencies : [eina, evas, eet, evas_ext_deps] + loader_deps, install : true, install_dir : mod_install_dir, name_suffix : sys_mod_extension diff --git a/src/static_libs/buildsystem/meson.build b/src/static_libs/buildsystem/meson.build index 61e7f1e37e..dd3b1f6dab 100644 --- a/src/static_libs/buildsystem/meson.build +++ b/src/static_libs/buildsystem/meson.build @@ -18,3 +18,7 @@ buildsystem = declare_dependency( link_with: buildsystem_lib, dependencies: [eina], ) + +buildsystem_simple = declare_dependency( + include_directories: [include_directories('.'), include_directories(join_paths('..', '..', 'lib'))], +) diff --git a/src/static_libs/draw/meson.build b/src/static_libs/draw/meson.build index 0e7dce9cdd..f9fbc96a83 100644 --- a/src/static_libs/draw/meson.build +++ b/src/static_libs/draw/meson.build @@ -27,3 +27,14 @@ draw = declare_dependency( sources : draw_src, link_with : draw_opt_lib ) + +draw_without_deps = declare_dependency( + include_directories: [include_directories('.'), include_directories(join_paths('..', '..', 'lib'))], + dependencies: [rg_etc_simple], + sources : draw_src, + link_with : draw_opt_lib +) + +draw_simple = declare_dependency( + include_directories: [include_directories('.'), include_directories(join_paths('..', '..', 'lib'))], +) diff --git a/src/static_libs/rg_etc/meson.build b/src/static_libs/rg_etc/meson.build index cd093daba9..84a037ed20 100644 --- a/src/static_libs/rg_etc/meson.build +++ b/src/static_libs/rg_etc/meson.build @@ -9,3 +9,7 @@ rg_etc = declare_dependency( include_directories: include_directories('.'), sources : rg_etc_src ) + +rg_etc_simple = declare_dependency( + include_directories: include_directories('.'), +) diff --git a/src/tests/elementary/meson.build b/src/tests/elementary/meson.build index 1b43da7064..273ee418dc 100644 --- a/src/tests/elementary/meson.build +++ b/src/tests/elementary/meson.build @@ -108,7 +108,7 @@ elementary_suite_src = [ elementary_suite = executable('elementary_suite', elementary_suite_src, - dependencies: [check, eina, elementary, elementary_deps], + dependencies: [check, eina, elementary, elementary_deps, intl], include_directories : [config_dir] + [elementary_config_dir], c_args : [ '-DTESTS_BUILD_DIR="'+meson.current_build_dir()+'"', @@ -172,7 +172,7 @@ efl_ui_suite_src = [ efl_ui_suite = executable('efl_ui_suite', efl_ui_suite_src, priv_eo_file_target, - dependencies: [check, eina, elementary, elementary_deps], + dependencies: [check, eina, elementary, elementary_deps, intl], include_directories : [config_dir] + [elementary_config_dir], c_args : [ '-DTESTS_BUILD_DIR="'+meson.current_build_dir()+'"', diff --git a/src/tests/evas/meson.build b/src/tests/evas/meson.build index fee57d91dd..b76d4572b3 100644 --- a/src/tests/evas/meson.build +++ b/src/tests/evas/meson.build @@ -25,7 +25,7 @@ evas_suite_src = [ evas_suite = executable('evas_suite', evas_suite_src, - dependencies: [evas_bin, evas, ecore_evas, dl, check], + dependencies: [evas_bin, evas, ecore_evas, dl, check, evas_ext_deps], #external deps needed here since tests do include internal headers include_directories: include_directories(join_paths('..', '..', 'modules', 'evas', 'engines', 'buffer')), c_args : [ '-DTESTS_BUILD_DIR="'+meson.current_build_dir()+'"', diff --git a/src/wayland_protocol/meson.build b/src/wayland_protocol/meson.build index 5301adbe71..f08e84b31c 100644 --- a/src/wayland_protocol/meson.build +++ b/src/wayland_protocol/meson.build @@ -66,3 +66,8 @@ wayland_protocol = declare_dependency( sources: gen_obj_header, dependencies : [wayland_client] ) + +wayland_protocol_simple = declare_dependency( + include_directories: include_directories('.'), + sources: gen_obj_header, +)