diff -r e8e63152f320 -r 2a9601315dfc build/buildutils/checkdistpolicyfiles.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/build/buildutils/checkdistpolicyfiles.py Mon May 03 12:27:20 2010 +0300 @@ -0,0 +1,83 @@ +#!/usr/bin/python +# +# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +# All rights reserved. +# This component and the accompanying materials are made available +# under the terms of "Eclipse Public License v1.0" +# which accompanies this distribution, and is available +# at the URL "http://www.eclipse.org/legal/epl-v10.html". +# +# Initial Contributors: +# Nokia Corporation - initial contribution. +# +# Contributors: +# +# Description: +# Searches all the distribution.file.s60 files recursively starting from +# a directory given as parameter, reports about missing files, generates +# usage report per distribution policy ID and generates a summary. + +import os, sys + +def main(): + + missingList = [] # List containing directories without policy file + idLists = {} # Set containing lists of directories for each distribution policy ID + + findFiles(sys.argv[1], missingList, idLists) + + missingList.sort(); + + for id in idLists: + idLists[id].sort + + ids = idLists.keys() + ids.sort() + + print "Analysis started from directory: " + sys.argv[1] + print "" + + print "Directories without distribution policy file:" + for dir in missingList: + print " " + dir + print "" + + for id in ids: + print "Directories with distribution policy ID " + id + ":" + list = idLists[id] + for dir in list: + print " " + dir + print "" + + +# Go through the directories recursively +# If some directory doesn't contain policy file, add that directory to the list of "directories without policy file" +# Else read the policy ID from the file and add the directory to the list corresponding to the found ID + + +def findFiles(startDir, missingList, idLists): + + def visitFun(arg, dirname, names): + try: + f = open(dirname + "\\distribution.policy.s60") + id = f.readline() + if id[len(id)-1] == '\n': + id = id[0:len(id)-1] + f.close() + + idList = idLists.get(id); + if idList == None: + idLists[id] = [ dirname ] + else: + idList.append(dirname) + + except IOError: + # file was not found + missingList.append(dirname) + + + os.path.walk(startDir, visitFun, None) + + +if __name__ == "__main__": + main()