|
12 | 12 |
|
13 | 13 | from subprocess import call
|
14 | 14 |
|
15 |
| -steps = ['nw', 'chromedriver', 'symbol', 'others'] |
| 15 | +steps = ['nw', 'chromedriver', 'symbol', 'headers', 'others'] |
16 | 16 | ################################
|
17 | 17 | # Parse command line args
|
18 | 18 | parser = argparse.ArgumentParser(description='Package nw binaries.')
|
|
33 | 33 | nw_ver = None # x.xx
|
34 | 34 | dist_dir = None # .../out/Release/dist
|
35 | 35 |
|
36 |
| -is_headers_ok = False # record whether nw-headers generated |
37 |
| - |
38 | 36 | step = args.step
|
39 | 37 | skip = args.skip
|
40 | 38 | binaries_location = args.path
|
@@ -201,26 +199,48 @@ def generate_target_symbols(platform_name, arch, version):
|
201 | 199 | exit(-1)
|
202 | 200 | return target
|
203 | 201 |
|
204 |
| -def generate_target_others(platform_name, arch, version): |
| 202 | +def generate_target_headers(platform_name, arch, version): |
| 203 | + # here, call make_nw_header tool to generate headers |
| 204 | + # then, move to binaries_location |
205 | 205 | target = {}
|
206 | 206 | target['output'] = ''
|
207 | 207 | target['compress'] = None
|
208 |
| - if platform_name == 'win': |
209 |
| - target['input'] = ['nw.exp', 'nw.lib'] |
210 |
| - elif platform_name == 'linux' : |
| 208 | + if platform_name == 'osx': |
211 | 209 | target['input'] = []
|
212 | 210 | # here , call make-nw-headers.py to generate nw headers
|
213 |
| - # after generated, move to dist_dir |
214 | 211 | make_nw_header = os.path.join(os.path.dirname(__file__), \
|
215 | 212 | 'make-nw-headers.py')
|
216 | 213 | print make_nw_header
|
217 | 214 | res = call(['python', make_nw_header])
|
218 | 215 | if res == 0:
|
219 |
| - global is_headers_ok |
220 |
| - is_headers_ok = True |
221 | 216 | print 'nw-headers generated'
|
| 217 | + nw_headers_name = 'nw-headers-v' + version + '.tar.gz' |
| 218 | + nw_headers_path = os.path.join(os.path.dirname(__file__), \ |
| 219 | + os.pardir, 'tmp', nw_headers_name) |
| 220 | + if os.path.isfile(os.path.join(binaries_location, nw_headers_name)): |
| 221 | + os.remove(os.path.join(binaries_location, nw_headers_name)) |
| 222 | + shutil.move(nw_headers_path, binaries_location) |
| 223 | + target['input'].append(nw_headers_name) |
222 | 224 | else:
|
| 225 | + #TODO, handle err |
223 | 226 | print 'nw-headers generate failed'
|
| 227 | + elif platform_name == 'win': |
| 228 | + target['input'] = [] |
| 229 | + elif platform_name == 'linux': |
| 230 | + target['input'] = [] |
| 231 | + else: |
| 232 | + print 'Unsupported platform: ' + platform_name |
| 233 | + exit(-1) |
| 234 | + return target |
| 235 | + |
| 236 | +def generate_target_others(platform_name, arch, version): |
| 237 | + target = {} |
| 238 | + target['output'] = '' |
| 239 | + target['compress'] = None |
| 240 | + if platform_name == 'win': |
| 241 | + target['input'] = ['nw.exp', 'nw.lib'] |
| 242 | + elif platform_name == 'linux' : |
| 243 | + target['input'] = [] |
224 | 244 | else:
|
225 | 245 | target['input'] = []
|
226 | 246 | return target
|
@@ -282,14 +302,6 @@ def make_packages(targets):
|
282 | 302 |
|
283 | 303 | # now let's do it
|
284 | 304 | os.mkdir(dist_dir)
|
285 |
| - # here check whether nw headers generated |
286 |
| - # if generated, mv to dist_dir |
287 |
| - if is_headers_ok: |
288 |
| - nw_headers_name = 'nw-headers-v' + nw_ver + '.tar.gz' |
289 |
| - nw_headers_path = os.path.join(os.path.dirname(__file__), \ |
290 |
| - os.pardir, 'tmp', nw_headers_name) |
291 |
| - print 'Moving "' + nw_headers_name + '"' |
292 |
| - shutil.move(nw_headers_path, dist_dir) |
293 | 305 | for t in targets:
|
294 | 306 | if len(t['input']) == 0:
|
295 | 307 | continue
|
@@ -327,6 +339,7 @@ def make_packages(targets):
|
327 | 339 | generators['nw'] = generate_target_nw
|
328 | 340 | generators['chromedriver'] = generate_target_chromedriver
|
329 | 341 | generators['symbol'] = generate_target_symbols
|
| 342 | +generators['headers'] = generate_target_headers |
330 | 343 | generators['others'] = generate_target_others
|
331 | 344 | ################################
|
332 | 345 | # Process targets
|
|
0 commit comments