summaryrefslogtreecommitdiff
path: root/meson.build
diff options
context:
space:
mode:
authorRoss Vandegrift <ross@kallisti.us>2019-12-25 04:33:53 +0000
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2019-12-28 10:47:46 +0100
commit2e854ce7ed5a75249ceb7201411ccb2b83e27a4d (patch)
tree6fd3b353ebf7a312c5abbf7db27be6d9b6df988c /meson.build
parent595a066a64711b9a86808f1399f6ceffbb177370 (diff)
downloadefl-2e854ce7ed5a75249ceb7201411ccb2b83e27a4d.tar.gz
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 <mail@marcel-hollerbach.de> Differential Revision: https://phab.enlightenment.org/D10965
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build35
1 files changed, 34 insertions, 1 deletions
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'], []],