Subversion Repositories Projects

Rev

Rev 264 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 264 Rev 266
1
#!/usr/bin/env ruby
1
#!/usr/bin/env ruby
2
# little ruby script to build DUBwise
2
# little ruby script to build DUBwise
3
# 
3
# 
4
# Author: Marcus -LiGi- Bueschleb
4
# Author: Marcus -LiGi- Bueschleb
5
#
5
#
6
# see README for further Infos
6
# see README for further Infos
7
 
7
 
8
 
8
 
9
resdir="res/"
9
resdir="res/"
-
 
10
 
-
 
11
if ARGV.include?("-l")
-
 
12
  puts "regenerating language strings"
-
 
13
  p `cd res ; ruby lang_gen.rb ; cd ..`
-
 
14
  ARGV.delete("-l")
-
 
15
end
-
 
16
 
-
 
17
if ARGV.include?("-i")
-
 
18
  puts "regenerating images"
-
 
19
  p `cd res ; ruby image_gen.rb ; cd ..`
-
 
20
  ARGV.delete("-i")
-
 
21
 
-
 
22
end
10
 
23
 
11
 
24
 
12
if ARGV.length==2
25
if ARGV.length==2
13
  bindir=ARGV[1]
26
  bindir=ARGV[1]
14
  puts `rm -rf #{bindir}`
27
  puts `rm -rf #{bindir}`
15
else
28
else
16
  bindir="bin"
29
  bindir="bin"
17
end
30
end
18
 
31
 
19
 
32
 
20
 ARGV<<"" if ARGV==[]
33
 ARGV<<"" if ARGV==[]
21
case ARGV[0]
34
case ARGV[0]
22
 when "loeti"
35
 when "loeti"
23
  screensizes=["176x220"]
36
  screensizes=["176x220"]
24
  voice_modes=["en_speedy"]
37
  voice_modes=["en_speedy"]
25
  bluetooth_modes=["on"]
38
  bluetooth_modes=["on"]
26
  devicecontrol_modes=["on"]
39
  devicecontrol_modes=["on"]
27
  fileapi_modes=["off"]
40
  fileapi_modes=["off"]
28
  cldc11_modes=["off"]
41
  cldc11_modes=["off"]
29
firmware_modes=["no_firmwares"]
42
firmware_modes=["no_firmwares"]
30
 
43
 
31
 when "p910"
44
 when "p910"
32
  screensizes=["200x300"]
45
  screensizes=["200x300"]
33
  voice_modes=["en_speedy"]
46
  voice_modes=["en_speedy"]
34
  bluetooth_modes=["off"]
47
  bluetooth_modes=["off"]
35
  devicecontrol_modes=["off"]
48
  devicecontrol_modes=["off"]
36
  fileapi_modes=["off"]
49
  fileapi_modes=["off"]
37
  cldc11_modes=["off"]
50
  cldc11_modes=["off"]
38
 
51
 
39
 when "test"
52
 when "test"
40
  screensizes=["240x320"]
53
  screensizes=["240x320"]
41
  voice_modes=["en_speedy"]
54
  voice_modes=["en_speedy"]
42
  bluetooth_modes=["on"]
55
  bluetooth_modes=["on"]
43
  devicecontrol_modes=["on"]
56
  devicecontrol_modes=["on"]
44
  fileapi_modes=["on"]
57
  fileapi_modes=["on"]
45
  cldc11_modes=["on"]
58
  cldc11_modes=["on"]
46
  #firmware_modes=["fc_mk3mag_firmwares"]
59
  #firmware_modes=["fc_mk3mag_firmwares"]
47
  #firmware_modes=["all_firmwares"]
60
  #firmware_modes=["all_firmwares"]
48
 
61
 
49
  firmware_modes=["no_firmwares"]
62
  firmware_modes=["no_firmwares"]
50
 
63
 
51
 when "wtk"
64
 when "wtk"
52
  screensizes=["240x320"]
65
  screensizes=["240x320"]
53
  voice_modes=["en_wav"]
66
  voice_modes=["en_wav"]
54
  bluetooth_modes=["on"]
67
  bluetooth_modes=["on"]
55
  devicecontrol_modes=["on"]
68
  devicecontrol_modes=["on"]
56
  fileapi_modes=["on"]
