build/buildutils/replacevalues.py
branchRCL_3
changeset 19 04becd199f91
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build/buildutils/replacevalues.py	Tue Apr 27 16:30:29 2010 +0300
@@ -0,0 +1,57 @@
+#
+# 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 socket, sys, os
+import traceback
+
+def main():
+    try:
+        # Assuming key-value pairs like key=value
+        inputFile = sys.argv[1]
+        outputFile = sys.argv[2]
+        
+        values = {}
+        
+        for pair in sys.argv[3:]:
+            key, value = pair.split("=", 1)
+            values[key] = value
+         
+        replaceInFile(inputFile, outputFile, values)
+        
+    except:
+        print "Usage: %s inputFile outputFile <key=value> ..." % sys.argv[0]
+        print "Replaces all occurrences of <key> with <value> <file>"
+        traceback.print_exc()
+        sys.exit(1)
+
+
+def replaceInFile(srcFile, dstFile, values={}):
+    # Binary mode => no line feed conversions
+    f = open(srcFile, "rb")
+    data = f.read()
+    f.close()
+    
+    for key, value in values.items():
+        data = data.replace("${%s}" % key, value)
+    
+    # Binary mode => no line feed conversions
+    f = open(dstFile, "wb")
+    f.write(data)
+    f.close()
+
+
+if __name__ == "__main__":
+    main()