Subversion Repositories Projects

Rev

Rev 255 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

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