summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Hollerbach <mail@marcel-hollerbach.de>2019-11-29 16:30:40 +0100
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2019-11-29 16:30:40 +0100
commitb1f28e9361c88b01f2cd80397ebcde61ed682a87 (patch)
treea715ea185e2ce68ab48884b906447279834d5292
parent6dfb9bc445051ae09f9ed443220aa807614782b2 (diff)
downloadefl-b1f28e9361c88b01f2cd80397ebcde61ed682a87.tar.gz
WIP make efl-eins a thing
with this commit you can finally build efl with only ONE big single .so. Everything is packed into libefl-eins.so. You dont need to set anything specific, everything will be build by default
-rw-r--r--efl-eins/meson.build5
-rw-r--r--meson.build31
-rw-r--r--src/modules/evas/engines/buffer/meson.build2
-rw-r--r--src/modules/evas/engines/drm/meson.build2
-rw-r--r--src/modules/evas/engines/fb/meson.build2
-rw-r--r--src/modules/evas/engines/gl_cocoa/meson.build2
-rw-r--r--src/modules/evas/engines/gl_drm/meson.build2
-rw-r--r--src/modules/evas/engines/gl_generic/meson.build2
-rw-r--r--src/modules/evas/engines/gl_x11/meson.build2
-rw-r--r--src/modules/evas/engines/meson.build2
-rw-r--r--src/modules/evas/engines/software_ddraw/meson.build2
-rw-r--r--src/modules/evas/engines/software_gdi/meson.build2
-rw-r--r--src/modules/evas/engines/software_x11/meson.build2
-rw-r--r--src/modules/evas/engines/wayland_egl/meson.build2
-rw-r--r--src/modules/evas/engines/wayland_shm/meson.build2
-rw-r--r--src/modules/evas/image_loaders/meson.build4
-rw-r--r--src/modules/evas/image_savers/meson.build4
17 files changed, 46 insertions, 24 deletions
diff --git a/efl-eins/meson.build b/efl-eins/meson.build
index 5e7fb793f7..21abaa936d 100644
--- a/efl-eins/meson.build
+++ b/efl-eins/meson.build
@@ -11,14 +11,15 @@ foreach package : subprojects
package_name = package[0]
if package[1].length() == 0 or get_option(package[1][0])
if (package[3])
- selected_overall_efl_deps += get_variable(package_name)
+ selected_overall_efl_deps += get_variable(package_name + '_deps')
endif
endif
endforeach
efl_eins = declare_dependency(
- include_directories: config_dir,
+ include_directories: overall_efl_include_directories + config_dir,
dependencies : selected_overall_efl_deps,
+ link_with : efl_eins_lib,
version: version_major + '.' + version_minor + '.' + version_micro,
)
diff --git a/meson.build b/meson.build
index ef7a41855c..f83da6f36d 100644
--- a/meson.build
+++ b/meson.build
@@ -316,6 +316,10 @@ ecore_audio = declare_dependency()
test_dirs = []
example_dirs = []
+module_dirs = []
+bin_dirs = []
+benchmark_dirs = []
+
tmp_empty = declare_dependency()
overall_efl_source = []
overall_efl_deps = []
@@ -370,19 +374,23 @@ foreach package : subprojects
overall_efl_deps += get_variable(package_name)
overall_efl_deps += get_variable(package_name+'_deps')
overall_efl_pub_deps += get_variable(package_name+'_pub_deps')
-
+ overall_efl_include_directories += include_directories(join_paths('src', 'lib', package_name))
foreach sub : package_header_subdirs
overall_efl_include_directories += include_directories(join_paths('src', 'lib', package_name, sub))
endforeach
endif
if (package[2])
- subdir(join_paths(local_module, package_name))
+ module_dirs += package_name
endif
if (package[4])
- subdir(join_paths(local_bin, package_name))
+ if (package_name == 'eolian')
+ subdir(join_paths(local_bin, package_name))
+ else
+ bin_dirs += package_name
+ endif
endif
if (package[5])
- subdir(join_paths(local_benchmark, package_name))
+ benchmark_dirs += package_name
endif
if (package[6])
test_dirs += [package_name]
@@ -428,6 +436,20 @@ foreach package : subprojects
endforeach
+subdir(join_paths('efl-eins'))
+
+foreach module : module_dirs
+ subdir(join_paths(local_module, module))
+endforeach
+
+foreach binn : bin_dirs
+ subdir(join_paths(local_bin, binn))
+endforeach
+
+foreach benchmark : benchmark_dirs
+ subdir(join_paths(local_benchmark, benchmark))
+endforeach
+
#build this later, as the debug services are depending on ecore
subdir(join_paths('src', 'bin', 'efl'))
@@ -505,7 +527,6 @@ configure_file(
subdir(join_paths('systemd-services'))
subdir(join_paths('dbus-services'))
-subdir(join_paths('efl-eins'))
#output the three new efl-* .pc files
efl_20_pc_files = [
diff --git a/src/modules/evas/engines/buffer/meson.build b/src/modules/evas/engines/buffer/meson.build
index 8c6a071e77..414ebfd39f 100644
--- a/src/modules/evas/engines/buffer/meson.build
+++ b/src/modules/evas/engines/buffer/meson.build
@@ -15,7 +15,7 @@ install_headers('Evas_Engine_Buffer.h',
evas_engine_buffer_mod = shared_module(mod_full_name, engine_src,
include_directories : config_dir + [engine_include_dir],
- dependencies : [eina, evas] + engine_deps,
+ dependencies : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/drm/meson.build b/src/modules/evas/engines/drm/meson.build
index fb97b631de..1eeda15b2f 100644
--- a/src/modules/evas/engines/drm/meson.build
+++ b/src/modules/evas/engines/drm/meson.build
@@ -9,7 +9,7 @@ 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 : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/fb/meson.build b/src/modules/evas/engines/fb/meson.build
index 625edd5d33..499e8c3328 100644
--- a/src/modules/evas/engines/fb/meson.build
+++ b/src/modules/evas/engines/fb/meson.build
@@ -11,7 +11,7 @@ engine_deps = [ecore_fb]
shared_module(mod_full_name, engine_src,
include_directories : config_dir + [engine_include_dir],
- dependencies : [eina, evas] + engine_deps,
+ dependencies : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/gl_cocoa/meson.build b/src/modules/evas/engines/gl_cocoa/meson.build
index a0bd765c9b..af313d349f 100644
--- a/src/modules/evas/engines/gl_cocoa/meson.build
+++ b/src/modules/evas/engines/gl_cocoa/meson.build
@@ -9,7 +9,7 @@ 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 : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/gl_drm/meson.build b/src/modules/evas/engines/gl_drm/meson.build
index 8acf82365d..ee6aada40a 100644
--- a/src/modules/evas/engines/gl_drm/meson.build
+++ b/src/modules/evas/engines/gl_drm/meson.build
@@ -9,7 +9,7 @@ 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 : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/gl_generic/meson.build b/src/modules/evas/engines/gl_generic/meson.build
index 6f7e9dc259..2100f81836 100644
--- a/src/modules/evas/engines/gl_generic/meson.build
+++ b/src/modules/evas/engines/gl_generic/meson.build
@@ -73,7 +73,7 @@ engine_include_dir = include_directories(join_paths('..','software_generic'), jo
shared_module(mod_full_name, engine_src,
include_directories : config_dir + [engine_include_dir],
- dependencies : [eina, evas] + engine_deps,
+ dependencies : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/gl_x11/meson.build b/src/modules/evas/engines/gl_x11/meson.build
index 0bac84147e..dd08ff844b 100644
--- a/src/modules/evas/engines/gl_x11/meson.build
+++ b/src/modules/evas/engines/gl_x11/meson.build
@@ -9,7 +9,7 @@ engine_deps = [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 : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/meson.build b/src/modules/evas/engines/meson.build
index 2504a761a9..57f242ff3b 100644
--- a/src/modules/evas/engines/meson.build
+++ b/src/modules/evas/engines/meson.build
@@ -44,7 +44,7 @@ foreach engine_conf : engines
build = get_option(engine_conf[1][0])
endif
if build
- engine_include_dir = []
+ engine_include_dir = [evas_include_directories]
engine_src = []
engine_deps = []
engine_dep = declare_dependency(
diff --git a/src/modules/evas/engines/software_ddraw/meson.build b/src/modules/evas/engines/software_ddraw/meson.build
index 9b742757fa..1c37505209 100644
--- a/src/modules/evas/engines/software_ddraw/meson.build
+++ b/src/modules/evas/engines/software_ddraw/meson.build
@@ -10,7 +10,7 @@ engine_deps = [cc.find_library('ddraw')]
shared_module(mod_full_name, engine_src,
include_directories : config_dir + [engine_include_dir],
cpp_args: ['-fno-rtti', '-fno-exceptions'],
- dependencies : [eina, evas] + engine_deps,
+ dependencies : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/software_gdi/meson.build b/src/modules/evas/engines/software_gdi/meson.build
index ef7a0aa690..b97f4a89e5 100644
--- a/src/modules/evas/engines/software_gdi/meson.build
+++ b/src/modules/evas/engines/software_gdi/meson.build
@@ -9,7 +9,7 @@ engine_deps = [cc.find_library('gdi32')]
shared_module(mod_full_name, engine_src,
include_directories : config_dir + [engine_include_dir],
- dependencies : [eina, evas] + engine_deps,
+ dependencies : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/software_x11/meson.build b/src/modules/evas/engines/software_x11/meson.build
index c2f8f544e8..ad2c8b21fc 100644
--- a/src/modules/evas/engines/software_x11/meson.build
+++ b/src/modules/evas/engines/software_x11/meson.build
@@ -30,7 +30,7 @@ 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 : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/wayland_egl/meson.build b/src/modules/evas/engines/wayland_egl/meson.build
index af7314627b..e2a4ce5c75 100644
--- a/src/modules/evas/engines/wayland_egl/meson.build
+++ b/src/modules/evas/engines/wayland_egl/meson.build
@@ -10,7 +10,7 @@ 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 : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/engines/wayland_shm/meson.build b/src/modules/evas/engines/wayland_shm/meson.build
index 2a181cea48..4f26d372ed 100644
--- a/src/modules/evas/engines/wayland_shm/meson.build
+++ b/src/modules/evas/engines/wayland_shm/meson.build
@@ -10,7 +10,7 @@ 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 : [eina, evas, evas_deps] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/image_loaders/meson.build b/src/modules/evas/image_loaders/meson.build
index 7a339b44c5..133041b826 100644
--- a/src/modules/evas/image_loaders/meson.build
+++ b/src/modules/evas/image_loaders/meson.build
@@ -9,8 +9,8 @@ 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,
- include_directories : config_dir,
- dependencies : [eina, evas] + loader_deps,
+ include_directories : config_dir + evas_include_directories,
+ dependencies : [eina, evas_deps, evas] + loader_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
diff --git a/src/modules/evas/image_savers/meson.build b/src/modules/evas/image_savers/meson.build
index 6e1e346d06..9d3ff2944c 100644
--- a/src/modules/evas/image_savers/meson.build
+++ b/src/modules/evas/image_savers/meson.build
@@ -9,8 +9,8 @@ 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,
- include_directories : config_dir,
- dependencies : [eina, evas] + loader_deps,
+ include_directories : config_dir + evas_include_directories,
+ dependencies : [eina, evas_deps, evas] + loader_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension