refactor build
authorMarcel Hollerbach <mail@marcel-hollerbach.de>
Sun, 10 May 2020 12:41:57 +0000 (14:41 +0200)
committerJongmin Lee <jm105.lee@samsung.com>
Thu, 28 May 2020 10:04:41 +0000 (19:04 +0900)
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 <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D11806

Change-Id: Ib08b551dd830ac4d69dda029442ea0bced2af30e

71 files changed:
src/bin/ecore_buffer/meson.build
src/bin/edje/meson.build
src/bin/elementary/meson.build
src/bin/exactness/meson.build
src/examples/elementary/meson.build
src/lib/ecore/meson.build
src/lib/ecore_audio/meson.build
src/lib/ecore_buffer/meson.build
src/lib/ecore_cocoa/meson.build
src/lib/ecore_con/meson.build
src/lib/ecore_drm2/meson.build
src/lib/ecore_evas/meson.build
src/lib/ecore_fb/meson.build
src/lib/ecore_file/meson.build
src/lib/ecore_imf/meson.build
src/lib/ecore_imf_evas/meson.build
src/lib/ecore_input/meson.build
src/lib/ecore_input_evas/meson.build
src/lib/ecore_ipc/meson.build
src/lib/ecore_sdl/meson.build
src/lib/ecore_wayland/meson.build
src/lib/ecore_win32/meson.build
src/lib/ecore_wl2/meson.build
src/lib/ecore_x/meson.build
src/lib/ector/meson.build
src/lib/edje/meson.build
src/lib/eet/meson.build
src/lib/eeze/meson.build
src/lib/efl/meson.build
src/lib/efl_canvas_wl/meson.build
src/lib/efreet/meson.build
src/lib/eina/meson.build
src/lib/eio/meson.build
src/lib/eldbus/meson.build
src/lib/elementary/meson.build
src/lib/elput/meson.build
src/lib/embryo/meson.build
src/lib/emile/meson.build
src/lib/emotion/meson.build
src/lib/eo/meson.build
src/lib/ephysics/meson.build
src/lib/ethumb/meson.build
src/lib/ethumb_client/meson.build
src/lib/evas/meson.build
src/lib/evas/software_generic/meson.build
src/lib/evil/meson.build
src/modules/ecore_evas/engines/wayland/meson.build
src/modules/ecore_imf/meson.build
src/modules/evas/engines/buffer/meson.build
src/modules/evas/engines/drm/meson.build
src/modules/evas/engines/fb/meson.build
src/modules/evas/engines/gl_cocoa/meson.build
src/modules/evas/engines/gl_drm/meson.build
src/modules/evas/engines/gl_generic/meson.build
src/modules/evas/engines/gl_tbm/meson.build
src/modules/evas/engines/gl_x11/meson.build
src/modules/evas/engines/meson.build
src/modules/evas/engines/software_ddraw/meson.build
src/modules/evas/engines/software_gdi/meson.build
src/modules/evas/engines/software_tbm/meson.build
src/modules/evas/engines/software_x11/meson.build
src/modules/evas/engines/wayland_egl/meson.build
src/modules/evas/engines/wayland_shm/meson.build
src/modules/evas/image_loaders/meson.build
src/modules/evas/image_savers/meson.build
src/static_libs/buildsystem/meson.build
src/static_libs/draw/meson.build
src/static_libs/rg_etc/meson.build
src/tests/elementary/meson.build
src/tests/evas/meson.build
src/wayland_protocol/meson.build

index b7ee124..4b1a63f 100644 (file)
@@ -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'),
   pie:true, #TIZEN_ONLY
