Subversion Repositories Projects

Rev

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

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