blob: aee425199fbdc9a544ed1aafec475b14dfde0529 [file] [log] [blame]
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -07001# Copyright (c) 2009-2015 The Chromium OS Authors. All rights reserved.
Ryan Cui0af7a912012-06-18 18:00:47 -07002# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
Gilad Arnold8f0df7f2015-06-05 15:03:08 -07005"""Strip packages and place them in <sysroot>/stripped-packages."""
Ryan Cui0af7a912012-06-18 18:00:47 -07006
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -07007from __future__ import print_function
8
9import argparse
Yu-Ju Honge2b3f742013-11-08 11:33:09 -080010import sys
Ryan Cui0af7a912012-06-18 18:00:47 -070011
Gilad Arnoldabb352e2012-09-23 01:24:27 -070012import builder
13
Ryan Cui0af7a912012-06-18 18:00:47 -070014
15def main():
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -070016 parser = argparse.ArgumentParser()
17 target = parser.add_mutually_exclusive_group(required=True)
18 target.add_argument('--board',
Gilad Arnold8f0df7f2015-06-05 15:03:08 -070019 help='The board that processed packages belong to.')
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -070020 target.add_argument('--sysroot',
Gilad Arnold8f0df7f2015-06-05 15:03:08 -070021 help=('Sysroot that processed packages belong to. '
22 'This is incompatible with --board.'))
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -070023 parser.add_argument('--deep', action='store_true',
Gilad Arnold8f0df7f2015-06-05 15:03:08 -070024 help='Also strip dependencies of packages.')
25 parser.add_argument('packages', nargs='+', metavar='package',
26 help='Package to strip.')
Ryan Cui0af7a912012-06-18 18:00:47 -070027
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -070028 options = parser.parse_args()
29 sysroot = options.sysroot or '/build/%s' % options.board
Ryan Cui0af7a912012-06-18 18:00:47 -070030
Gilad Arnold8f0df7f2015-06-05 15:03:08 -070031 # Check if packages were installed.
32 if not builder.UpdateGmergeBinhost(sysroot, options.packages, options.deep):
Yu-Ju Honge2b3f742013-11-08 11:33:09 -080033 sys.exit(1)
Ryan Cui0af7a912012-06-18 18:00:47 -070034
35
36if __name__ == '__main__':
37 main()