48 # Path for java loc files inside RESOURCES_FILE. |
48 # Path for java loc files inside RESOURCES_FILE. |
49 RESOURCES_PATH = os.path.join("resources", "com", "nokia", "mj", "impl") |
49 RESOURCES_PATH = os.path.join("resources", "com", "nokia", "mj", "impl") |
50 |
50 |
51 def main(): |
51 def main(): |
52 parser = OptionParser( |
52 parser = OptionParser( |
53 usage = "Usage: %prog [args] <input_dir> <output_dir>") |
53 usage = "Usage: %prog [args] <input_dir> <output_dir> <loc-file.jar>") |
|
54 parser.add_option( |
|
55 "--files", dest = "files", default = ",".join(JAVA_LOC_FILES), |
|
56 help = "list of Java loc files to read from input (default: %s)" % |
|
57 ",".join(JAVA_LOC_FILES)) |
54 (opts, args) = parser.parse_args() |
58 (opts, args) = parser.parse_args() |
|
59 |
|
60 locFiles = opts.files.split(",") |
55 |
61 |
56 try: |
62 try: |
57 inputDir = args[0] |
63 inputDir = args[0] |
58 outputDir = args[1] |
64 outputDir = args[1] |
59 resourcesFilename = os.path.join(outputDir, args[2]) |
65 resourcesFilename = os.path.join(outputDir, args[2]) |
65 inFilename = os.path.join(dirname, file) |
71 inFilename = os.path.join(dirname, file) |
66 if LOC_ZIP_FILE.match(file) and zipfile.is_zipfile(inFilename): |
72 if LOC_ZIP_FILE.match(file) and zipfile.is_zipfile(inFilename): |
67 outFilename = os.path.join(outputDir, file.lower()) |
73 outFilename = os.path.join(outputDir, file.lower()) |
68 (fileIndex, fileExt) = os.path.splitext(file) |
74 (fileIndex, fileExt) = os.path.splitext(file) |
69 print "Extracting %s" % inFilename |
75 print "Extracting %s" % inFilename |
70 extractJavaLocFiles(fileIndex, inFilename) |
76 extractJavaLocFiles(locFiles, fileIndex, inFilename) |
71 print "Creating %s" % outFilename |
77 print "Creating %s" % outFilename |
72 os.system("jar cfM " + outFilename + " " + fileIndex) |
78 os.system("jar cfM " + outFilename + " " + fileIndex) |
73 print "Updating %s" % resourcesFilename |
79 print "Updating %s" % resourcesFilename |
74 updateResources(fileIndex, resourcesFilename) |
80 updateResources(fileIndex, resourcesFilename) |
75 # Remove temporary fileIndex directory. |
81 # Remove temporary fileIndex directory. |
81 except: |
87 except: |
82 print "Usage: %s <input_dir> <output_dir>" % sys.argv[0] |
88 print "Usage: %s <input_dir> <output_dir>" % sys.argv[0] |
83 traceback.print_exc() |
89 traceback.print_exc() |
84 sys.exit(1) |
90 sys.exit(1) |
85 |
91 |
86 def extractJavaLocFiles(index, inFilename): |
92 def extractJavaLocFiles(locFiles, index, inFilename): |
87 javaLocFiles = "" |
93 javaLocFiles = "" |
88 for javaLocFile in JAVA_LOC_FILES: |
94 for javaLocFile in locFiles: |
89 javaLocFilename = os.path.join(index, javaLocFile + "_" + index + ".loc") |
95 javaLocFilename = index + "/" + javaLocFile + "_" + index + ".loc" |
90 javaLocFiles = javaLocFiles + " " + javaLocFilename |
96 javaLocFiles = javaLocFiles + " " + javaLocFilename |
91 os.system("jar xf " + inFilename + javaLocFiles) |
97 command = "jar xf " + inFilename + javaLocFiles |
|
98 os.system(command) |
92 |
99 |
93 def updateResources(index, resourcesFilename): |
100 def updateResources(index, resourcesFilename): |
94 resourcesDir = os.path.join(index, RESOURCES_PATH) |
101 resourcesDir = os.path.join(index, RESOURCES_PATH) |
95 if not os.path.isdir(resourcesDir): |
102 if not os.path.isdir(resourcesDir): |
96 os.makedirs(resourcesDir) |
103 os.makedirs(resourcesDir) |