blob: 5542eaabf51804d0df28b8d256fea00e492f613e [file] [log] [blame]
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -07001#!/usr/bin/python2
2# Copyright (c) 2009-2015 The Chromium OS Authors. All rights reserved.
Ryan Cui0af7a912012-06-18 18:00:47 -07003# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5
Gilad Arnold8f0df7f2015-06-05 15:03:08 -07006"""Strip packages and place them in <sysroot>/stripped-packages."""
Ryan Cui0af7a912012-06-18 18:00:47 -07007
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -07008from __future__ import print_function
9
10import argparse
Yu-Ju Honge2b3f742013-11-08 11:33:09 -080011import sys
Ryan Cui0af7a912012-06-18 18:00:47 -070012
Gilad Arnoldabb352e2012-09-23 01:24:27 -070013import builder
14
Ryan Cui0af7a912012-06-18 18:00:47 -070015
16def main():
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -070017 parser = argparse.ArgumentParser()
18 target = parser.add_mutually_exclusive_group(required=True)
19 target.add_argument('--board',
Gilad Arnold8f0df7f2015-06-05 15:03:08 -070020 help='The board that processed packages belong to.')
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -070021 target.add_argument('--sysroot',
Gilad Arnold8f0df7f2015-06-05 15:03:08 -070022 help=('Sysroot that processed packages belong to. '
23 'This is incompatible with --board.'))
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -070024 parser.add_argument('--deep', action='store_true',
Gilad Arnold8f0df7f2015-06-05 15:03:08 -070025 help='Also strip dependencies of packages.')
26 parser.add_argument('packages', nargs='+', metavar='package',
27 help='Package to strip.')
Ryan Cui0af7a912012-06-18 18:00:47 -070028
Bertrand SIMONNET2dddf4f2015-04-30 17:23:26 -070029 options = parser.parse_args()
30 sysroot = options.sysroot or '/build/%s' % options.board
Ryan Cui0af7a912012-06-18 18:00:47 -070031
Gilad Arnold8f0df7f2015-06-05 15:03:08 -070032 # Check if packages were installed.
33 if not builder.UpdateGmergeBinhost(sysroot, options.packages, options.deep):
Yu-Ju Honge2b3f742013-11-08 11:33:09 -080034 sys.exit(1)
Ryan Cui0af7a912012-06-18 18:00:47 -070035
36
37if __name__ == '__main__':
38 main()