comparison scripts/mmake.luan @ 320:fed1893821bf

remove global namespace git-svn-id: https://luan-java.googlecode.com/svn/trunk@321 21e917c8-12df-6dd8-5cb6-c86387c605b9
author fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
date Fri, 06 Feb 2015 21:54:41 +0000
parents 869d2263de5d
children 7f7708e8fdd4
comparison
equal deleted inserted replaced
319:f6db49c294a7 320:fed1893821bf
1 import "luan:Luan"
1 import "luan:Table" 2 import "luan:Table"
2 import "luan:Io" 3 import "luan:Io"
3 import "luan:String" 4 import "luan:String"
4 import "luan:Time" 5 import "luan:Time"
5 6
7 local ipairs = Luan.ipairs
8 local print = Io.print
9
10
6 compiler = Table.concat( { "javac -g -encoding UTF8", ... }, " " ) 11 compiler = Table.concat( { "javac -g -encoding UTF8", ... }, " " )
7 12
8 function mmake(dir) 13 function mmake(dir)
9 local java = {} 14 local javas = {}
10 local dirs = {} 15 local dirs = {}
11 for _, file in ipairs(dir.children()) do 16 for _, file in ipairs(dir.children()) do
12 local name = file.name() 17 local name = file.name()
13 if name.match ".java$" ~= nil then 18 if name.match ".java$" ~= nil then
14 java[#java+1] = name.sub(1,-6) 19 javas[#javas+1] = name.sub(1,-6)
15 end 20 end
16 if file.is_directory() and mmake(file) then 21 if file.is_directory() and mmake(file) then
17 dirs[#dirs+1] = name 22 dirs[#dirs+1] = name
18 end 23 end
19 end 24 end
20 if #java == 0 and #dirs == 0 then 25 if #javas == 0 and #dirs == 0 then
21 return false; 26 return false;
22 end 27 end
23 local out = dir.child("Makefile").text_writer() 28 local out = dir.child("Makefile").text_writer()
24 out.write( header() ) 29 out.write( header() )
25 for _, s in ipairs(java) do 30 for _, s in ipairs(javas) do
26 out.write( "\\\n\t\t", s , ".class" ) 31 out.write( "\\\n\t\t", s , ".class" )
27 end 32 end
28 for _, s in ipairs(dirs) do 33 for _, s in ipairs(dirs) do
29 out.write( "\n\tcd ", s, "; make all" ) 34 out.write( "\n\tcd ", s, "; make all" )
30 end 35 end