aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/create_all_options.lua
diff options
context:
space:
mode:
authorMarcel Hollerbach <mail@marcel-hollerbach.de>2018-08-12 15:26:29 +0200
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2018-10-02 17:22:50 +0200
commit46d464e5bfc10398461a33a2256c1c58d509dd1a (patch)
tree8c1a9272c05f14033a4430bc122632461bd73608 /scripts/create_all_options.lua
parentecore_cocoa: stop leaking init counts (diff)
downloadefl-46d464e5bfc10398461a33a2256c1c58d509dd1a.tar.gz
here comes meson
a new shiny buildtool that currently completes in the total of ~ 4 min.. 1 min. conf time 2:30 min. build time Where autotools takes: 1:50 min. conf time 3:40 min. build time. meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read. Further informations can be gathered from the README.meson Right now, bindings & windows support are missing. It is highly recommented to use meson 0.48 due to optimizations in meson that reduced the time the meson call would need. Co-authored-by: Mike Blumenkrantz <zmike@samsung.com> Differential Revision: https://phab.enlightenment.org/D7012 Depends on https://phab.enlightenment.org/D7011
Diffstat (limited to 'scripts/create_all_options.lua')
-rw-r--r--scripts/create_all_options.lua52
1 files changed, 52 insertions, 0 deletions
diff --git a/scripts/create_all_options.lua b/scripts/create_all_options.lua
new file mode 100644
index 0000000000..3bbc748742
--- /dev/null
+++ b/scripts/create_all_options.lua
@@ -0,0 +1,52 @@
+options = {
+ {"-Dopengl=", "full", "none", "es-egl"},
+ {"--buildtype ", "plain", "debug", "release"},
+ {"-Devas-modules ", "shared", "static"},
+}
+
+concated_options = {}
+
+for i,v in pairs(options) do
+ tmp_options = {}
+
+ option_name = v[1]
+
+ for i=2, #v do
+ table.insert(tmp_options, option_name..v[i])
+ end
+
+ table.insert(concated_options, tmp_options)
+end
+
+function permutate(values)
+ local permutater = {table.unpack(values[1])}
+
+ if #values == 1 then
+ return {table.unpack(values[1])}
+ else
+ local result = {}
+ table.remove(values, 1)
+ local list_to_complete = permutate(values)
+
+ for k,v in pairs(list_to_complete) do
+ for k_perm,v_perm in pairs(permutater) do
+ table.insert(result, v_perm.." "..v)
+ end
+ end
+ return result
+ end
+end
+
+all_options = permutate(concated_options)
+
+print("GOING TO BUILD ALOT OF EFL")
+
+for k,v in pairs(all_options) do
+ cmd = "sh ./scripts/check_options.sh "..v.." "..arg[1]
+ exitcode = os.execute(cmd)
+ if exitcode ~= true then
+ print("command "..cmd.." failed. ")
+ print(exitcode)
+ os.exit(-1)
+ end
+end