build: add a option to bootstrap eolian
authorMarcel Hollerbach <mail@marcel-hollerbach.de>
Wed, 13 Feb 2019 12:42:55 +0000 (13:42 +0100)
committerWonki Kim <wonki_.kim@samsung.com>
Fri, 8 Mar 2019 11:49:34 +0000 (20:49 +0900)
this is here in order to make cross compiling easier, and we can just
provide the *all the time changing* eolian_gen binary.

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D7929

meson.build
meson_options.txt

index 0ebe031..c011b2c 100644 (file)
@@ -242,6 +242,12 @@ endif
 
 ecore_evas_wayland_engine_include_dir = []
 
+boot_strap_eolian = [
+  ['evil'             ,[]                    , false,  true, false, false, false, false, [], []],
+  ['eina'             ,[]                    , false,  true, false, false, false, false, [], []],
+  ['eolian'           ,[]                    , false,  true,  true, false, false, false, ['eina'], []],
+]
+
 subprojects = [
 # name              |   option              | mod  | lib  | bin  | bench | tests | examples | pkg-config options | name of static libs
 ['evil'             ,[]                    , false,  true, false, false, false, false, [], []],
@@ -304,6 +310,9 @@ test_dirs = []
 example_dirs = []
 tmp_empty = declare_dependency()
 
+if get_option('eolian-bootstrap')
+   subprojects = boot_strap_eolian
+endif
 
 foreach package : subprojects
   package_name = package[0]
@@ -404,23 +413,23 @@ foreach package : subprojects
 
 endforeach
 
-#build this later, as the debug services are depending on ecore
-subdir(join_paths('src', 'bin', 'efl'))
-
-subdir(join_paths('src', 'generic', 'evas'))
-subdir(join_paths('src', 'generic', 'emotion'))
 subdir('cmakeconfig')
+#build this later, as the debug services are depending on ecore
+if get_option('eolian-bootstrap') == false
+  subdir(join_paths('src', 'bin', 'efl'))
 
-bindings = get_option('bindings')
-
-foreach binding : bindings
-  subdir(join_paths('src', 'bindings', binding))
-endforeach
+  subdir(join_paths('src', 'generic', 'evas'))
+  subdir(join_paths('src', 'generic', 'emotion'))
 
-subdir(join_paths('src', 'edje_external'))
+  bindings = get_option('bindings')
 
+  foreach binding : bindings
+    subdir(join_paths('src', 'bindings', binding))
+  endforeach
 
-subdir(join_paths('data'))
+  subdir(join_paths('src', 'edje_external'))
+  subdir(join_paths('data'))
+endif
 
 if get_option('build-tests')
   check = dependency('check')
index 9fd921d..2c168df 100644 (file)
@@ -360,3 +360,9 @@ option('elementary-base-dir',
   value : '.elementary',
   description : 'Put the name of a base directory for elementary data'
 )
+
+option('eolian-bootstrap',
+  type : 'boolean',
+  value : false,
+  description : 'Only build efl up to eolian_gen and install eina libeolian and eolian_gen, usefull for cross compiles'
+)