From 2e854ce7ed5a75249ceb7201411ccb2b83e27a4d Mon Sep 17 00:00:00 2001 From: Ross Vandegrift Date: Wed, 25 Dec 2019 04:33:53 +0000 Subject: correct edje pkg-config generation for luaold Currently, edje.pc gets its lua Requires from the -Dlua-interpreter argument. If -Dlua-interpreter=lua, an unversioned lua entry ends up in Requires, which cannot always be satisifed. The evas filters meson.build handles this case by generating a version-specific entry. This patch copies that logic into the top level meson.build, and passes the result to the edje subproject. Reviewed-by: Marcel Hollerbach Differential Revision: https://phab.enlightenment.org/D10965 --- meson.build | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) (limited to 'meson.build') diff --git a/meson.build b/meson.build index 222a79bcff..5ee96f0f09 100644 --- a/meson.build +++ b/meson.build @@ -254,6 +254,39 @@ ecore_evas_wayland_engine_include_dir = [] evas_static_list = [] +luaold_interpreters = [ + ['lua', ['>=5.1.0','<5.3.0']], + ['lua51', ['>=5.1.0','<5.2.0']], + ['lua-5.1', ['>=5.1.0','<5.2.0']], + ['lua5.1', ['>=5.1.0','<5.2.0']], + ['lua52', ['>=5.2.0','<5.3.0']], + ['lua-5.2', ['>=5.2.0','<5.3.0']], + ['lua5.2', ['>=5.2.0','<5.3.0']], +] + +lua_pc_name = '' + +if get_option('lua-interpreter') == 'lua' + foreach l : luaold_interpreters + lua = dependency(l[0], version: l[1], required:false) + lua_pc_name = l[0] + if lua.found() == true + break + endif + endforeach +else + lua = dependency(get_option('lua-interpreter')) + lua_pc_name = 'luajit' +endif + +if sys_osx == true and get_option('lua-interpreter') == 'luajit' +# luajit on macro is broken, this means we need to generate our own dependency with our arguments, a library later still needs to link to luajit for the pagesize argument thingy + lua = declare_dependency( + include_directories: include_directories(lua.get_pkgconfig_variable('includedir')), + link_args: ['-L'+lua.get_pkgconfig_variable('libdir'), '-l'+lua.get_pkgconfig_variable('libname')] + ) +endif + subprojects = [ # name | option | mod | lib | bin | bench | tests | examples | pkg-config options | name of static libs ['evil' ,[] , false, true, false, false, false, false, [], []], @@ -293,7 +326,7 @@ subprojects = [ ['efreet' ,[] , false, false, true, false, false, false, ['eina', 'efl', 'eo'], []], ['ecore_imf_evas' ,[] , false, true, false, false, false, false, ['eina', 'efl', 'eo'], []], ['ephysics' ,['physics'] , false, true, false, false, false, false, ['eina', 'efl', 'eo'], []], -['edje' ,[] , false, true, true, false, true, true, ['evas', 'eo', 'efl', get_option('lua-interpreter')], []], +['edje' ,[] , false, true, true, false, true, true, ['evas', 'eo', 'efl', lua_pc_name], []], ['emotion' ,[] , true, true, false, false, true, true, ['eina', 'efl', 'eo'], []], ['ethumb' ,[] , true, true, true, false, false, false, ['eina', 'efl', 'eo'], []], ['ethumb_client' ,[] , false, true, true, false, false, true, ['eina', 'efl', 'eo', 'ethumb'], []], -- cgit v1.2.1