index 12c26c3..d795512 100644 (file)
@@ -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 = [
index ef5d3de..de731e5 100644 (file)
@@ -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+'"',
index 2f2b2bb..4d048f1 100644 (file)
@@ -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()
index 14a743c..7876285 100644 (file)
@@ -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 = [
index f59c778..8dc6bc3 100644 (file)
@@ -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',
@@ -99,7 +100,7 @@ ecore_header_src = [
   'efl_loop_timer_eo.legacy.h',
 ]
 
-ecore_src = [
+ecore_src = files([
   'efl_app.c',
   'ecore.c',
   'ecore_alloc.c',
@@ -170,24 +171,24 @@ ecore_src = [
   'efl_core_proc_env.c',
   'efl_core_command_line.c',
   'ecore_input_device.c',
-]
+])
 
 #<--TIZEN_ONLY
-ecore_src += [
+ecore_src += files([
   'ecore_device.c',
-]
+])
 #TIZEN_ONLY-->
 
 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
@@ -202,7 +203,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,
index ed4134a..4fc59a9 100644 (file)
@@ -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',
@@ -45,31 +46,31 @@ 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
@@ -85,16 +86,16 @@ if get_option('tizen')
 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()
index c4aa63f..1d05cbe 100644 (file)
@@ -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()
index e04ca0f..a44d6a4 100644 (file)
@@ -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()
 )
index 44faa48..bf28805 100644 (file)
@@ -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,
index 53ddc30..212dd36 100644 (file)
@@ -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()
index c673097..554c77c 100644 (file)
@@ -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],
index 28ad6bf..6d50e0f 100644 (file)
@@ -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,
index 9bbee46..9e0212d 100644 (file)
@@ -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()
index a2856ad..d60697b 100644 (file)
@@ -1,5 +1,6 @@
-ecore_imf_deps = [ecore]
+ecore_imf_deps = [ecore, buildsystem]
 ecore_imf_pub_deps = [eina]
+ecore_imf_ext_deps = [buildsystem_simple]
 
 # TIZEN_ONLY : Add to keep backward compat
 ecore_imf_pub_deps += ecore_input
@@ -8,17 +9,17 @@ 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,
index 28d53ea..b5d2d64 100644 (file)
@@ -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,
index d985eb5..d1250c3 100644 (file)
@@ -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()
index ee2516b..612a931 100644 (file)
@@ -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()
index e34caa3..6439148 100644 (file)
@@ -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()
index b468581..f3cd704 100644 (file)
@@ -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,
index fad65d3..e1741ca 100644 (file)
@@ -32,7 +32,7 @@ ecore_wayland_pub_deps += [
   dependency('libtdm-client'),
 ]
 ecore_wayland_lib = library('ecore_wayland',
-    ecore_wayland_src, wayland_protocol_header,
+    ecore_wayland_src,
     dependencies: [m] + ecore_wayland_deps + ecore_wayland_pub_deps,
     include_directories : config_dir + [include_directories(join_paths('..','..'))],
     install: true,
index 1bb4589..b105dba 100644 (file)
@@ -1,8 +1,14 @@
+ecore_win32_deps = []
+ecore_win32_pub_deps = []
+ecore_win32_ext_deps = []
+ecore_win32_src = []
+
 if sys_windows == true
-  ecore_win32_deps = [evil, eina, ecore, ecore_input]
-  ecore_win32_pub_deps = []
+  ecore_win32_deps += [evil, eina, ecore, ecore_input]
+  ecore_win32_pub_deps += []
+  ecore_win32_ext_deps += []
 
-  ecore_win32_src [
+  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,
index 48788ca..905c8b8 100644 (file)
@@ -1,15 +1,14 @@
-ecore_wl2_deps = [
-  dependency('wayland-client'), dependency('wayland-server'), dependency('xkbcommon'),
-  wayland_protocol, dl, m, ecore, ecore_input, libdrm, buildsystem,
-  #dependency('libdrm_exynos'), #dependency('libdrm_intel'),
-]
+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',
   'ecore_wl2_window.c',
@@ -20,10 +19,10 @@ ecore_wl2_src = [
   'ecore_wl2_private.h',
   'ecore_wl2_buffer.c',
   'ecore_wl2_surface.c'
-]
+])
 
 # <----- TIZEN_ONLY(20190109: introduce mesonbuild on tizen env
-ecore_wl2_deps += [
+ecore_wl2_ext_deps += [
   dependency('wayland-cursor'),
   dependency('tizen-extension-client'),
   dependency('tizen-launch-client'),
@@ -31,17 +30,17 @@ ecore_wl2_deps += [
   dependency('wayland-egl'),
   dependency('wayland-egl-tizen'),
 ]
-ecore_wl2_src += [
+ecore_wl2_src += files([
   'tizen-policy-ext-client-protocol.h',
   'tizen-policy-ext-protocol.c',
   'ecore_wl2_tbmsurface.c',
-]
+])
 # TIZEN_ONLY(20190109: introduce mesonbuild on tizen env ----->
 
 ecore_wl2_lib = library('ecore_wl2',
-    ecore_wl2_src, pub_eo_file_target, wayland_protocol_header,
+    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()
@@ -54,6 +53,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,
 )
index 51bdb2a..608d3cd 100644 (file)
@@ -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()
index 628c83f..0d044b5 100644 (file)
@@ -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(
index 84b8ac7..8332f95 100644 (file)
@@ -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],
index 2dec533..78b5146 100644 (file)
@@ -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()
index 313a73d..1435fe7 100644 (file)
@@ -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,
index 326e34e..5dbc825 100644 (file)
@@ -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()
 )
index d021975..63527c7 100644 (file)
@@ -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]
index 271eca0..41d3113 100644 (file)
@@ -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()
 )
 
index 9a5a1ea..19a1d0b 100644 (file)
@@ -1,6 +1,7 @@
 eina_deps = [dl]
 eina_deps += tracing_deps
 eina_pub_deps = [thread_dep]
+eina_ext_deps = [m, rt, dl, thread_dep]
 
 if sys_windows == true
    eina_pub_deps += [evil]
@@ -115,7 +116,7 @@ public_headers = [
   'Eina.h'
 ]
 
-sources = [
+eina_src = files([
 'eina_abi.c',
 'eina_accessor.c',
 'eina_array.c',
@@ -192,12 +193,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()
@@ -243,7 +244,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 = []
@@ -350,7 +351,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
 
@@ -359,19 +360,22 @@ 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]
 
 #TIZEN_ONLY(20190724): support tizen dlog logging system
 dlog = dependency('dlog', required:false)
 if (dlog.found())
   config_h.set('HAVE_DLOG', 1)
 endif
+eina_ext_deps += [dlog]
 
-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, dlog],
+  dependencies: eina_ext_deps + [eina_deps, evil],
   install: true,
   version : meson.project_version()
 )
index 64f33a2..a5536cd 100644 (file)
@@ -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,
index a58be32..ea3d693 100644 (file)
@@ -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()
index 671c728..5bf0a46 100644 (file)
@@ -1053,15 +1053,10 @@ endforeach
 elementary_src_tizen = elementary_src_tizen_tmp
 #TIZEN_ONLY-->
 
-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]
-
-
-#FIXME this dependancy looks weired
-if get_option('tizen')
-  elementary_pub_deps += [dl, thread_dep, ecore_wayland, ecore_wl2]
-endif
+elementary_ext_deps = [atspi, dl, intl]
 
 elm_options = configuration_data()
 
@@ -1096,6 +1091,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')
@@ -1123,8 +1122,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()
@@ -1137,7 +1136,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)
@@ -1155,8 +1153,8 @@ package_pc_variables = ['themes='+join_paths(dir_data, package_name, 'themes')]
 if get_option('tizen')
   elementary_tizen_lib = library('elementary_t',
       elementary_src_tizen, pub_eo_file_target, priv_eo_file_target, c,
-      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 : '1.24.100',
index bbfe85d..639840e 100644 (file)
@@ -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()
index 6ab8af8..e0bb238 100644 (file)
@@ -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,
index d8734cd..fb58228 100644 (file)
@@ -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()
 )
index e779a39..b289fb2 100644 (file)
@@ -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,
index 1360276..9cd3377 100644 (file)
@@ -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()
 )
index ad1a168..6233f58 100644 (file)
@@ -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,
index ffc62e9..fbe1436 100644 (file)
@@ -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,
index bddbab1..1326fee 100644 (file)
@@ -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,
index 12abccd..f52c753 100644 (file)
@@ -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 = []
@@ -136,27 +138,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'))
@@ -164,16 +163,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
 
@@ -189,12 +188,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
 
 
@@ -209,7 +208,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',
@@ -219,7 +218,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
@@ -287,10 +286,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,
@@ -300,13 +305,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
 )
 
index 187002a..8727feb 100644 (file)
@@ -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')
index 823b724..deecb9e 100644 (file)
@@ -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(),
index 756bc8d..96f1b8b 100644 (file)
@@ -12,7 +12,8 @@ engine_src = files([
   'ecore_evas_wayland_private.h'
   ])
 
