onefang pushed a commit to branch master.
commit 68e65ac179dd2a83c3b95db0842faffa83e76836
Author: David Walter Seikel <[email protected]>
Date: Mon Apr 1 21:16:28 2013 +1000
Various little things.
eflBasic -> eflCore.
Add e_dbus and elsa.
e -> enlightenment, so the GIT version gets used.
Build docs in background.
Filter out legacy and migrations stuff.
Only update if doing the entire build.
---
onefang/build_efl.lua | 76 ++++++++++++++++++++++++++++++---------------------
1 file changed, 45 insertions(+), 31 deletions(-)
diff --git a/onefang/build_efl.lua b/onefang/build_efl.lua
index cdca273..769ccb6 100755
--- a/onefang/build_efl.lua
+++ b/onefang/build_efl.lua
@@ -35,6 +35,7 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-- TODO - Might need more environment stuff for cmake EFL find functions?
+-- TODO - Python builds still not working.
-- TODO - Should get these out of a config lua script, but keep these as
defaults.
@@ -57,28 +58,29 @@ local envVars =
local searchPaths = {'SVN/trunk', 'SVN/trunk/BINDINGS/javascript',
'SVN/trunk/BINDINGS/python', 'SVN/trunk/DEBUG', 'SVN/trunk/E-MODULES-EXTRA',
'SVN/trunk/eterm', 'SVN/trunk/EXAMPLES/azy', 'SVN/trunk/EXAMPLES/elementary',
'SVN/trunk/FORMATTING', 'SVN/trunk/GAMES', --[['SVN/trunk/IN-EFL',]]
'SVN/trunk/MISC', 'SVN/trunk/PROTO', 'SVN/trunk/THEMES'}
---local eflBasic = {'eina', 'eobj', 'eet', 'evas_generic_loaders', 'evas',
'ecore', 'eio', 'e_dbus', 'edbus', 'efreet', 'embryo', 'eeze', 'ephysics',
'edje', 'emotion', 'ethumb', 'elementary'}
-local eflBasic = {'efl', 'evas_generic_loaders', 'e_dbus', 'elementary'}
+--local eflCore = {'eina', 'eobj', 'eet', 'evas_generic_loaders', 'evas',
'ecore', 'eio', 'e_dbus', 'edbus', 'efreet', 'embryo', 'eeze', 'ephysics',
'edje', 'emotion', 'ethumb', 'elementary'}
+local eflCore = {'efl', 'evas_generic_loaders', 'emotion_generic_players',
'elementary'}
local eflExtra =
{
- 'imlib2', 'emap', 'azy', 'enlil',
- 'libast', 'libeweather',
- 'ekbd', 'elocation', 'email', 'epdf', 'eupnp', 'efx', 'etam', 'etrophy',
+ 'imlib2', 'emap', 'azy', 'enlil', 'libast', 'libeweather',
+ 'e_dbus', 'ekbd', 'elocation', 'email', 'epdf', 'eupnp', 'efx', 'etam',
'etrophy',
'python-evas', 'python-ecore', 'python-e_dbus', 'python-edje',
'python-ethumb', 'python-emotion', 'python-elementary'
}
-local binBasic = {'exchange', 'e', 'exalt', 'emprint', 'geneet'}
+local binBasic = {'exchange', 'enlightenment', 'exalt', 'emprint', 'geneet'}
local eModulesExtra = {}
local binExtra =
{
'23oz', 'ardy', 'calculator', 'clouseau', 'community', 'converter',
'dark', 'darkness',
'e_cho', 'e_pattern_lock', 'econcentration', 'ecrire', 'edi', 'editje',
'edje_viewer', 'edvi', 'efbb',
- 'ekeko', 'elm_fullscreen', 'elm_illume', 'elm_indicator', 'elm_kbd',
'elm_quickpanel', 'elm_softkey', 'elmdentica', 'emote', 'empower', 'enki',
+ 'ekeko', 'elm_fullscreen', 'elm_illume', 'elm_indicator', 'elm_kbd',
'elm_quickpanel', 'elm_softkey', 'elmdentica', 'elsa', 'emote', 'empower',
'enki',
'ensure', 'entrance',
--[['envision', Hangs waiting for input.]]
'ephoto', 'ephysics_tests', 'eps', 'epulse', 'equate', 'espionnage',
'esskyuehl', 'etypers', 'Eterm', 'ev', 'eve', 'exactness', 'examine',
'excessive', 'expedite', 'explicit', 'exquisite', 'eyelight', 'eyelight_edit',
'eyesight',
'keys', 'ninestime', 'phonebook', 'rage', 'shellementary', 'shotgun',
'sticky-notes', 'terminology', 'vigrid'
}
+
+
local exportedEnvVars = ''
local saEnvVars = ''
local startTime = os.time()
@@ -149,7 +151,6 @@ local function build(i, package)
if good then good = runBuildCommand(i, package, path, 'cd build
&& make PREFIX=' .. installPath .. ' -j' .. threads) end
if good then good = runBuildCommand(i, package, path, 'cd build
&& sudo make PREFIX=' .. installPath .. ' install') end
elseif fileExists(path .. '/setup.py') then
--- progress(i, package, path, 'PYTHON NOT SUPPORTED YET!');
if good then good = runBuildCommand(i, package, path, 'python
setup.py build build_ext --include-dirs=$PYTHONINCLUDE') end
if good then good = runBuildCommand(i, package, path, 'sudo
python setup.py install --prefix=' .. installPath .. ' install_headers
--install-dir=$PYTHONINCLUDE') end
good = false
@@ -158,11 +159,12 @@ local function build(i, package)
good = false
end
+ -- Run the doc generation in the background, should not be any
dependencies.
if good then
if fileExists(path .. '/gendoc') then
- if good then runBuildCommand(i, package, path, 'sh gendoc')
end
+ if good then runBuildCommand(i, package, path, 'sh gendoc >
/tmp/eflBuild/' .. package .. '_doc.log 2>&1 &') end
elseif fileExists(path .. '/doc/Doxyfile') then
- if good then runBuildCommand(i, package, path, 'make doc')
end
+ if good then runBuildCommand(i, package, path, 'make doc >
/tmp/eflBuild/' .. package .. '_doc.log 2>&1 &') end
end
end
@@ -179,6 +181,11 @@ local function build(i, package)
end
+-- Build the compile environment.
+for i, var in ipairs(envVars) do
+ exportedEnvVars = exportedEnvVars .. 'export ' .. var .. '; '
+end
+
-- Recreate the temporary directory.
os.execute('rm -fr /tmp/eflBuild')
os.execute('mkdir /tmp/eflBuild')
@@ -192,34 +199,23 @@ end
printf('Now we need your sudo password.\n')
os.execute('sudo echo "https://en.wikipedia.org/wiki/Pseudo_Echo Welcome to
the 80\'s"') -- There was an aussie band called that. lol
--- Build the compile environment.
-for i, var in ipairs(envVars) do
- exportedEnvVars = exportedEnvVars .. 'export ' .. var .. '; '
-end
-
-- Get the git repo list.
os.execute('cd /tmp/eflBuild && wget http://git.enlightenment.org/repos.txt')
-- Evil hack so we get the proper ones listed first. The evil part is that
alphabetical order just happens to work. For now.
os.execute('sort /tmp/eflBuild/repos.txt > /tmp/eflBuild/repos_sorted.txt')
-
-printf("Updating SVN, this might take a while.\n")
--- TODO - Should do a check out if it does not exist, like git does below.
-os.execute(saEnvVars .. 'cd SVN && svn update --accept theirs-conflict 2>&1 |
tee /tmp/eflBuild/subversion.log')
-
local i = 1
-printf("Updating git, this might take a while.\n")
for line in io.lines('/tmp/eflBuild/repos_sorted.txt') do
local path = string.sub(line, 1, -5)
+ local valid = true;
+
+ -- Less evil than the evil hack above.
+ if string.sub(path, 1, 22) == 'devs/asdfuser/migrate/' then valid = false
end
+-- if string.sub(path, 1, 7) == 'legacy/' then valid = false end
-- TODO - Should try to keep these unique.
- table.insert(searchPaths, i, 'GIT/' .. string.gsub(path, "/[^/]+$", "", 1))
- i = i + 1
- if not fileExists('GIT/' .. path .. '/.git/HEAD') then
- os.execute(saEnvVars .. 'mkdir -p GIT/`dirname ' .. path .. '` && cd
GIT/`dirname ' .. path .. '` && git clone ssh://[email protected]/' ..
line .. ' 2>&1 | tee /tmp/eflBuild/git.log')
- else
- printf('Updating %s\n', path);
- -- TODO - Should throw in a stash, check which branch we are on, etc.
- os.execute(saEnvVars .. 'cd GIT/' .. path .. ' && git checkout master
&& git pull --rebase 2>&1 | tee /tmp/eflBuild/git.log')
+ if valid then
+ table.insert(searchPaths, i, 'GIT/' .. string.gsub(path, "/[^/]+$", "",
1))
+ i = i + 1
end
end
@@ -233,8 +229,26 @@ if nil ~= arg[1] then
end
end
else
- printf('Building %d basic EFL libraries.\n', #eflBasic)
- for i, package in ipairs(eflBasic) do build(i, package); os.execute('sudo
ldconfig') end
+
+ printf("Updating SVN, this might take a while.\n")
+ -- TODO - Should do a check out if it does not exist, like git does below.
+ os.execute(saEnvVars .. 'cd SVN && svn update --accept theirs-conflict
2>&1 | tee /tmp/eflBuild/subversion.log')
+
+ printf("Updating git, this might take a while.\n")
+ for line in io.lines('/tmp/eflBuild/repos_sorted.txt') do
+ local path = string.sub(line, 1, -5)
+
+ if not fileExists('GIT/' .. path .. '/.git/HEAD') then
+ os.execute(saEnvVars .. 'mkdir -p GIT/`dirname ' .. path .. '` &&
cd GIT/`dirname ' .. path .. '` && git clone ssh://[email protected]/'
.. line .. ' 2>&1 | tee /tmp/eflBuild/git.log')
+ else
+ printf('Updating %s\n', path);
+ -- TODO - Should throw in a stash, check which branch we are on,
etc.
+ os.execute(saEnvVars .. 'cd GIT/' .. path .. ' && git checkout
master && git pull --rebase 2>&1 | tee /tmp/eflBuild/git.log')
+ end
+ end
+
+ printf('Building %d core EFL libraries.\n', #eflCore)
+ for i, package in ipairs(eflCore) do build(i, package); os.execute('sudo
ldconfig') end
printf('Building %d extra EFL libraries.\n', #eflExtra)
for i, package in ipairs(eflExtra) do build(i, package); os.execute('sudo
ldconfig') end
--
------------------------------------------------------------------------------
Own the Future-Intel® Level Up Game Demo Contest 2013
Rise to greatness in Intel's independent game demo contest.
Compete for recognition, cash, and the chance to get your game
on Steam. $5K grand prize plus 10 genre and skill prizes.
Submit your demo by 6/6/13. http://p.sf.net/sfu/intel_levelupd2d