forked from enlightenment/efl
meson: redo evas building
Summary: before recent times we had to support static and shared building based on the options of the user, which forced us to complicate our build with the evas_goal hack. the evas_goal hack more or less was the idea of "faking" the evas build in the evas directory, finish all the .eo generation there, then build the modules and make all the static files ready. Then build everything in evas_goal. Now, that we just build everything the same always, we can simply build it in the evas way (removing the evas_goal hack FINALLY), as the same modules are build statically and shared. This also gives us the possibility to build the shared image loaders *again* the the modules directory, which unbreaks peoples build scripts who packaged loader files seperatly. Reviewers: zmike, raster, cedric, stefan_schmidt Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D10548
This commit is contained in:
parent
795c37b2a4
commit
28f630ba41
10
meson.build
10
meson.build
|
@ -249,13 +249,6 @@ ecore_evas_wayland_engine_include_dir = []
|
|||
|
||||
evas_static_list = []
|
||||
|
||||
evas_lib = ['evas' ,[], false, true, false, false, true, true, ['eina', 'efl', 'eo'], ['vg_common', 'libunibreak']]
|
||||
evas_img_modules = ['evas' ,[], true, false, false, false, false, false, ['eina', 'efl', 'eo'], ['vg_common', 'libunibreak']]
|
||||
evas_engines = [join_paths('evas', 'engines'),[], true, false, false, false, false, false, [], []]
|
||||
evas_goal = ['evas_goal' ,[], false, true, false, false, false, false, ['eina', 'efl', 'eo'], []]
|
||||
|
||||
evas_settings = [ evas_lib, evas_img_modules, evas_goal, evas_engines ]
|
||||
|
||||
subprojects = [
|
||||
# name | option | mod | lib | bin | bench | tests | examples | pkg-config options | name of static libs
|
||||
['evil' ,[] , false, true, false, false, false, false, [], []],
|
||||
|
@ -284,7 +277,8 @@ subprojects = [
|
|||
['ector' ,[] , false, true, false, false, true, false, ['eina', 'efl'], ['draw', 'triangulator', 'freetype']],
|
||||
['elput' ,['drm'] , false, true, false, false, true, false, ['eina', 'eldbus'], []],
|
||||
['ecore_drm2' ,['drm'] , false, true, false, false, false, false, ['ecore'], ['libdrm']],
|
||||
['ecore_cocoa' ,['cocoa'] , false, true, false, false, false, false, ['eina'], []]] + evas_settings +[
|
||||
['ecore_cocoa' ,['cocoa'] , false, true, false, false, false, false, ['eina'], []],
|
||||
['evas' ,[] , true, true, false, false, true, true, ['eina', 'efl', 'eo'], ['vg_common', 'libunibreak']],
|
||||
['ecore_input_evas' ,[] , false, true, false, false, false, false, ['eina', 'evas'], []],
|
||||
['ecore_evas' ,[] , true, true, true, false, false, false, ['evas', 'ector'], []],
|
||||
['ecore_imf' ,[] , true, true, false, false, false, false, ['eina'], []],
|
||||
|
|
|
@ -598,28 +598,13 @@ evas_module_find_type(Evas_Module_Type type, const char *name)
|
|||
#endif
|
||||
{
|
||||
if (run_in_tree == 1)
|
||||
{
|
||||
// special cases due to compleixty of meson build and
|
||||
// putting these in odd places in the tree - do special
|
||||
// name lookups for build in tree module lookups
|
||||
if (type == EVAS_MODULE_TYPE_IMAGE_LOADER)
|
||||
{
|
||||
snprintf(buffer, sizeof(buffer),
|
||||
PACKAGE_BUILD_DIR"/src/lib/evas_goal/libshared_loader_%s"MOD_SUFFIX, name);
|
||||
}
|
||||
else if (type == EVAS_MODULE_TYPE_IMAGE_SAVER)
|
||||
{
|
||||
snprintf(buffer, sizeof(buffer),
|
||||
PACKAGE_BUILD_DIR"/src/lib/evas_goal/libshared_saver_%s"MOD_SUFFIX, name);
|
||||
}
|
||||
else
|
||||
{
|
||||
char subsystem[PATH_MAX];
|
||||
|
||||
snprintf(subsystem, sizeof(subsystem), "evas/%s", type_str);
|
||||
bs_mod_get(buffer, sizeof(buffer), subsystem, name);
|
||||
}
|
||||
if (!evas_file_path_exists(buffer)) buffer[0] = '\0';
|
||||
if (!evas_file_path_exists(buffer))
|
||||
buffer[0] = '\0';
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -1,16 +1,53 @@
|
|||
# README
|
||||
#
|
||||
# Evas build is a bit more complex.
|
||||
# the final shared library is build in src/lib/evas_goal/meson.build.
|
||||
#
|
||||
# The content of lib/evas is build as static_library as
|
||||
# are all the engines loaders and savers.
|
||||
#
|
||||
# All those stages are defining dependencies with theire source code
|
||||
# as 'source :', later everything is build as libevas.so.
|
||||
#
|
||||
# For now loaders and savers are ALWAYS build statically.
|
||||
#
|
||||
|
||||
png = dependency('libpng')
|
||||
tiff = dependency('libtiff-4', required: get_option('evas-loaders-disabler').contains('tiff') == false)
|
||||
giflib = cc.find_library('gif')
|
||||
webp = dependency('libwebp', required: get_option('evas-loaders-disabler').contains('webp') == false)
|
||||
|
||||
evas_image_loaders_file = [
|
||||
['bmp', 'shared', []],
|
||||
['eet', 'static', [eet]],
|
||||
['generic', 'shared', [rt]],
|
||||
['gif', 'shared', [giflib]],
|
||||
['ico', 'shared', []],
|
||||
['jpeg', 'static', [jpeg]],
|
||||
['pmaps', 'shared', []],
|
||||
['png', 'static', [png]],
|
||||
['psd', 'shared', []],
|
||||
['tga', 'shared', []],
|
||||
['tgv', 'shared', [rg_etc, lz4]],
|
||||
['tiff', 'shared', [tiff]],
|
||||
['wbmp', 'shared', []],
|
||||
['webp', 'shared', [webp]],
|
||||
['xpm', 'shared', []]
|
||||
]
|
||||
|
||||
evas_image_savers_file = [
|
||||
['eet', 'static', [eet]],
|
||||
['jpeg', 'static', [jpeg]],
|
||||
['png', 'static', [png]],
|
||||
['tgv', 'shared', [rg_etc, lz4]],
|
||||
['tiff', 'shared', [tiff]],
|
||||
['webp', 'shared', [webp]],
|
||||
]
|
||||
json = dependency('rlottie', required: get_option('evas-loaders-disabler').contains('json') == false)
|
||||
|
||||
evas_vg_loaders_file = [
|
||||
['eet', [eet]],
|
||||
['json', [json]],
|
||||
['svg', []],
|
||||
]
|
||||
|
||||
evas_vg_savers_file = ['eet', 'svg']
|
||||
|
||||
evas_model_savers_file = ['eet', 'obj', 'ply']
|
||||
|
||||
evas_model_loaders_file = ['eet', 'md2', 'obj', 'ply']
|
||||
|
||||
rel_evas_modules = join_paths('..', '..', '..', 'modules', 'evas', 'engines', 'software_generic')
|
||||
evas_deps = [eo, eet, eina, efl, emile, ector, ecore, buildsystem, intl]
|
||||
|
@ -168,13 +205,8 @@ if get_option('opengl') != 'none'
|
|||
endif
|
||||
endif
|
||||
|
||||
evas_pre = declare_dependency(
|
||||
include_directories: evas_include_directories + [vg_common_inc_dir] + [include_directories(join_paths('..', '..', 'modules', 'evas', 'engines', 'buffer'))],
|
||||
sources : pub_eo_file_target + priv_eo_file_target,
|
||||
dependencies: [eina, eo, ector, emile, evas_deps, m],
|
||||
)
|
||||
|
||||
evas_link = [ ]
|
||||
evas_pub_deps = [eina, ecore, ector, emile]
|
||||
|
||||
if cpu_sse3 == true or cpu_neon == true and cpu_neon_intrinsics == false
|
||||
evas_opt = static_library('evas_opt',
|
||||
|
@ -189,11 +221,106 @@ if cpu_sse3 == true or cpu_neon == true and cpu_neon_intrinsics == false
|
|||
evas_link += [ evas_opt ]
|
||||
endif
|
||||
|
||||
evas_pre_lib_dep = declare_dependency(
|
||||
foreach loader_inst : evas_image_loaders_file
|
||||
loader = loader_inst[0]
|
||||
loader_type = loader_inst[1]
|
||||
loader_deps = loader_inst[2]
|
||||
if get_option('evas-loaders-disabler').contains(loader) == false
|
||||
if loader_type == 'static'
|
||||
config_h.set('BUILD_LOADER_'+loader.to_upper(), '1')
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'image_loaders', loader, 'evas_image_load_'+loader+'.c')
|
||||
config_h.set('EVAS_STATIC_BUILD_'+loader.to_upper(), '1')
|
||||
evas_static_list += [declare_dependency(
|
||||
sources: file,
|
||||
dependencies: loader_deps,
|
||||
)]
|
||||
endif
|
||||
else
|
||||
message('Image loader '+loader+' disabled')
|
||||
endif
|
||||
endforeach
|
||||
|
||||
foreach loader_inst : evas_image_savers_file
|
||||
loader = loader_inst[0]
|
||||
loader_type = loader_inst[1]
|
||||
loader_deps = loader_inst[2]
|
||||
if get_option('evas-loaders-disabler').contains(loader) == false
|
||||
if loader_type == 'static'
|
||||
config_h.set('BUILD_LOADER_'+loader.to_upper(), '1')
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'image_savers', loader, 'evas_image_save_'+loader+'.c')
|
||||
config_h.set('EVAS_STATIC_BUILD_'+loader.to_upper(), '1')
|
||||
evas_static_list += [declare_dependency(
|
||||
sources: file,
|
||||
dependencies: loader_deps,
|
||||
)]
|
||||
endif
|
||||
else
|
||||
message('Image saver '+loader+' disabled')
|
||||
endif
|
||||
endforeach
|
||||
|
||||
foreach loader_inst : evas_vg_loaders_file
|
||||
loader = loader_inst[0]
|
||||
loader_deps = loader_inst[1]
|
||||
|
||||
if (get_option('evas-loaders-disabler').contains(loader) == false)
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'vg_loaders', loader, 'evas_vg_load_'+loader+'.c')
|
||||
evas_static_list += [declare_dependency(
|
||||
sources: file,
|
||||
dependencies: loader_deps,
|
||||
)]
|
||||
config_h.set('EVAS_STATIC_BUILD_VG_'+loader.to_upper(), '1')
|
||||
endif
|
||||
endforeach
|
||||
|
||||
foreach loader : evas_vg_savers_file
|
||||
if (get_option('evas-loaders-disabler').contains(loader) == false)
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'vg_savers', loader, 'evas_vg_save_'+loader+'.c')
|
||||
evas_static_list += [declare_dependency(
|
||||
sources: file,
|
||||
dependencies: [eo, ector, emile, freetype, eet],
|
||||
)]
|
||||
config_h.set('EVAS_STATIC_BUILD_VG_'+loader.to_upper(), '1')
|
||||
endif
|
||||
endforeach
|
||||
|
||||
foreach loader : evas_model_loaders_file
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'model_loaders', loader, 'evas_model_load_'+loader+'.c')
|
||||
|
||||
evas_static_list += [declare_dependency(
|
||||
sources: file,
|
||||
)]
|
||||
endforeach
|
||||
|
||||
foreach loader : evas_model_savers_file
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'model_savers', loader, 'evas_model_save_'+loader+'.c')
|
||||
|
||||
evas_static_list += [declare_dependency(
|
||||
sources: file,
|
||||
)]
|
||||
endforeach
|
||||
|
||||
evas_lib = library('evas',
|
||||
include_directories: evas_include_directories + [vg_common_inc_dir],
|
||||
sources : [evas_src, pub_eo_file_target],
|
||||
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,
|
||||
dependencies: [evas_deps, m, draw, valgrind, libunibreak]
|
||||
install: true,
|
||||
c_args : '-DPACKAGE_DATA_DIR="'+join_paths(dir_data, 'evas')+'"',
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
evas = declare_dependency(
|
||||
link_with : [evas_lib],
|
||||
sources: pub_eo_file_target,
|
||||
dependencies : [m] + evas_pub_deps + evas_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],
|
||||
include_directories : evas_include_directories
|
||||
)
|
||||
|
||||
if get_option('install-eo-files')
|
||||
|
@ -206,7 +333,6 @@ install_headers(evas_header_src,
|
|||
install_dir : dir_package_include,
|
||||
)
|
||||
|
||||
automatic_pkgfile = false
|
||||
pub_eo_files = []
|
||||
package_eo_subdirs += ['canvas', 'gesture']
|
||||
package_header_subdirs += ['canvas', 'gesture']
|
||||
|
|
|
@ -1,179 +0,0 @@
|
|||
#fixed dependencies by efl
|
||||
png = dependency('libpng')
|
||||
tiff = dependency('libtiff-4', required: get_option('evas-loaders-disabler').contains('tiff') == false)
|
||||
giflib = cc.find_library('gif')
|
||||
webp = dependency('libwebp', required: get_option('evas-loaders-disabler').contains('webp') == false)
|
||||
|
||||
evas_loader_saver_mod_bmp = ['bmp', 'shared', []]
|
||||
evas_loader_saver_mod_eet = ['eet', 'static', [eet]]
|
||||
evas_loader_saver_mod_generic = ['generic', 'shared', [rt]]
|
||||
evas_loader_saver_mod_gif = ['gif', 'shared', [giflib]]
|
||||
evas_loader_saver_mod_ico = ['ico', 'shared', []]
|
||||
evas_loader_saver_mod_jpeg = ['jpeg', 'static', [jpeg]]
|
||||
evas_loader_saver_mod_pmaps = ['pmaps', 'shared', []]
|
||||
evas_loader_saver_mod_png = ['png', 'static', [png]]
|
||||
evas_loader_saver_mod_psd = ['psd', 'shared', []]
|
||||
evas_loader_saver_mod_tga = ['tga', 'shared', []]
|
||||
evas_loader_saver_mod_tgv = ['tgv', 'shared', [rg_etc, lz4]]
|
||||
evas_loader_saver_mod_tiff = ['tiff', 'shared', [tiff]]
|
||||
evas_loader_saver_mod_wbmp = ['wbmp', 'shared', []]
|
||||
evas_loader_saver_mod_webp = ['webp', 'shared', [webp]]
|
||||
evas_loader_saver_mod_xpm = ['xpm', 'shared', []]
|
||||
|
||||
evas_image_loaders_file = [
|
||||
evas_loader_saver_mod_bmp,
|
||||
evas_loader_saver_mod_eet,
|
||||
evas_loader_saver_mod_generic,
|
||||
evas_loader_saver_mod_gif,
|
||||
evas_loader_saver_mod_ico,
|
||||
evas_loader_saver_mod_jpeg,
|
||||
evas_loader_saver_mod_pmaps,
|
||||
evas_loader_saver_mod_png,
|
||||
evas_loader_saver_mod_psd,
|
||||
evas_loader_saver_mod_tga,
|
||||
evas_loader_saver_mod_tgv,
|
||||
evas_loader_saver_mod_tiff,
|
||||
evas_loader_saver_mod_wbmp,
|
||||
evas_loader_saver_mod_webp,
|
||||
evas_loader_saver_mod_xpm
|
||||
]
|
||||
|
||||
evas_image_savers_file = [
|
||||
evas_loader_saver_mod_eet,
|
||||
evas_loader_saver_mod_jpeg,
|
||||
evas_loader_saver_mod_png,
|
||||
evas_loader_saver_mod_tgv,
|
||||
evas_loader_saver_mod_tiff,
|
||||
evas_loader_saver_mod_webp
|
||||
]
|
||||
|
||||
foreach loader_inst : evas_image_loaders_file
|
||||
loader = loader_inst[0]
|
||||
loader_type = loader_inst[1]
|
||||
loader_deps = loader_inst[2]
|
||||
if get_option('evas-loaders-disabler').contains(loader) == false
|
||||
if loader_type == 'static'
|
||||
config_h.set('BUILD_LOADER_'+loader.to_upper(), '1')
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'image_loaders', loader, 'evas_image_load_'+loader+'.c')
|
||||
config_h.set('EVAS_STATIC_BUILD_'+loader.to_upper(), '1')
|
||||
tmp = static_library('image_loader_'+loader, file,
|
||||
include_directories : config_dir,
|
||||
dependencies : [evas_pre] + loader_deps
|
||||
)
|
||||
evas_static_list += [declare_dependency(
|
||||
sources: file,
|
||||
dependencies: loader_deps,
|
||||
)]
|
||||
endif
|
||||
else
|
||||
message('Image loader '+loader+' disabled')
|
||||
endif
|
||||
endforeach
|
||||
|
||||
foreach loader_inst : evas_image_savers_file
|
||||
loader = loader_inst[0]
|
||||
loader_type = loader_inst[1]
|
||||
loader_deps = loader_inst[2]
|
||||
if get_option('evas-loaders-disabler').contains(loader) == false
|
||||
if loader_type == 'static'
|
||||
config_h.set('BUILD_LOADER_'+loader.to_upper(), '1')
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'image_savers', loader, 'evas_image_save_'+loader+'.c')
|
||||
config_h.set('EVAS_STATIC_BUILD_'+loader.to_upper(), '1')
|
||||
tmp = static_library('image_saver_'+loader, file,
|
||||
include_directories : config_dir,
|
||||
dependencies : [evas_pre] + loader_deps
|
||||
)
|
||||
evas_static_list += [declare_dependency(
|
||||
sources: file,
|
||||
dependencies: loader_deps,
|
||||
)]
|
||||
endif
|
||||
else
|
||||
message('Image saver '+loader+' disabled')
|
||||
endif
|
||||
endforeach
|
||||
|
||||
evas_lib = library('evas',
|
||||
'empty.c',
|
||||
#all the source code is coming from evas_pre_lib_dep
|
||||
dependencies: [evas_pre_lib_dep, evas_static_list],
|
||||
install: true,
|
||||
c_args : '-DPACKAGE_DATA_DIR="'+join_paths(dir_data, 'evas')+'"',
|
||||
version : meson.project_version()
|
||||
)
|
||||
|
||||
evas_pub_deps = [eina, ecore, ector, emile, evas_pre]
|
||||
|
||||
evas = declare_dependency(
|
||||
link_with : [evas_lib],
|
||||
dependencies : evas_pub_deps,
|
||||
include_directories : evas_include_directories
|
||||
)
|
||||
|
||||
evas_bin = declare_dependency(
|
||||
link_with : [evas_lib],
|
||||
dependencies : [eina, ecore, ector, emile, lua],
|
||||
include_directories : evas_include_directories
|
||||
)
|
||||
|
||||
tmp_package_subdirs = []
|
||||
automatic_pkgfile = false
|
||||
|
||||
foreach subdir : evas_header_subdirs
|
||||
tmp_package_subdirs += join_paths('evas-'+version_major, subdir)
|
||||
endforeach
|
||||
|
||||
pkgconfig.generate(evas_lib,
|
||||
name : 'evas',
|
||||
subdirs : ['evas-'+version_major] + tmp_package_subdirs,
|
||||
version : version_major + '.' + version_minor + '.' + version_micro,
|
||||
libraries : [eina, ecore, ector, emile, lua],
|
||||
)
|
||||
|
||||
foreach loader_inst : evas_image_loaders_file
|
||||
loader = loader_inst[0]
|
||||
loader_type = loader_inst[1]
|
||||
loader_deps = loader_inst[2]
|
||||
if get_option('evas-loaders-disabler').contains(loader) == false
|
||||
if loader_type == 'shared'
|
||||
config_h.set('BUILD_LOADER_'+loader.to_upper(), '1')
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'image_loaders', loader, 'evas_image_load_'+loader+'.c')
|
||||
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,
|
||||
install : true,
|
||||
install_dir : mod_install_dir,
|
||||
name_suffix : sys_mod_extension
|
||||
)
|
||||
module_files += join_paths(mod_install_dir, 'libshared_loader_'+loader + '.' + sys_mod_extension)
|
||||
endif
|
||||
else
|
||||
message('Image loader '+loader+' disabled')
|
||||
endif
|
||||
endforeach
|
||||
|
||||
foreach loader_inst : evas_image_savers_file
|
||||
loader = loader_inst[0]
|
||||
loader_type = loader_inst[1]
|
||||
loader_deps = loader_inst[2]
|
||||
if get_option('evas-loaders-disabler').contains(loader) == false
|
||||
if loader_type == 'shared'
|
||||
config_h.set('BUILD_LOADER_'+loader.to_upper(), '1')
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'image_savers', loader, 'evas_image_save_'+loader+'.c')
|
||||
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,
|
||||
install : true,
|
||||
install_dir : mod_install_dir,
|
||||
name_suffix : sys_mod_extension
|
||||
)
|
||||
module_files += join_paths(mod_install_dir, 'libshared_saver_'+loader + '.' + sys_mod_extension)
|
||||
endif
|
||||
else
|
||||
message('Image saver '+loader+' disabled')
|
||||
endif
|
||||
endforeach
|
|
@ -0,0 +1,23 @@
|
|||
foreach loader_inst : evas_image_loaders_file
|
||||
loader = loader_inst[0]
|
||||
loader_type = loader_inst[1]
|
||||
loader_deps = loader_inst[2]
|
||||
if get_option('evas-loaders-disabler').contains(loader) == false
|
||||
if loader_type == 'shared'
|
||||
config_h.set('BUILD_LOADER_'+loader.to_upper(), '1')
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'image_loaders', loader, 'evas_image_load_'+loader+'.c')
|
||||
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,
|
||||
install : true,
|
||||
install_dir : mod_install_dir,
|
||||
name_suffix : sys_mod_extension
|
||||
)
|
||||
module_files += join_paths(mod_install_dir, 'libshared_loader_'+loader + '.' + sys_mod_extension)
|
||||
endif
|
||||
else
|
||||
message('Image loader '+loader+' disabled')
|
||||
endif
|
||||
endforeach
|
|
@ -0,0 +1,23 @@
|
|||
foreach loader_inst : evas_image_savers_file
|
||||
loader = loader_inst[0]
|
||||
loader_type = loader_inst[1]
|
||||
loader_deps = loader_inst[2]
|
||||
if get_option('evas-loaders-disabler').contains(loader) == false
|
||||
if loader_type == 'shared'
|
||||
config_h.set('BUILD_LOADER_'+loader.to_upper(), '1')
|
||||
file = join_paths(meson.source_root(), 'src', 'modules', 'evas', 'image_savers', loader, 'evas_image_save_'+loader+'.c')
|
||||
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,
|
||||
install : true,
|
||||
install_dir : mod_install_dir,
|
||||
name_suffix : sys_mod_extension
|
||||
)
|
||||
module_files += join_paths(mod_install_dir, 'libshared_saver_'+loader + '.' + sys_mod_extension)
|
||||
endif
|
||||
else
|
||||
message('Image saver '+loader+' disabled')
|
||||
endif
|
||||
endforeach
|
|
@ -1,7 +1,9 @@
|
|||
#fixed dependencies by efl
|
||||
json = dependency('rlottie', required: get_option('evas-loaders-disabler').contains('json') == false)
|
||||
|
||||
subdir('image_savers')
|
||||
subdir('image_loaders')
|
||||
subdir('model_savers')
|
||||
subdir('model_loaders')
|
||||
subdir('vg_savers')
|
||||
subdir('vg_loaders')
|
||||
subdir('engines')
|
||||
|
|
|
@ -1,16 +1 @@
|
|||
evas_model_loaders_file = ['eet', 'md2', 'obj', 'ply']
|
||||
|
||||
foreach loader : evas_model_loaders_file
|
||||
file = join_paths(loader, 'evas_model_load_'+loader+'.c')
|
||||
|
||||
tmp = static_library('model_loader_'+loader, file,
|
||||
include_directories : config_dir,
|
||||
dependencies : [evas_pre]
|
||||
)
|
||||
|
||||
evas_static_list += [declare_dependency(
|
||||
include_directories: include_directories('.'),
|
||||
sources: file,
|
||||
dependencies: evas_pre,
|
||||
)]
|
||||
endforeach
|
||||
#all the loaders here are build statically, the build instructions are in src/lib/evas/meson.build
|
||||
|
|
|
@ -1,16 +1 @@
|
|||
evas_model_savers_file = ['eet', 'obj', 'ply']
|
||||
|
||||
foreach loader : evas_model_savers_file
|
||||
file = join_paths(loader, 'evas_model_save_'+loader+'.c')
|
||||
|
||||
tmp = static_library('model_saver_'+loader, file,
|
||||
include_directories : config_dir,
|
||||
dependencies : evas_pre
|
||||
)
|
||||
|
||||
evas_static_list += [declare_dependency(
|
||||
include_directories: include_directories('.'),
|
||||
sources: file,
|
||||
dependencies: evas_pre,
|
||||
)]
|
||||
endforeach
|
||||
#all the loaders here are build statically, the build instructions are in src/lib/evas/meson.build
|
||||
|
|
|
@ -1,26 +1 @@
|
|||
evas_vg_loaders_file = [
|
||||
['eet', [eet]],
|
||||
['json', [json]],
|
||||
['svg', []],
|
||||
]
|
||||
|
||||
foreach loader_inst : evas_vg_loaders_file
|
||||
loader = loader_inst[0]
|
||||
loader_deps = loader_inst[1]
|
||||
|
||||
if (get_option('evas-loaders-disabler').contains(loader) == false)
|
||||
file = join_paths(loader, 'evas_vg_load_'+loader+'.c')
|
||||
|
||||
static_library('vg_loader_'+loader, file,
|
||||
include_directories : config_dir,
|
||||
dependencies : [evas_pre] + loader_deps
|
||||
)
|
||||
|
||||
evas_static_list += [declare_dependency(
|
||||
sources: file,
|
||||
dependencies: loader_deps,
|
||||
)]
|
||||
|
||||
config_h.set('EVAS_STATIC_BUILD_VG_'+loader.to_upper(), '1')
|
||||
endif
|
||||
endforeach
|
||||
#all the loaders here are build statically, the build instructions are in src/lib/evas/meson.build
|
||||
|
|
|
@ -1,17 +1 @@
|
|||
evas_vg_savers_file = ['eet', 'svg']
|
||||
|
||||
foreach loader : evas_vg_savers_file
|
||||
file = join_paths(loader, 'evas_vg_save_'+loader+'.c')
|
||||
|
||||
if (get_option('evas-loaders-disabler').contains(loader) == false)
|
||||
tmp = static_library('vg_saver_'+loader, file,
|
||||
include_directories : config_dir,
|
||||
dependencies: [eo, ector, emile, freetype, eet, evas_pre],
|
||||
)
|
||||
evas_static_list += [declare_dependency(
|
||||
sources: file,
|
||||
dependencies: [eo, ector, emile, freetype, eet, evas_pre],
|
||||
)]
|
||||
config_h.set('EVAS_STATIC_BUILD_VG_'+loader.to_upper(), '1')
|
||||
endif
|
||||
endforeach
|
||||
#all the loaders here are build statically, the build instructions are in src/lib/evas/meson.build
|
||||
|
|
|
@ -12,6 +12,10 @@ bs_mod_get(char *path, size_t maxlen, const char *subsystem, const char *mod_nam
|
|||
// this causes the module to link to itself, instead of the library
|
||||
if (!strcmp(subsystem, "ethumb"))
|
||||
snprintf(path, maxlen, PACKAGE_BUILD_DIR"/src/modules/%s/%s/lib%s_el"MOD_SUFFIX, subsystem, mod_name, mod_name);
|
||||
else if (!strcmp(subsystem, "evas/image_loaders"))
|
||||
snprintf(path, maxlen, PACKAGE_BUILD_DIR"/src/modules/%s/libshared_loader_%s"MOD_SUFFIX, subsystem, mod_name);
|
||||
else if (!strcmp(subsystem, "evas/image_savers"))
|
||||
snprintf(path, maxlen, PACKAGE_BUILD_DIR"/src/modules/%s/libshared_saver_%s"MOD_SUFFIX, subsystem, mod_name);
|
||||
else
|
||||
snprintf(path, maxlen, PACKAGE_BUILD_DIR"/src/modules/%s/%s/lib%s"MOD_SUFFIX, subsystem, mod_name, mod_name);
|
||||
|
||||
|
|
Loading…
Reference in New Issue