-engine_deps = [ecore_wl2, ecore_input, dependency('libtdm-client')]
+ecore_wl2_ext_deps += [dependency('libtdm-client')]
+engine_deps = [ecore_wl2, ecore_input] + ecore_wl2_ext_deps
 engine_include_dir += include_directories(join_paths('..', '..', '..', 'evas', 'engines', 'wayland_common'))
 
 
index 72154d5..72ab44f 100644 (file)
@@ -8,7 +8,6 @@ if get_option('wl')
   mods += ['wayland']
 endif
 
-
 loader_disabler = get_option('ecore-imf-loaders-disabler')
 
 foreach mod_name : mods
index 23aef86..4a6f31f 100644 (file)
@@ -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
index fb97b63..a75732a 100644 (file)
@@ -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
index 625edd5..29f3b76 100644 (file)
@@ -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
index a0bd765..2fc5bb9 100644 (file)
@@ -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
index 8acf823..b21c00e 100644 (file)
@@ -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
index 5cc11b6..4c21b30 100644 (file)
@@ -78,13 +78,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,
   c_args: ['-DEVAS_GL_RENDER_THREAD_COMPILE_FOR_GL_GENERIC',],
index f0cfcd4..5d25481 100644 (file)
@@ -8,12 +8,12 @@ engine_header = [
     'Evas_Engine_GL_Tbm.h'
 ]
 
-engine_deps = [gl_deps, libtbm]
+engine_deps += [gl_deps, libtbm]
 engine_include_dir = include_directories(join_paths('..','software_generic'))
 
 shared_module(mod_full_name, engine_src + engine_header,
        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
index 0bac841..fd39ba2 100644 (file)
@@ -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
index 7456dc3..0c0f3ae 100644 (file)
@@ -58,7 +58,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),
     )
index 1b58f71..b15acfd 100644 (file)
@@ -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
index 50bbb54..5490949 100644 (file)
@@ -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
index d5cfcbc..68feb1e 100644 (file)
@@ -8,7 +8,7 @@ engine_header = [
   'Evas_Engine_Software_Tbm.h',
 ]
 
-engine_deps = []#ecore_drm2, libdrm, gl_deps, dependency('gbm')]
+engine_deps += []#ecore_drm2, libdrm, gl_deps, dependency('gbm')]
 engine_include_dir = include_directories(join_paths('..','software_generic'))
 
 shared_module(mod_full_name, engine_src + engine_header,
index c2f8f54..6ddaeee 100644 (file)
@@ -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
index 1d68058..eedf15b 100644 (file)
@@ -4,22 +4,14 @@ engine_src = files([
   'evas_wl_main.c'
 ])
 
-foreach src : gl_thread_engine_src
-  engine_src += files(join_paths('..','gl_common', src))
-endforeach
-
-engine_deps = [
-   ecore_wl2, gl_deps,
-   dependency('wayland-egl'),
-   dependency('wayland-client'),
-   dependency('wayland-egl-tizen'),
-]
+engine_deps += [ecore_wl2, dependency('wayland-egl'), gl_deps]
+engine_deps += [dependency('wayland-client'), dependency('wayland-egl-tizen')]
 
 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
index 2a181ce..c5bbd60 100644 (file)
@@ -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
index 999cb86..963245e 100644 (file)
@@ -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
index 7ba39aa..7a5ebcb 100644 (file)
@@ -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
index 61e7f1e..dd3b1f6 100644 (file)
@@ -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'))],
+)
index 0e7dce9..f9fbc96 100644 (file)
@@ -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'))],
+)
index cd093da..84a037e 100644 (file)
@@ -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('.'),
+)
index 1b43da7..273ee41 100644 (file)
@@ -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()+'"',
index fee57d9..b76d457 100644 (file)
@@ -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()+'"',
index d7bfd78..f08e84b 100644 (file)
@@ -59,7 +59,6 @@ endforeach
 wayland_protocol_lib = static_library('wayland_protocol',
     gen_obj_c + gen_obj_header,
 )
-wayland_protocol_header = gen_obj_header
 
 wayland_protocol = declare_dependency(
        include_directories: include_directories('.'),
@@ -67,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,
+)