meson: move gl_common to gl_generic

Summary:
sooo, gl_common stuff is only used by gl_generic, (and maybe others.
However, it is build static anyways and only linked into gl_generic).

This means, only software_generic is still in here and we can remove one
special case from the build instructions.

Reviewers: zmike, stefan_schmidt, cedric, vtorri

Reviewed By: zmike

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8667
This commit is contained in:
Marcel Hollerbach 2019-04-19 14:39:17 -04:00 committed by Mike Blumenkrantz
parent e9b2e3c6c3
commit a974c864ad
3 changed files with 46 additions and 67 deletions

View File

@ -1,45 +0,0 @@
engine_src = files([
'evas_gl_private.h',
'evas_gl_common.h',
'evas_gl_define.h',
'evas_gl_context.c',
'evas_gl_file_cache.c',
'evas_gl_shader.c',
'evas_gl_rectangle.c',
'evas_gl_texture.c',
'evas_gl_preload.c',
'evas_gl_image.c',
'evas_gl_font.c',
'evas_gl_polygon.c',
'evas_gl_line.c',
'evas_gl_core.c',
'evas_gl_api_ext.h',
'evas_gl_api_ext_def.h',
'evas_gl_core.h',
'evas_gl_core_private.h',
'evas_gl_api.c',
'evas_gl_api_def.h',
'evas_gl_api_gles1.c',
'evas_gl_api_gles3_def.h',
'evas_gl_api_ext.c',
'evas_gl_3d_common.h',
'evas_gl_3d_private.h',
'evas_gl_3d.c',
'evas_gl_3d_renderer.c',
'evas_gl_3d_shader.c',
#join_paths('shader_3d', 'evas_gl_3d_shaders.x'),
#join_paths('shader','evas_gl_shaders.x'),
])
engine_deps = [gl_deps]
if get_option('evas-modules') == 'shared' and not evas_force_static.contains(engine)
shared_module(mod_full_name, engine_src,
include_directories : config_dir + [engine_include_dir],
dependencies : [eina, evas_pre] + engine_deps,
install : true,
install_dir : mod_install_dir,
name_suffix : sys_mod_extension
)
module_files += join_paths(mod_install_dir, 'lib'+mod_full_name + '.' + sys_mod_extension)
endif

View File

@ -13,7 +13,40 @@ engine_src = files([
join_paths('filters','gl_filter_fill.c'),
join_paths('filters','gl_filter_mask.c'),
])
common_engine_src = [
'evas_gl_private.h',
'evas_gl_common.h',
'evas_gl_define.h',
'evas_gl_context.c',
'evas_gl_file_cache.c',
'evas_gl_shader.c',
'evas_gl_rectangle.c',
'evas_gl_texture.c',
'evas_gl_preload.c',
'evas_gl_image.c',
'evas_gl_font.c',
'evas_gl_polygon.c',
'evas_gl_line.c',
'evas_gl_core.c',
'evas_gl_api_ext.h',
'evas_gl_api_ext_def.h',
'evas_gl_core.h',
'evas_gl_core_private.h',
'evas_gl_api.c',
'evas_gl_api_def.h',
'evas_gl_api_gles1.c',
'evas_gl_api_gles3_def.h',
'evas_gl_api_ext.c',
'evas_gl_3d_common.h',
'evas_gl_3d_private.h',
'evas_gl_3d.c',
'evas_gl_3d_renderer.c',
'evas_gl_3d_shader.c',
]
foreach src : common_engine_src
engine_src += files(join_paths('..','gl_common', src))
endforeach
pub_eo_files = [
'evas_ector_gl_buffer.eo',
@ -32,9 +65,9 @@ foreach eo_file : pub_eo_files
'-gchd', '@INPUT@'])
endforeach
engine_deps = [gl_common]
engine_deps = [gl_deps]
engine_include_dir = include_directories(join_paths('..','software_generic'))
engine_include_dir = include_directories(join_paths('..','software_generic'), join_paths('..', 'gl_common'))
if get_option('evas-modules') == 'shared' and not evas_force_static.contains(engine)
shared_module(mod_full_name, engine_src,

View File

@ -9,7 +9,6 @@ engines = [
if get_option('opengl') != 'none'
engines += [
['gl_common', []],
['gl_generic', []],
['gl_x11', ['x11']],
['gl_drm', ['drm']],
@ -22,7 +21,7 @@ if get_option('opengl') == 'es-egl'
endif
#there are a few modules that should NEVER be build as a module but rather be build as static lib and linked in later
evas_force_static = ['software_generic', 'gl_common']
evas_force_static = ['software_generic']
evas_static_list = []
#fixed dependencies by efl
@ -75,25 +74,17 @@ foreach engine_conf : engines
link_with : tmp
)
endif
if engine == 'gl_common'
#gl_common will only be used by gl_generic, NOT by libevas.so, so we work arround the static list
gl_common = declare_dependency(
include_directories : include_directories(join_paths('engines', 'gl_common')),
link_with: tmp,
)
evas_static_list += declare_dependency(
include_directories: [include_directories('.')] + config_dir + [engine_include_dir],
link_with: tmp,
dependencies : [eina, evas_pre] + engine_deps,
sources : engine_src
)
if engine == 'gl_generic'
#special case, see evas_module.c
config_h.set('EVAS_STATIC_BUILD_GL_COMMON', '1')
else
evas_static_list += declare_dependency(
include_directories: [include_directories('.')] + config_dir + [engine_include_dir],
link_with: tmp,
dependencies : [eina, evas_pre] + engine_deps,
sources : engine_src
)
if engine == 'gl_generic'
#special case, see evas_module.c
config_h.set('EVAS_STATIC_BUILD_GL_COMMON', '1')
else
config_h.set('EVAS_STATIC_BUILD_'+engine.to_upper(), '1')
endif
config_h.set('EVAS_STATIC_BUILD_'+engine.to_upper(), '1')
endif
else
#nothing here shared building is handled directly on the engine configuration side