69
  fileapi_modes=["on"]
57
  cldc11_modes=["on"]
70
  cldc11_modes=["on"]
58
  #firmware_modes=["fc_mk3mag_firmwares"]
71
  #firmware_modes=["fc_mk3mag_firmwares"]
59
  #firmware_modes=["all_firmwares"]
72
  #firmware_modes=["all_firmwares"]
60
  firmware_modes=["all_firmwares"]
73
  firmware_modes=["all_firmwares"]
61
 
74
 
62
 when "bltest"
75
 when "bltest"
63
  screensizes=["240x320"]
76
  screensizes=["240x320"]
64
  voice_modes=["en_speedy"]
77
  voice_modes=["en_speedy"]
65
  bluetooth_modes=["on"]
78
  bluetooth_modes=["on"]
66
  devicecontrol_modes=["on"]
79
  devicecontrol_modes=["on"]
67
  fileapi_modes=["on"]
80
  fileapi_modes=["on"]
68
  cldc11_modes=["on"]
81
  cldc11_modes=["on"]
69
  firmware_modes=["all_firmwares"]
82
  firmware_modes=["all_firmwares"]
70
 
83
 
71
 when "test2"
84
 when "test2"
72
  screensizes=["176x220"]
85
  screensizes=["176x220"]
73
  voice_modes=["en_speedy"]
86
  voice_modes=["en_speedy"]
74
  bluetooth_modes=["on"]
87
  bluetooth_modes=["on"]
75
  devicecontrol_modes=["on"]
88
  devicecontrol_modes=["on"]
76
  fileapi_modes=["on"]
89
  fileapi_modes=["on"]
77
  cldc11_modes=["on"]
90
  cldc11_modes=["on"]
78
  firmware_modes=["all_firmwares"]
91
  firmware_modes=["all_firmwares"]
79
 
92
 
80
 when "off"
93
 when "off"
81
  screensizes=["240x320"]
94
  screensizes=["240x320"]
82
  voice_modes=["en_speedy"]
95
  voice_modes=["en_speedy"]
83
  bluetooth_modes=["off"]
96
  bluetooth_modes=["off"]
84
  devicecontrol_modes=["off"]
97
  devicecontrol_modes=["off"]
85
  fileapi_modes=["off"]
98
  fileapi_modes=["off"]
86
  cldc11_modes=["off"]
99
  cldc11_modes=["off"]
87
 
100
 
88
 when "alloff"
101
 when "alloff"
89
  screensizes=["128x128","176x220","200x300","240x320","340x400","480x640"]
102
  screensizes=["128x128","176x220","200x300","240x320","340x400","480x640"]
90
  voice_modes=["no_voice","de_tts","de_64kbit_tts","en_speedy","en_wav","de_wav"]
103
  voice_modes=["no_voice","de_tts","de_64kbit_tts","en_speedy","en_wav","de_wav"]
91
  bluetooth_modes=["off"]
104
  bluetooth_modes=["off"]
92
  devicecontrol_modes=["off"]
105
  devicecontrol_modes=["off"]
93
  fileapi_modes=["off"]
106
  fileapi_modes=["off"]
94
  cldc11_modes=["off"]
107
  cldc11_modes=["off"]
95
 
108
 
96
 when "n80"
109
 when "n80"
97
  bluetooth_modes=["on"]
110
  bluetooth_modes=["on"]
98
  screensizes=["340x400"]
111
  screensizes=["340x400"]
99
  voice_modes=["en_speedy"]
112
  voice_modes=["en_speedy"]
100
  fileapi_modes=["on"]
113
  fileapi_modes=["on"]
101
  devicecontrol_modes=["on"]
114
  devicecontrol_modes=["on"]
102
  cldc11_modes=["on"]
115
  cldc11_modes=["on"]
103
  firmware_modes=["all_firmwares"]
116
  firmware_modes=["all_firmwares"]
104
 when "common"
117
 when "common"
105
  screensizes=["128x128","176x220","200x300","240x320","340x400","480x640"]
118
  screensizes=["128x128","176x220","200x300","240x320","340x400","480x640"]
106
  voice_modes=["no_voice","de_tts","de_64kbit_tts","en_speedy","en_wav","de_wav"]
