forked from enlightenment/efl
180 lines
6.5 KiB
Meson
180 lines
6.5 KiB
Meson
#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
|