From 3ade45cbc82bea1772c7ad1afb7e1ba5dd67d930 Mon Sep 17 00:00:00 2001 From: Vincent Torri Date: Mon, 18 May 2020 09:48:17 +0100 Subject: [PATCH] Fix EAPI definition by defining EFL_BUILD for each built DLL Summary: EAPI must be defined to dllexport when building DLL, and to dllimport when using these DLL. To achieve this, define EFL_BUILD for each library and module, and set DLL_EXPORT unconditionally. Static library are and will be not supported Test Plan: compilation Reviewers: zmike, raster, jptiz Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D11834 --- meson.build | 3 +-- src/benchmarks/eina/meson.build | 2 +- src/benchmarks/elementary/meson.build | 1 + src/edje_external/elementary/meson.build | 2 +- src/edje_external/emotion/meson.build | 2 +- src/lib/ecore/meson.build | 4 +++- src/lib/ecore_audio/meson.build | 3 +++ src/lib/ecore_con/meson.build | 4 +++- src/lib/ecore_evas/meson.build | 2 ++ src/lib/ecore_file/meson.build | 2 ++ src/lib/ecore_imf/meson.build | 3 ++- src/lib/ecore_imf_evas/meson.build | 4 +++- src/lib/ecore_input/meson.build | 2 ++ src/lib/ecore_input_evas/ecore_input_evas.c | 4 ++-- src/lib/ecore_input_evas/meson.build | 2 ++ src/lib/ecore_ipc/meson.build | 3 +++ src/lib/ecore_sdl/meson.build | 4 +++- src/lib/ecore_win32/meson.build | 4 +++- src/lib/ector/meson.build | 3 +++ src/lib/edje/meson.build | 4 +++- src/lib/eet/meson.build | 3 +++ src/lib/efl/meson.build | 3 +++ src/lib/efreet/meson.build | 8 +++++--- src/lib/eina/meson.build | 3 +++ src/lib/eio/meson.build | 4 +++- src/lib/eldbus/meson.build | 3 +++ src/lib/elementary/Efl_Ui.h | 7 ------- src/lib/elementary/meson.build | 6 ++---- src/lib/elua/Elua.h | 16 ++++++++-------- src/lib/elua/cache.c | 4 ++-- src/lib/elua/io.c | 4 ++-- src/lib/elua/meson.build | 4 +++- src/lib/embryo/embryo_main.c | 2 ++ src/lib/embryo/embryo_private.h | 2 -- src/lib/embryo/embryo_str.c | 2 ++ src/lib/embryo/meson.build | 4 +++- src/lib/emile/meson.build | 3 +++ src/lib/emotion/meson.build | 6 +++--- src/lib/eo/meson.build | 7 ++++++- src/lib/eolian/meson.build | 4 +++- src/lib/ephysics/meson.build | 4 +++- src/lib/ethumb/meson.build | 4 +++- src/lib/ethumb_client/meson.build | 4 +++- src/lib/evas/meson.build | 5 ++++- src/lib/evil/meson.build | 3 +++ src/modules/ecore_evas/engines/extn/meson.build | 3 +++ src/modules/ecore_evas/engines/sdl/meson.build | 3 +++ src/modules/ecore_evas/engines/win32/meson.build | 3 +++ src/modules/elementary/access_output/meson.build | 3 +++ src/modules/elementary/prefs/meson.build | 3 +++ src/modules/elementary/test_entry/meson.build | 3 +++ src/modules/elementary/test_map/meson.build | 3 +++ src/modules/emotion/gstreamer1/meson.build | 4 +++- src/modules/ethumb/emotion/meson.build | 4 +++- src/modules/evas/engines/buffer/meson.build | 3 +++ .../evas/engines/software_ddraw/meson.build | 6 +++++- .../evas/engines/software_gdi/meson.build | 3 +++ src/modules/evas/image_loaders/meson.build | 1 + src/modules/evas/image_savers/meson.build | 1 + 59 files changed, 159 insertions(+), 57 deletions(-) diff --git a/meson.build b/meson.build index b55855920c..b36e9010c5 100644 --- a/meson.build +++ b/meson.build @@ -96,7 +96,7 @@ foreach lang : ['c', 'objc', 'cpp'] add_global_arguments('-D_GNU_SOURCE=1', language: lang) add_global_arguments('-DEFL_BETA_API_SUPPORT=1', language: lang) add_global_arguments('-DNEED_RUN_IN_TREE=1', language: lang) - add_global_arguments('-DEFL_BUILD=1', language: lang) + add_global_arguments('-DDLL_EXPORT=1', language: lang) add_global_arguments('-DELM_INTERNAL_API_ARGESFSDFEFC=1', language: lang) if sys_windows == true add_global_arguments('-D_POSIX_C_SOURCE=200809L', language: lang) @@ -239,7 +239,6 @@ if sys_exe_extension == '' else config_h.set_quoted('EXE_SUFFIX', '.'+sys_exe_extension) endif -config_h.set('EFL_BUILD', '1') if get_option('tslib') == true config_h.set('HAVE_TSLIB', '1') diff --git a/src/benchmarks/eina/meson.build b/src/benchmarks/eina/meson.build index 9b924dd1b9..2c3d40013e 100644 --- a/src/benchmarks/eina/meson.build +++ b/src/benchmarks/eina/meson.build @@ -31,7 +31,7 @@ city = shared_library('city', eina_bench = executable('eina_bench', sources : eina_bench_src, dependencies : eina, - c_args : ['-fPIC','-DCITYHASH_BENCH', '-DEINA_ENABLE_BENCH_E17'], + c_args: ['-fPIC','-DCITYHASH_BENCH', '-DEINA_ENABLE_BENCH_E17', '-DEFL_BUILD'], include_directories : config_dir, link_with : city, ) diff --git a/src/benchmarks/elementary/meson.build b/src/benchmarks/elementary/meson.build index 8cb1b99057..d174a93433 100644 --- a/src/benchmarks/elementary/meson.build +++ b/src/benchmarks/elementary/meson.build @@ -10,6 +10,7 @@ benchmark('focus_widget_tree', focus_widget_tree_bench, item_container = executable('collection', 'collection.c', + c_args: ['-DEFL_BUILD'], dependencies: [elementary, ecore_input_evas, eio], ) diff --git a/src/edje_external/elementary/meson.build b/src/edje_external/elementary/meson.build index 033b54eab8..3c716331c1 100644 --- a/src/edje_external/elementary/meson.build +++ b/src/edje_external/elementary/meson.build @@ -45,7 +45,7 @@ ecore_systemd_mod = shared_module('elementary', dependencies: [edje, elementary, elementary_deps], install: true, install_dir: mod_install_dir, - c_args : elm_package_c_args, + c_args : package_c_args, name_suffix : sys_mod_extension ) module_files += join_paths(mod_install_dir, 'libelementary.' + sys_mod_extension) diff --git a/src/edje_external/emotion/meson.build b/src/edje_external/emotion/meson.build index 5d869d8b7a..6e3a6836b6 100644 --- a/src/edje_external/emotion/meson.build +++ b/src/edje_external/emotion/meson.build @@ -3,7 +3,7 @@ ecore_systemd_mod = shared_module('emotion', dependencies: [edje, emotion], install: true, install_dir: mod_install_dir, - c_args : emotion_package_c_args, + c_args : package_c_args, name_suffix : sys_mod_extension ) module_files += join_paths(mod_install_dir, 'libemotion.' + sys_mod_extension) diff --git a/src/lib/ecore/meson.build b/src/lib/ecore/meson.build index 637761dcc4..3c7bb8834f 100644 --- a/src/lib/ecore/meson.build +++ b/src/lib/ecore/meson.build @@ -192,12 +192,14 @@ if get_option('g-mainloop') == true endif endif +ecore_c_args = package_c_args + [ '-DEFL_BUILD' ] + ecore_lib = library('ecore', ecore_src, pub_eo_file_target, + c_args : ecore_c_args, dependencies: ecore_pub_deps + [m, buildsystem, ecore_deps], include_directories : config_dir + [include_directories(join_paths('..','..'))], install: true, - c_args : package_c_args, version : meson.project_version() ) diff --git a/src/lib/ecore_audio/meson.build b/src/lib/ecore_audio/meson.build index c03eb3e663..d3b0b12e8d 100644 --- a/src/lib/ecore_audio/meson.build +++ b/src/lib/ecore_audio/meson.build @@ -77,8 +77,11 @@ if sys_windows == true ecore_audio_deps += [cc.find_library('ksuser', required: true), cc.find_library('winmm', required: true)] endif +ecore_audio_c_args = [ '-DEFL_BUILD' ] + ecore_audio_lib = library('ecore_audio', ecore_audio_src, pub_eo_file_target, + c_args : ecore_audio_c_args, dependencies: ecore_audio_pub_deps + [m] + ecore_audio_deps, include_directories : config_dir, install: true, diff --git a/src/lib/ecore_con/meson.build b/src/lib/ecore_con/meson.build index 44faa486af..bd6562e0b2 100644 --- a/src/lib/ecore_con/meson.build +++ b/src/lib/ecore_con/meson.build @@ -182,12 +182,14 @@ endif ecore_con_deps += crypto +ecore_con_c_args = package_c_args + [ '-DEFL_BUILD' ] + ecore_con_lib = library('ecore_con', ecore_con_src, pub_eo_file_target, dependencies: [ecore, ecore_con_deps, http_parser, eldbus, eet, buildsystem, dl], include_directories : config_dir, install: true, - c_args : package_c_args, + c_args : ecore_con_c_args, version : meson.project_version() ) diff --git a/src/lib/ecore_evas/meson.build b/src/lib/ecore_evas/meson.build index 890e3c42b3..7d2018ca32 100644 --- a/src/lib/ecore_evas/meson.build +++ b/src/lib/ecore_evas/meson.build @@ -27,9 +27,11 @@ ecore_evas_src = [ 'ecore_evas_fallback_selection.c' ] +ecore_evas_c_args = [ '-DEFL_BUILD' ] ecore_evas_lib = library('ecore_evas', ecore_evas_src, pub_eo_file_target, + c_args: ecore_evas_c_args, dependencies: [ecore_evas_deps, buildsystem], include_directories : config_dir, install: true, diff --git a/src/lib/ecore_file/meson.build b/src/lib/ecore_file/meson.build index 727c3d372c..8cf9b23e57 100644 --- a/src/lib/ecore_file/meson.build +++ b/src/lib/ecore_file/meson.build @@ -19,9 +19,11 @@ endif ecore_file_header_src = ['Ecore_File.h'] +ecore_file_c_args = [ '-DEFL_BUILD' ] ecore_file_lib = library('ecore_file', ecore_file_src, + c_args : ecore_file_c_args, dependencies: ecore_file_deps + ecore_file_pub_deps + ecore_file_deps, include_directories : config_dir + [include_directories(join_paths('..','..'))], install: true, diff --git a/src/lib/ecore_imf/meson.build b/src/lib/ecore_imf/meson.build index 978594d20a..1dd94241e4 100644 --- a/src/lib/ecore_imf/meson.build +++ b/src/lib/ecore_imf/meson.build @@ -12,12 +12,13 @@ ecore_imf_src = [ 'ecore_imf_private.h', ] +ecore_imf_c_args = package_c_args + [ '-DEFL_BUILD' ] ecore_imf_lib = library('ecore_imf', ecore_imf_src, pub_eo_file_target, dependencies: [buildsystem, ecore_imf_deps, ecore_imf_pub_deps], include_directories : config_dir, - c_args : package_c_args, + c_args : ecore_imf_c_args, install: true, version : meson.project_version() ) diff --git a/src/lib/ecore_imf_evas/meson.build b/src/lib/ecore_imf_evas/meson.build index 28d53ea78d..5245a8871f 100644 --- a/src/lib/ecore_imf_evas/meson.build +++ b/src/lib/ecore_imf_evas/meson.build @@ -9,12 +9,14 @@ ecore_imf_evas_src = [ ecore_imf_evas_deps = [ecore_imf, evas] ecore_imf_evas_pub_deps = [eina, eo, efl] +ecore_imf_evas_c_args = package_c_args + [ '-DEFL_BUILD' ] + ecore_imf_evas_lib = library('ecore_imf_evas', ecore_imf_evas_src, dependencies: ecore_imf_evas_pub_deps + [m] + ecore_imf_evas_deps, include_directories : config_dir + [include_directories('.')], install: true, - c_args : package_c_args, + c_args : ecore_imf_evas_c_args, version : meson.project_version() ) diff --git a/src/lib/ecore_input/meson.build b/src/lib/ecore_input/meson.build index c57ec4e04c..745d5b5d83 100644 --- a/src/lib/ecore_input/meson.build +++ b/src/lib/ecore_input/meson.build @@ -17,9 +17,11 @@ if get_option('eeze') ecore_input_deps += eeze endif +ecore_input_c_args = [ '-DEFL_BUILD' ] ecore_input_lib = library('ecore_input', ecore_input_src, pub_eo_file_target, + c_args: ecore_input_c_args, dependencies: ecore_input_pub_deps + ecore_input_deps, include_directories : config_dir, install: true, diff --git a/src/lib/ecore_input_evas/ecore_input_evas.c b/src/lib/ecore_input_evas/ecore_input_evas.c index 8f26737778..ea07300e7a 100644 --- a/src/lib/ecore_input_evas/ecore_input_evas.c +++ b/src/lib/ecore_input_evas/ecore_input_evas.c @@ -7,8 +7,8 @@ #include #include -#include "Ecore.h" -#include "Ecore_Input.h" +#include +#include #include "Ecore_Input_Evas.h" #include "ecore_input_evas_private.h" diff --git a/src/lib/ecore_input_evas/meson.build b/src/lib/ecore_input_evas/meson.build index 8b48142f7d..5deb298796 100644 --- a/src/lib/ecore_input_evas/meson.build +++ b/src/lib/ecore_input_evas/meson.build @@ -11,9 +11,11 @@ ecore_input_evas_src = [ 'ecore_input_evas_private.h', ] +ecore_input_evas_c_args = [ '-DEFL_BUILD' ] ecore_input_evas_lib = library('ecore_input_evas', ecore_input_evas_src, pub_eo_file_target, + c_args : ecore_input_evas_c_args, dependencies: ecore_input_evas_pub_deps + ecore_input_evas_deps, include_directories : config_dir, install: true, diff --git a/src/lib/ecore_ipc/meson.build b/src/lib/ecore_ipc/meson.build index dbc95b0531..c7fa2480c5 100644 --- a/src/lib/ecore_ipc/meson.build +++ b/src/lib/ecore_ipc/meson.build @@ -10,8 +10,11 @@ ecore_ipc_src = [ 'ecore_ipc_private.h', ] +ecore_ipc_c_args = [ '-DEFL_BUILD' ] + ecore_ipc_lib = library('ecore_ipc', ecore_ipc_src, pub_eo_file_target, + c_args : ecore_ipc_c_args, dependencies: ecore_ipc_deps + ecore_ipc_pub_deps, include_directories : config_dir, install: true, diff --git a/src/lib/ecore_sdl/meson.build b/src/lib/ecore_sdl/meson.build index b4685818c1..9aa9bbdbd5 100644 --- a/src/lib/ecore_sdl/meson.build +++ b/src/lib/ecore_sdl/meson.build @@ -12,12 +12,14 @@ ecore_sdl_header_src = [ ecore_sdl_deps += dependency('sdl2') +ecore_sdl_c_args = package_c_args + [ '-DEFL_BUILD' ] + ecore_sdl_lib = library('ecore_sdl', ecore_sdl_src, dependencies: [m] + ecore_sdl_deps + ecore_sdl_pub_deps, include_directories : config_dir + [include_directories(join_paths('..','..'))], install: true, - c_args : package_c_args, + c_args : ecore_sdl_c_args, ) ecore_sdl = declare_dependency( diff --git a/src/lib/ecore_win32/meson.build b/src/lib/ecore_win32/meson.build index 1bb4589f28..48867e6a43 100644 --- a/src/lib/ecore_win32/meson.build +++ b/src/lib/ecore_win32/meson.build @@ -20,12 +20,14 @@ if sys_windows == true 'Ecore_Win32.h' ] + ecore_win32_c_args = package_c_args + [ '-DEFL_BUILD' ] + ecore_win32_lib = library('ecore_win32', ecore_win32_src, dependencies: ecore_win32_deps + ecore_win32_pub_deps, include_directories : config_dir, install: true, - c_args : package_c_args, + c_args : ecore_win32_c_args, ) ecore_win32 = declare_dependency( diff --git a/src/lib/ector/meson.build b/src/lib/ector/meson.build index 49fc5a477f..3dac471178 100644 --- a/src/lib/ector/meson.build +++ b/src/lib/ector/meson.build @@ -80,8 +80,11 @@ endforeach subdir('software') +ector_c_args = [ '-DEFL_BUILD' ] + ector_lib = library('ector', ector_src, pub_eo_file_target, + c_args : ector_c_args, dependencies: ector_pub_deps + [triangulator, freetype, draw, m] + ector_deps, include_directories : config_dir, install: true, diff --git a/src/lib/edje/meson.build b/src/lib/edje/meson.build index 84b8ac7318..c2a9cf9578 100644 --- a/src/lib/edje/meson.build +++ b/src/lib/edje/meson.build @@ -144,12 +144,14 @@ edje_src = [ ] +edje_c_args = package_c_args + [ '-DEFL_BUILD' ] + edje_lib = library('edje', edje_src, pub_eo_file_target, priv_eo_file_target, dependencies: edje_pub_deps + edje_deps, include_directories : config_dir + [include_directories('.')], install: true, - c_args : [package_c_args], + c_args : edje_c_args, version : meson.project_version() ) diff --git a/src/lib/eet/meson.build b/src/lib/eet/meson.build index 8ebdb48dd6..edc879405d 100644 --- a/src/lib/eet/meson.build +++ b/src/lib/eet/meson.build @@ -18,8 +18,11 @@ eet_src = [ 'eet_utils.c', ] +eet_c_args = [ '-DEFL_BUILD' ] + eet_lib = library('eet', eet_src, pub_eo_file_target, + c_args : eet_c_args, dependencies: eet_deps + eet_pub_deps, include_directories : config_dir, install: true, diff --git a/src/lib/efl/meson.build b/src/lib/efl/meson.build index d5805be9b3..152dfb0e3c 100644 --- a/src/lib/efl/meson.build +++ b/src/lib/efl/meson.build @@ -11,8 +11,11 @@ efl_src = [] subdir('interfaces') package_header_subdirs += 'interfaces' +efl_c_args = [ '-DEFL_BUILD' ] + efl_lib = library('efl', efl_src, pub_eo_file_target, + c_args : efl_c_args, dependencies: [eina, eo, m], install: true, version : meson.project_version() diff --git a/src/lib/efreet/meson.build b/src/lib/efreet/meson.build index f438b02845..bc3f8f8d28 100644 --- a/src/lib/efreet/meson.build +++ b/src/lib/efreet/meson.build @@ -31,12 +31,14 @@ efreet_src = [ efreet_deps = [eet, ecore, ecore_con, ecore_file, eo, efl, eina, emile, ecore_ipc, buildsystem,intl] efreet_pub_deps = [eina, eo, efl] +efreet_c_args = package_c_args + [ '-DEFL_BUILD' ] + efreet_lib = library('efreet', efreet_src, dependencies: efreet_pub_deps + [m] + efreet_deps, include_directories : config_dir + [include_directories('.')], install: true, - c_args : [package_c_args, '-DDATA_DIR="'+dir_data+'"'], + c_args : [efreet_c_args, '-DDATA_DIR="'+dir_data+'"'], version : meson.project_version() ) @@ -51,7 +53,7 @@ efreet_mime_lib = library('efreet_mime', dependencies: efreet_pub_deps + [m, efreet, efreet_deps], include_directories : config_dir + [include_directories('.')], install: true, - c_args : package_c_args, + c_args : efreet_c_args, version : meson.project_version() ) @@ -67,7 +69,7 @@ efreet_trash_lib = library('efreet_trash', dependencies: efreet_pub_deps + [efreet, efreet_deps], include_directories : config_dir + [include_directories('.')], install: true, - c_args : package_c_args, + c_args : efreet_c_args, version : meson.project_version() ) diff --git a/src/lib/eina/meson.build b/src/lib/eina/meson.build index ce7cfe84f1..c8dbe3904a 100644 --- a/src/lib/eina/meson.build +++ b/src/lib/eina/meson.build @@ -361,7 +361,10 @@ endif execinfo = cc.find_library('execinfo', required: false) +eina_c_args = [ '-DEFL_BUILD' ] + eina_lib = library('eina', sources, + c_args : eina_c_args, include_directories : config_dir, dependencies: [m, rt, dl, execinfo, iconv, eina_deps, thread_dep, eina_mem_pools, evil], install: true, diff --git a/src/lib/eio/meson.build b/src/lib/eio/meson.build index f95a1e652c..9d35187c13 100644 --- a/src/lib/eio/meson.build +++ b/src/lib/eio/meson.build @@ -66,12 +66,14 @@ endif eio_deps = [ecore, ecore_file, eet, eo, eina, efl, emile, efreet_mime] eio_pub_deps = [eina, eet] +eio_c_args = package_c_args + [ '-DEFL_BUILD' ] + eio_lib = library('eio', eio_src, pub_eo_file_target, dependencies: [eina, eo, efl, m, eio_deps], include_directories : config_dir + [include_directories('.')], install: true, - c_args : package_c_args, + c_args : eio_c_args, link_args : linker_args, version : meson.project_version() ) diff --git a/src/lib/eldbus/meson.build b/src/lib/eldbus/meson.build index 054273acf8..de30aca5d7 100644 --- a/src/lib/eldbus/meson.build +++ b/src/lib/eldbus/meson.build @@ -94,8 +94,11 @@ eldbus_src = [ eldbus_deps += dependency('dbus-1') +eldbus_c_args = [ '-DEFL_BUILD' ] + eldbus_lib = library('eldbus', eldbus_src, pub_eo_file_target, + c_args : eldbus_c_args, dependencies: eldbus_pub_deps + eldbus_deps, include_directories : config_dir, install: true, diff --git a/src/lib/elementary/Efl_Ui.h b/src/lib/elementary/Efl_Ui.h index ffc5fd43c5..e2d0cf6abe 100644 --- a/src/lib/elementary/Efl_Ui.h +++ b/src/lib/elementary/Efl_Ui.h @@ -40,13 +40,6 @@ #include #endif -#ifdef ELM_WIN32 -#include -#ifndef alloca -#define alloca _alloca -#endif -#endif - #ifdef _WIN32 # define WIN32_LEAN_AND_MEAN # include diff --git a/src/lib/elementary/meson.build b/src/lib/elementary/meson.build index 29e7dfc3df..bdbc2e6ca8 100644 --- a/src/lib/elementary/meson.build +++ b/src/lib/elementary/meson.build @@ -962,8 +962,6 @@ config_h.set_quoted('ICON_DIR', join_paths(dir_lib, 'icons')) if sys_windows == false elm_options.set('ELM_UNIX', '1') -else - elm_options.set('DLL_EXPORT', '1') endif elm_options.set('ELM_EFREET', '1') @@ -1010,14 +1008,14 @@ c = configure_file( install_dir : dir_package_include, configuration: elm_options) -elm_package_c_args = package_c_args + ['-DELEMENTARY_BUILD=1'] +elm_c_args = package_c_args + ['-DEFL_BUILD=1'] 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], install: true, - c_args : elm_package_c_args, + c_args : elm_c_args, version : meson.project_version() ) diff --git a/src/lib/elua/Elua.h b/src/lib/elua/Elua.h index 289f9112d7..cf93d65e53 100644 --- a/src/lib/elua/Elua.h +++ b/src/lib/elua/Elua.h @@ -18,6 +18,14 @@ #ifndef _ELUA_H #define _ELUA_H +#ifdef EFL_BETA_API_SUPPORT + +#include + +#include +#include +#include + #ifdef EAPI # undef EAPI #endif @@ -92,14 +100,6 @@ extern "C" { * @{ */ -#ifdef EFL_BETA_API_SUPPORT - -#include - -#include -#include -#include - /** Opaque Elua state * * @ingroup Elua diff --git a/src/lib/elua/cache.c b/src/lib/elua/cache.c index b18d690569..c731b0495a 100644 --- a/src/lib/elua/cache.c +++ b/src/lib/elua/cache.c @@ -1,10 +1,10 @@ -#include "elua_private.h" - #include #include #include #include +#include "elua_private.h" + /* bytecode caching */ static Eina_File * diff --git a/src/lib/elua/io.c b/src/lib/elua/io.c index 77ac3df94c..142f61b716 100644 --- a/src/lib/elua/io.c +++ b/src/lib/elua/io.c @@ -1,9 +1,9 @@ -#include "elua_private.h" - #ifdef _WIN32 # include /* realpath */ #endif +#include "elua_private.h" + /* expand fname to full path name (so that PATH is ignored) plus turn * stuff into a command, and also verify whether the path exists */ static char * diff --git a/src/lib/elua/meson.build b/src/lib/elua/meson.build index 227d211584..df1acc082a 100644 --- a/src/lib/elua/meson.build +++ b/src/lib/elua/meson.build @@ -4,12 +4,14 @@ elua_pub_deps = [lua] elua_src = ['elua.c', 'io.c', 'cache.c'] elua_header_src = ['Elua.h'] +elua_c_args = package_c_args + [ '-DEFL_BUILD' ] + elua_lib = library('elua', elua_src, + c_args : elua_c_args, dependencies: [m, dl] + elua_deps + elua_pub_deps, include_directories : config_dir + [include_directories(join_paths('..','..'))], install: true, - c_args : package_c_args, version : meson.project_version() ) diff --git a/src/lib/embryo/embryo_main.c b/src/lib/embryo/embryo_main.c index 852b1903f2..452a272787 100644 --- a/src/lib/embryo/embryo_main.c +++ b/src/lib/embryo/embryo_main.c @@ -6,6 +6,8 @@ #include #include +#include + #include "Embryo.h" #include "embryo_private.h" diff --git a/src/lib/embryo/embryo_private.h b/src/lib/embryo/embryo_private.h index 4bf8ceb2c6..e63351b2c7 100644 --- a/src/lib/embryo/embryo_private.h +++ b/src/lib/embryo/embryo_private.h @@ -1,8 +1,6 @@ #ifndef _EMBRYO_PRIVATE_H #define _EMBRYO_PRIVATE_H -#include - typedef enum _Embryo_Opcode Embryo_Opcode; enum _Embryo_Opcode diff --git a/src/lib/embryo/embryo_str.c b/src/lib/embryo/embryo_str.c index d7da4e0dd3..6fafa83db0 100644 --- a/src/lib/embryo/embryo_str.c +++ b/src/lib/embryo/embryo_str.c @@ -16,6 +16,8 @@ #include #include +#include + #include "Embryo.h" #include "embryo_private.h" diff --git a/src/lib/embryo/meson.build b/src/lib/embryo/meson.build index 6ab8af8fe7..21193698c0 100644 --- a/src/lib/embryo/meson.build +++ b/src/lib/embryo/meson.build @@ -19,12 +19,14 @@ embryo_src = [ embryo_deps = [eina, m] +embryo_c_args = package_c_args + [ '-DEFL_BUILD' ] + embryo_lib = library('embryo', embryo_src, + c_args : embryo_c_args, dependencies: [m, buildsystem] + embryo_deps, include_directories : config_dir + [include_directories(join_paths('..','..'))], install: true, - c_args : package_c_args, version : meson.project_version() ) diff --git a/src/lib/emile/meson.build b/src/lib/emile/meson.build index 4ae888c42a..e894dd20ac 100644 --- a/src/lib/emile/meson.build +++ b/src/lib/emile/meson.build @@ -23,8 +23,11 @@ elif (get_option('crypto') == 'openssl') emile_src += 'emile_cipher_openssl.c' endif +emile_c_args = [ '-DEFL_BUILD' ] + emile_lib = library('emile', emile_src, + c_args : emile_c_args, include_directories: config_dir, dependencies: emile_pub_deps + emile_deps + [lz4, rg_etc, m], install: true, diff --git a/src/lib/emotion/meson.build b/src/lib/emotion/meson.build index 6f2717dfa6..0dd07f845c 100644 --- a/src/lib/emotion/meson.build +++ b/src/lib/emotion/meson.build @@ -44,17 +44,17 @@ if get_option('eeze') == true emotion_deps += [eeze] endif +emotion_c_args = package_c_args + [ '-DEFL_BUILD' ] + emotion_lib = library('emotion', emotion_src, pub_eo_file_target, priv_eo_file_target, dependencies: emotion_deps + emotion_pub_deps, include_directories : config_dir + [include_directories('.')], install: true, - c_args : package_c_args, + c_args : emotion_c_args, version : meson.project_version() ) -emotion_package_c_args = package_c_args - emotion = declare_dependency( include_directories: [include_directories('.')], link_with: emotion_lib, diff --git a/src/lib/eo/meson.build b/src/lib/eo/meson.build index 83eedb0de7..8e7b3b8bc2 100644 --- a/src/lib/eo/meson.build +++ b/src/lib/eo/meson.build @@ -58,18 +58,23 @@ endforeach eolian_include_directories += ['-I', meson.current_source_dir()] +eo_c_args = [ '-DEFL_BUILD' ] + eo_lib = library('eo', eo_src, pub_eo_file_target, + c_args : eo_c_args, dependencies: [eina, valgrind, dl, execinfo], install: true, version : meson.project_version() ) +eo_db_c_args = eo_c_args + [ '-DEO_DEBUG' ] + eo_lib_dbg = library('eo_dbg', eo_src, pub_eo_file_target, + c_args : eo_c_args, dependencies: [eina, valgrind, dl, execinfo], install: true, - c_args : '-DEO_DEBUG', version : meson.project_version() ) diff --git a/src/lib/eolian/meson.build b/src/lib/eolian/meson.build index 083d5cdaa5..cdc5af7d9e 100644 --- a/src/lib/eolian/meson.build +++ b/src/lib/eolian/meson.build @@ -35,11 +35,13 @@ eolian_src = [ 'eolian_aux.c' ] +eolian_c_args = package_c_args + [ '-DEFL_BUILD' ] + eolian_lib = library('eolian', eolian_src, include_directories: config_dir, dependencies: eina, install: true, - c_args : package_c_args, + c_args : eolian_c_args, version : meson.project_version() ) diff --git a/src/lib/ephysics/meson.build b/src/lib/ephysics/meson.build index ad1a168ae5..158afa73e3 100644 --- a/src/lib/ephysics/meson.build +++ b/src/lib/ephysics/meson.build @@ -20,12 +20,14 @@ ephysics_src = [ 'ephysics_world.cpp' ] +ephysics_c_args = package_c_args + [ '-DEFL_BUILD' ] + ephysics_lib = library('ephysics', ephysics_src, dependencies: ephysics_pub_deps + [m] + ephysics_deps, include_directories : config_dir + [include_directories('.')], install: true, - c_args : package_c_args, + c_args : ephysics_c_args, version : meson.project_version() ) diff --git a/src/lib/ethumb/meson.build b/src/lib/ethumb/meson.build index ffc62e91e5..0495a53f3c 100644 --- a/src/lib/ethumb/meson.build +++ b/src/lib/ethumb/meson.build @@ -12,12 +12,14 @@ ethumb_src = [ ethumb_deps = [eet, evas, ecore, ecore_evas, ecore_file, ecore_imf, edje, emile] ethumb_pub_deps = [eina, eo, efl] +ethumb_c_args = package_c_args + [ '-DEFL_BUILD' ] + ethumb_lib = library('ethumb', ethumb_src, dependencies: ethumb_pub_deps + [m] + ethumb_deps, include_directories : config_dir + [include_directories('.')], install: true, - c_args : package_c_args, + c_args : ethumb_c_args, version : meson.project_version() ) diff --git a/src/lib/ethumb_client/meson.build b/src/lib/ethumb_client/meson.build index bddbab1d8d..e05f0f4ba2 100644 --- a/src/lib/ethumb_client/meson.build +++ b/src/lib/ethumb_client/meson.build @@ -13,12 +13,14 @@ ethumb_client_deps = [ ethumb_client_pub_deps = [eina, eo, efl, ethumb] +ethumb_client_c_args = package_c_args + [ '-DEFL_BUILD' ] + ethumb_client_lib = library('ethumb_client', ethumb_client_src, dependencies: ethumb_client_pub_deps + ethumb_client_deps, include_directories : config_dir + [include_directories('.')], install: true, - c_args : package_c_args, + c_args : ethumb_client_c_args, version : meson.project_version() ) diff --git a/src/lib/evas/meson.build b/src/lib/evas/meson.build index a83a5e73e0..61387dce7d 100644 --- a/src/lib/evas/meson.build +++ b/src/lib/evas/meson.build @@ -279,13 +279,16 @@ foreach loader : evas_vg_savers_file endif endforeach +evas_c_args = [ '-DPACKAGE_DATA_DIR="'+join_paths(dir_data, 'evas')+'"' ] +evas_c_args += [ '-DEFL_BUILD' ] + 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], link_with: evas_link, install: true, - c_args : '-DPACKAGE_DATA_DIR="'+join_paths(dir_data, 'evas')+'"', + c_args : evas_c_args, version : meson.project_version() ) diff --git a/src/lib/evil/meson.build b/src/lib/evil/meson.build index 4769e58054..87a7d4c8e4 100644 --- a/src/lib/evil/meson.build +++ b/src/lib/evil/meson.build @@ -23,7 +23,10 @@ if target_machine.system() == 'windows' secur32 = cc.find_library('secur32') uuid = cc.find_library('uuid') + evil_c_args = [ '-DEFL_BUILD' ] + evil_lib = library('evil', evil_src, + c_args : evil_c_args, dependencies : [psapi, ole32, ws2_32, secur32, uuid, regexp], include_directories : [config_dir], install: true, diff --git a/src/modules/ecore_evas/engines/extn/meson.build b/src/modules/ecore_evas/engines/extn/meson.build index 901a126f52..27ab19a2e7 100644 --- a/src/modules/ecore_evas/engines/extn/meson.build +++ b/src/modules/ecore_evas/engines/extn/meson.build @@ -1,7 +1,10 @@ engine_src = files(['ecore_evas_extn.c', 'ecore_evas_extn_buf.c', 'ecore_evas_extn_engine.h']) engine_deps = [ecore_input, ecore_ipc] +ecore_evas_mod_extn_c_args = [ '-DEFL_BUILD' ] + shared_module(mod_full_name, engine_src, + c_args : ecore_evas_mod_extn_c_args, include_directories : config_dir + [engine_include_dir], dependencies : [eina, ecore_evas, ecore_input_evas, rt] + engine_deps, install : true, diff --git a/src/modules/ecore_evas/engines/sdl/meson.build b/src/modules/ecore_evas/engines/sdl/meson.build index 94b990df92..6d741a7bdb 100644 --- a/src/modules/ecore_evas/engines/sdl/meson.build +++ b/src/modules/ecore_evas/engines/sdl/meson.build @@ -1,7 +1,10 @@ engine_src = files(['ecore_evas_sdl.c']) engine_deps = [ecore_sdl, ecore_input, ecore, dependency('sdl2')] +ecore_evas_mod_sdl_c_args = [ '-DEFL_BUILD' ] + shared_module(mod_full_name, engine_src, + c_args : ecore_evas_mod_sdl_c_args, include_directories : config_dir + [engine_include_dir], dependencies : [eina, ecore_evas, ecore_input_evas] + engine_deps, install : true, diff --git a/src/modules/ecore_evas/engines/win32/meson.build b/src/modules/ecore_evas/engines/win32/meson.build index 65fbfc1bb1..4f0889317b 100644 --- a/src/modules/ecore_evas/engines/win32/meson.build +++ b/src/modules/ecore_evas/engines/win32/meson.build @@ -5,7 +5,10 @@ config_h.set('BUILD_ECORE_EVAS_SOFTWARE_GDI', '1') engine_deps = [engine_software_ddraw, engine_software_gdi] +ecore_evas_mod_win32_c_args = [ '-DEFL_BUILD' ] + shared_module(mod_full_name, engine_src, + c_args : ecore_evas_mod_win32_c_args, include_directories : config_dir + [engine_include_dir], dependencies : [eina, ecore_win32, ecore_input, ecore_evas, ecore_input_evas] + engine_deps, install : true, diff --git a/src/modules/elementary/access_output/meson.build b/src/modules/elementary/access_output/meson.build index f949d07671..3ae23ac0ee 100644 --- a/src/modules/elementary/access_output/meson.build +++ b/src/modules/elementary/access_output/meson.build @@ -2,8 +2,11 @@ src = files([ 'mod.c', ]) +elm_mod_access_output_c_args = [ '-DEFL_BUILD' ] + shared_module(mod, src, + c_args : elm_mod_access_output_c_args, dependencies: [elementary], install: true, install_dir : mod_install_dir, diff --git a/src/modules/elementary/prefs/meson.build b/src/modules/elementary/prefs/meson.build index f36adf2965..92574e19aa 100644 --- a/src/modules/elementary/prefs/meson.build +++ b/src/modules/elementary/prefs/meson.build @@ -16,8 +16,11 @@ src = files([ 'elm_horizontal_frame.c' ]) +elm_mod_prefs_c_args = [ '-DEFL_BUILD' ] + shared_module(mod, src, + c_args : elm_mod_prefs_c_args, dependencies: [elementary], install: true, install_dir : mod_install_dir, diff --git a/src/modules/elementary/test_entry/meson.build b/src/modules/elementary/test_entry/meson.build index f949d07671..e7823d11f8 100644 --- a/src/modules/elementary/test_entry/meson.build +++ b/src/modules/elementary/test_entry/meson.build @@ -2,8 +2,11 @@ src = files([ 'mod.c', ]) +elm_mod_test_entry_c_args = [ '-DEFL_BUILD' ] + shared_module(mod, src, + c_args : elm_mod_test_entry_c_args, dependencies: [elementary], install: true, install_dir : mod_install_dir, diff --git a/src/modules/elementary/test_map/meson.build b/src/modules/elementary/test_map/meson.build index f949d07671..fbc67aa379 100644 --- a/src/modules/elementary/test_map/meson.build +++ b/src/modules/elementary/test_map/meson.build @@ -2,8 +2,11 @@ src = files([ 'mod.c', ]) +elm_mod_test_map_c_args = [ '-DEFL_BUILD' ] + shared_module(mod, src, + c_args : elm_mod_test_map_c_args, dependencies: [elementary], install: true, install_dir : mod_install_dir, diff --git a/src/modules/emotion/gstreamer1/meson.build b/src/modules/emotion/gstreamer1/meson.build index 5d09a46b90..8a3989f6e5 100644 --- a/src/modules/emotion/gstreamer1/meson.build +++ b/src/modules/emotion/gstreamer1/meson.build @@ -15,12 +15,14 @@ generic_deps = [ dependency('gstreamer-pbutils-1.0'), ] +emotion_mod_gst_c_args = package_c_args + [ '-DEFL_BUILD' ] + shared_module(emotion_loader, generic_src, include_directories : config_dir, dependencies: [eina, evas, emotion, generic_deps], install: true, install_dir : mod_install_dir, - c_args : package_c_args, + c_args : emotion_mod_gst_c_args, name_suffix : sys_mod_extension ) diff --git a/src/modules/ethumb/emotion/meson.build b/src/modules/ethumb/emotion/meson.build index 610b9e9e7c..bc11eeb7a4 100644 --- a/src/modules/ethumb/emotion/meson.build +++ b/src/modules/ethumb/emotion/meson.build @@ -22,12 +22,14 @@ endforeach generic_src = [files(['emotion.c']) + themes] +ethumb_mod_emotion_c_args = package_c_args + [ '-DEFL_BUILD' ] + shared_module(emotion_loader+'_el', generic_src, include_directories : config_dir, dependencies: [ethumb, edje, eina, eo, eet, ecore_file, ecore, evas, ecore_evas, emotion], install: true, install_dir : mod_install_dir, - c_args : package_c_args, + c_args : ethumb_mod_emotion_c_args, name_suffix : sys_mod_extension ) diff --git a/src/modules/evas/engines/buffer/meson.build b/src/modules/evas/engines/buffer/meson.build index 8c6a071e77..369722f6f2 100644 --- a/src/modules/evas/engines/buffer/meson.build +++ b/src/modules/evas/engines/buffer/meson.build @@ -9,11 +9,14 @@ engine_deps = [] evas_include_directories += include_directories('.') +evas_mod_buffer_c_args = [ '-DEFL_BUILD' ] + install_headers('Evas_Engine_Buffer.h', install_dir : join_paths(dir_include, 'evas-'+version_major), ) evas_engine_buffer_mod = shared_module(mod_full_name, engine_src, + c_args : evas_mod_buffer_c_args, include_directories : config_dir + [engine_include_dir], dependencies : [eina, evas] + engine_deps, install : true, diff --git a/src/modules/evas/engines/software_ddraw/meson.build b/src/modules/evas/engines/software_ddraw/meson.build index 9b742757fa..8774908feb 100644 --- a/src/modules/evas/engines/software_ddraw/meson.build +++ b/src/modules/evas/engines/software_ddraw/meson.build @@ -7,9 +7,13 @@ engine_src = files([ engine_deps = [cc.find_library('ddraw')] +evas_mod_software_ddraw_c_args = [ '-DEFL_BUILD' ] +evas_mod_software_ddraw_cpp_args = ['-fno-rtti', '-fno-exceptions'] + shared_module(mod_full_name, engine_src, + c_args: evas_mod_software_ddraw_c_args, + cpp_args: evas_mod_software_ddraw_cpp_args, include_directories : config_dir + [engine_include_dir], - cpp_args: ['-fno-rtti', '-fno-exceptions'], dependencies : [eina, evas] + engine_deps, install : true, install_dir : mod_install_dir, diff --git a/src/modules/evas/engines/software_gdi/meson.build b/src/modules/evas/engines/software_gdi/meson.build index ef7a0aa690..f9ee04fd1c 100644 --- a/src/modules/evas/engines/software_gdi/meson.build +++ b/src/modules/evas/engines/software_gdi/meson.build @@ -7,7 +7,10 @@ engine_src = files([ engine_deps = [cc.find_library('gdi32')] +evas_mod_software_gdi_c_args = [ '-DEFL_BUILD' ] + shared_module(mod_full_name, engine_src, + c_args: evas_mod_software_gdi_c_args, include_directories : config_dir + [engine_include_dir], dependencies : [eina, evas] + engine_deps, install : true, diff --git a/src/modules/evas/image_loaders/meson.build b/src/modules/evas/image_loaders/meson.build index 7a339b44c5..39be8e3563 100644 --- a/src/modules/evas/image_loaders/meson.build +++ b/src/modules/evas/image_loaders/meson.build @@ -9,6 +9,7 @@ foreach loader_inst : evas_image_loaders_file evas_package_modules = join_paths(dir_lib, 'evas', 'modules') mod_install_dir = join_paths(evas_package_modules, 'image_loaders', loader, version_name) shared_module('shared_loader_'+loader, file, + c_args: [ '-DEFL_BUILD' ], include_directories : config_dir, dependencies : [eina, evas] + loader_deps, install : true, diff --git a/src/modules/evas/image_savers/meson.build b/src/modules/evas/image_savers/meson.build index 6e1e346d06..db23ec37d4 100644 --- a/src/modules/evas/image_savers/meson.build +++ b/src/modules/evas/image_savers/meson.build @@ -9,6 +9,7 @@ foreach loader_inst : evas_image_savers_file evas_package_modules = join_paths(dir_lib, 'evas', 'modules') mod_install_dir = join_paths(evas_package_modules, 'image_savers', loader, version_name) shared_module('shared_saver_'+loader, file, + c_args: [ '-DEFL_BUILD' ], include_directories : config_dir, dependencies : [eina, evas] + loader_deps, install : true,