Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(278)

Side by Side Diff: tools/create_debian_packages.py

Issue 208393003: Add default tar file name for source tarball (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | tools/create_tarball.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # 2 #
3 # Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 3 # Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
4 # for details. All rights reserved. Use of this source code is governed by a 4 # for details. All rights reserved. Use of this source code is governed by a
5 # BSD-style license that can be found in the LICENSE file. 5 # BSD-style license that can be found in the LICENSE file.
6 # 6 #
7 7
8 # Script to build a Debian packages from a Dart tarball. The script 8 # Script to build a Debian packages from a Dart tarball. The script
9 # will build a source package and a 32-bit (i386) and 64-bit (amd64) 9 # will build a source package and a 32-bit (i386) and 64-bit (amd64)
10 # binary packages. 10 # binary packages.
11 11
12 import optparse 12 import optparse
13 import platform
13 import sys 14 import sys
14 import tarfile 15 import tarfile
15 import subprocess 16 import subprocess
16 import utils 17 import utils
17 18 import os
18 from os.path import join, exists, abspath 19 from os.path import join, exists, abspath
19 from shutil import copyfile 20 from shutil import copyfile
20 21
21 HOST_OS = utils.GuessOS() 22 HOST_OS = utils.GuessOS()
22 HOST_CPUS = utils.GuessCpus() 23 HOST_CPUS = utils.GuessCpus()
23 DART_DIR = abspath(join(__file__, '..', '..')) 24 DART_DIR = abspath(join(__file__, '..', '..'))
24 25
25 def BuildOptions(): 26 def BuildOptions():
26 result = optparse.OptionParser() 27 result = optparse.OptionParser()
27 result.add_option("--tar_filename", 28 result.add_option("--tar_filename",
28 default=None, 29 default=None,
29 help="The tar file to build from.") 30 help="The tar file to build from.")
30 result.add_option("--out_dir", 31 result.add_option("--out_dir",
31 default=None, 32 default=None,
32 help="Where to put the packages.") 33 help="Where to put the packages.")
33 34
34 return result 35 return result
35 36
36 def RunBuildPackage(opt, cwd): 37 def RunBuildPackage(opt, cwd):
37 cmd = ['dpkg-buildpackage', '-j%d' % HOST_CPUS] 38 cmd = ['dpkg-buildpackage', '-j%d' % HOST_CPUS]
38 cmd.extend(opt) 39 cmd.extend(opt)
39 process = subprocess.Popen(cmd, 40 process = subprocess.Popen(cmd,
40 stdout=subprocess.PIPE, stderr=subprocess.PIPE, 41 stdout=subprocess.PIPE, stderr=subprocess.PIPE,
41 cwd=cwd) 42 cwd=cwd)
42 (stdout, stderr) = process.communicate() 43 (stdout, stderr) = process.communicate()
43 if process.returncode != 0: 44 if process.returncode != 0:
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 '%s-1.dsc' % debbase, 79 '%s-1.dsc' % debbase,
79 '%s.orig.tar.gz' % debbase, 80 '%s.orig.tar.gz' % debbase,
80 '%s-1.debian.tar.gz' % debbase 81 '%s-1.debian.tar.gz' % debbase
81 ] 82 ]
82 i386_package = [ 83 i386_package = [
83 '%s-1_i386.deb' % debbase 84 '%s-1_i386.deb' % debbase
84 ] 85 ]
85 amd64_package = [ 86 amd64_package = [
86 '%s-1_amd64.deb' % debbase 87 '%s-1_amd64.deb' % debbase
87 ] 88 ]
89
88 for name in source_package: 90 for name in source_package:
89 copyfile(join(temp_dir, name), join(out_dir, name)) 91 copyfile(join(temp_dir, name), join(out_dir, name))
90 for name in i386_package: 92 for name in i386_package:
91 copyfile(join(temp_dir, name), join(out_dir, name)) 93 copyfile(join(temp_dir, name), join(out_dir, name))
92 for name in amd64_package: 94 for name in amd64_package:
93 copyfile(join(temp_dir, name), join(out_dir, name)) 95 copyfile(join(temp_dir, name), join(out_dir, name))
94 96
95 def Main(): 97 def Main():
96 if HOST_OS != 'linux': 98 if HOST_OS != 'linux':
97 print 'Debian build only supported on linux' 99 print 'Debian build only supported on linux'
98 return -1 100 return -1
99 101
100 options, args = BuildOptions().parse_args() 102 options, args = BuildOptions().parse_args()
101 out_dir = options.out_dir 103 out_dir = options.out_dir
102 tar_filename = options.tar_filename 104 tar_filename = options.tar_filename
103 if not options.out_dir: 105 if not options.out_dir:
104 out_dir = join(DART_DIR, utils.GetBuildDir(HOST_OS, HOST_OS)) 106 out_dir = join(DART_DIR, utils.GetBuildDir(HOST_OS, HOST_OS))
105 if not options.tar_filename: 107
106 raise Exception('Please specify the input filename.') 108 if not tar_filename:
107 BuildDebianPackage(options.tar_filename, options.out_dir) 109 tar_filename = join(DART_DIR,
110 utils.GetBuildDir(HOST_OS, HOST_OS),
111 'dart-%s.tar.gz' % utils.GetVersion())
112
113 BuildDebianPackage(tar_filename, out_dir)
108 114
109 if __name__ == '__main__': 115 if __name__ == '__main__':
110 sys.exit(Main()) 116 sys.exit(Main())
OLDNEW
« no previous file with comments | « no previous file | tools/create_tarball.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698