diff -r f5050f1da672 -r 04becd199f91 build/buildutils/fixmmp.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/build/buildutils/fixmmp.py Tue Apr 27 16:30:29 2010 +0300 @@ -0,0 +1,90 @@ +# +# 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: +# + +import sys, os, re +import traceback +from optparse import OptionParser + +TMP_RE = re.compile(r"^SYSTEMINCLUDE\s+(.+[\\/])?tmp$\n", re.MULTILINE) +DRIVE_RE = re.compile("(SYSTEMINCLUDE\s+|SOURCEPATH\s+)[a-zA-Z]:") +RESOURCE_RE = re.compile(r"\nSTART RESOURCE.*?\nEND\n", re.DOTALL) +TIME_RE = re.compile(r"(// Generated by qmake .*? on): .*") + +def main(): + parser = OptionParser( + usage = "Usage: %prog [args] ") + + parser.add_option( + "--driveletter", dest = "driveletter", action = "store_true", default = False) + parser.add_option( + "--tmp-dirs", dest = "tmpDirs", action = "store_true", default = False) + parser.add_option( + "--resource", dest = "resource", action = "store_true", default = False) + parser.add_option( + "--datetime", dest = "datetime", action = "store_true", default = False) + parser.add_option( + "--mocpath", dest = "mocpath", action = "store_true", default = False) + parser.add_option( + "--header", dest = "header") + + (opts, args) = parser.parse_args() + + try: + inputFile = args[0] + outputFile = args[1] + + # Read mmp file + fin = open(inputFile) + mmp = fin.read() + fin.close() + + # Remove /tmp directories from system includes + if opts.tmpDirs: + mmp = TMP_RE.sub("", mmp) + + # Remove driveletter from systeminclude and sourcepath + if opts.driveletter: + mmp = DRIVE_RE.sub("\\1", mmp) + + # Remove resource block + if opts.resource: + mmp = RESOURCE_RE.sub("", mmp) + + # Remove changing time + if opts.datetime: + mmp = TIME_RE.sub("\\1: (date)", mmp) + + # Fix MOC path (in bld.inf) + if opts.mocpath: + mmp = mmp.replace(r"/epoc32/tools/qt/moc.exe", + r"$(EPOCROOT)epoc32/tools/qt/moc.exe") + + # Add header + if opts.header: + headerText = open(opts.header).read() + mmp = headerText + mmp + + # Write mmp file + open(outputFile, "w").write(mmp) + + except: + print "Usage: %s inputFile outputFile" % sys.argv[0] + traceback.print_exc() + sys.exit(1) + + +if __name__ == "__main__": + main()