platform_build/tools/fileslist.py
Ying Wang e5e8c5f218 Move forward installed-files.txt in the dependency graph
Bug: 5265104
- Move installed-files.txt forward to ahead of system.img in the
dependency graph, so that even if the system.img fails to build due to
too large size we can still get the size stats.
- Change the script tools/fileslist.py to sort items in decreasing size.

Change-Id: I5913bc51971e341ffbfcf3fa449c987f126e409b
2011-09-09 17:07:23 -07:00

45 lines
1.3 KiB
Python
Executable file

#!/usr/bin/env python
#
# Copyright (C) 2009 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the 'License');
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an 'AS IS' BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
import operator, os, sys
def get_file_size(path):
st = os.lstat(path)
return st.st_size;
def main(argv):
output = []
roots = argv[1:]
for root in roots:
base = len(root[:root.rfind(os.path.sep)])
for dir, dirs, files in os.walk(root):
relative = dir[base:]
for f in files:
try:
row = (
get_file_size(os.path.sep.join((dir, f))),
os.path.sep.join((relative, f)),
)
output.append(row)
except os.error:
pass
output.sort(key=operator.itemgetter(0), reverse=True)
for row in output:
print "%12d %s" % row
if __name__ == '__main__':
main(sys.argv)