119
  voice_modes=["no_voice","de_tts","de_64kbit_tts","en_speedy","en_wav","de_wav"]
107
  bluetooth_modes=["on"]
120
  bluetooth_modes=["on"]
108
  fileapi_modes=["on"]
121
  fileapi_modes=["on"]
109
  devicecontrol_modes=["on"]
122
  devicecontrol_modes=["on"]
110
  cldc11_modes=["on"]
123
  cldc11_modes=["on"]
111
  firmware_modes=["all_firmwares"]
124
  firmware_modes=["all_firmwares"]
112
 
125
 
113
 else
126
 else
114
#  screensizes=["128x128","176x220","200x300","240x320","340x400","480x640"]
127
#  screensizes=["128x128","176x220","200x300","240x320","340x400","480x640"]
115
#  voice_modes=["no_voice","de_tts","de_64kbit_tts","en_speedy","en_wav","de_wav"]
128
#  voice_modes=["no_voice","de_tts","de_64kbit_tts","en_speedy","en_wav","de_wav"]
116
#  bluetooth_modes=["on","off"]
129
#  bluetooth_modes=["on","off"]
117
#  fileapi_modes=["on","off"]
130
#  fileapi_modes=["on","off"]
118
# devicecontrol_modes=["on","off"]
131
# devicecontrol_modes=["on","off"]
119
#  cldc11_modes=["on","off"]
132
#  cldc11_modes=["on","off"]
120
#  firmware_modes=["no_firmwares","fc_mk3mag_firmware","all_firmwares"]
133
#  firmware_modes=["no_firmwares","fc_mk3mag_firmware","all_firmwares"]
121
  puts "no valid profile given"
134
  puts "no valid profile given"
122
  exit
135
  exit
123
end
136
end
124
 
137
 
125
 
138
 
126
puts `mv build.props build.props.bak`
139
puts `mv build.props build.props.bak`
127
puts `ant clean`
140
puts `ant clean`
128
puts `mkdir #{bindir}`
141
puts `mkdir #{bindir}`
129
 
142
 
130
 
143
 
131
propertys={}
144
propertys={}
132
 
145
 
133
firmware_modes.each {|firmware|
146
firmware_modes.each {|firmware|
134
cldc11_modes.each { |cldc11|
147
cldc11_modes.each { |cldc11|
135
devicecontrol_modes.each { |devicecontrol|
148
devicecontrol_modes.each { |devicecontrol|
136
  fileapi_modes.each { |fileapi|
149
  fileapi_modes.each { |fileapi|
137
      bluetooth_modes.each { |bluetooth|
150
      bluetooth_modes.each { |bluetooth|
138
        screensizes.each { |screensize|
151
        screensizes.each { |screensize|
139
          voice_modes.each { |voice_mode|
152
          voice_modes.each { |voice_mode|
140
 
153
 
141
            p "cleaning ressources"
154
            p "cleaning ressources"
142
            p `rm -rf tmp/res`
155
            p `rm -rf tmp/res`
143
            p `mkdir tmp/res`
156
            p `mkdir tmp/res`
144
 
157
 
145
            p `cp -v res/images_by_screensize/#{screensize}/* tmp/res/`
158
            p `cp -v res/images_by_screensize/#{screensize}/* tmp/res/`
146
            p `cp -v res/langpacks/* tmp/res/`
159
            p `cp -v res/langpacks/* tmp/res/`
147
              p `cp -v res/firmwares/#{firmware}/* tmp/res/`
160
              p `cp -v res/firmwares/#{firmware}/* tmp/res/`
148
 
161
 
149
            propertys["screensize"]=screensize
162
            propertys["screensize"]=screensize
150
           
163
           
151
            p "voice_mode" + voice_mode
164
            p "voice_mode" + voice_mode
152
            p "Screensize " + screensize
165
            p "Screensize " + screensize
153
 
166
 
154
            propertys["voice_mode"]=voice_mode
167
            propertys["voice_mode"]=voice_mode
155
            propertys["bluetooth"]=bluetooth
168
            propertys["bluetooth"]=bluetooth
156
            propertys["fileapi"]=fileapi
169
            propertys["fileapi"]=fileapi
157
            propertys["devicecontrol"]=devicecontrol
170
            propertys["devicecontrol"]=devicecontrol
158
            propertys["cldc11"]=cldc11
171
            propertys["cldc11"]=cldc11
159
 
172
 
160
 
173
 
161
              propertys["basename"]="DUBwise-#{screensize}-#{cldc11=="on"?"cldc11":"cldc10"}-#{voice_mode}-#{firmware}-bluetooth_#{bluetooth}-fileapi_#{fileapi}-devicecontrol_#{devicecontrol}"
174
              propertys["basename"]="DUBwise-#{screensize}-#{cldc11=="on"?"cldc11":"cldc10"}-#{voice_mode}-#{firmware}-bluetooth_#{bluetooth}-fileapi_#{fileapi}-devicecontrol_#{devicecontrol}"
162
            p `cp -v res/voice_samples_by_name/#{voice_mode}/* tmp/res/`  
175
            p `cp -v res/voice_samples_by_name/#{voice_mode}/* tmp/res/`  
163
         
176
         
164
 
177
 
165
          prefs_file= File.new("build.props","w")
178
          prefs_file= File.new("build.props","w")
166
          propertys.each_pair {|name,value|
179
          propertys.each_pair {|name,value|
167
            p "writing props " + name+"="+value+"\n"
180
            p "writing props " + name+"="+value+"\n"
168
            prefs_file <<       name+"="+value+"\n"
181
            prefs_file <<       name+"="+value+"\n"
169
          }
182
          }
170
          prefs_file.close
183
          prefs_file.close
171
 
184
 
172
          `ant build`.each_line {       |l| puts l }
185
          `ant build`.each_line {       |l| puts l }
173
 
186
 
174
          `mkdir -p #{bindir}/#{screensize}/#{cldc11=="on"?"cldc11":"cldc10"}/#{voice_mode}/bluetooth_#{bluetooth}/fileapi_#{fileapi}/devicecontrol_#{devicecontrol}`
187
          `mkdir -p #{bindir}/#{screensize}/#{cldc11=="on"?"cldc11":"cldc10"}/#{voice_mode}/bluetooth_#{bluetooth}/fileapi_#{fileapi}/devicecontrol_#{devicecontrol}`
175
 
188
 
176
#          `mv build/bin/#{propertys["basename"]}* #{bindir}/#{screensize}/#{cldc11=="on"?"cldc11":"cldc10"}/#{voice_mode}/bluetooth_#{bluetooth}/fileapi_#{fileapi}/devicecontrol_#{devicecontrol}`
189
#          `mv build/bin/#{propertys["basename"]}* #{bindir}/#{screensize}/#{cldc11=="on"?"cldc11":"cldc10"}/#{voice_mode}/bluetooth_#{bluetooth}/fileapi_#{fileapi}/devicecontrol_#{devicecontrol}`
177
 
190
 
178
 
191
 
179
 
192
 
180
          `mkdir -p #{bindir}/#{screensize}/#{cldc11=="on"?"cldc11":"cldc10"}/#{voice_mode}/bluetooth_#{bluetooth}/fileapi_#{fileapi}/devicecontrol_#{devicecontrol}`
193
          `mkdir -p #{bindir}/#{screensize}/#{cldc11=="on"?"cldc11":"cldc10"}/#{voice_mode}/bluetooth_#{bluetooth}/fileapi_#{fileapi}/devicecontrol_#{devicecontrol}`
181
 
194
 
182
          `mv build/bin/#{propertys["basename"]}* #{bindir}/#{screensize}/#{cldc11=="on"?"cldc11":"cldc10"}/#{voice_mode}/bluetooth_#{bluetooth}/fileapi_#{fileapi}/devicecontrol_#{devicecontrol}`
195
          `mv build/bin/#{propertys["basename"]}* #{bindir}/#{screensize}/#{cldc11=="on"?"cldc11":"cldc10"}/#{voice_mode}/bluetooth_#{bluetooth}/fileapi_#{fileapi}/devicecontrol_#{devicecontrol}`
183
       
196
       
184
        }
197
        }
185
 
198
 
186
 
199
 
187
      }
200
      }
188
    }
201
    }
189
  }
202
  }
190
}
203
}
191
}
204
}
192
}
205
}
193
    puts `mv -v  build.props.bak build.props`
206
    puts `mv -v  build.props.bak build.props`
194
 
207
 
195
 
208