| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 """Creates a directory with with the unpacked contents of the remoting webapp. | 6 """Creates a directory with with the unpacked contents of the remoting webapp. |
| 7 | 7 |
| 8 The directory will contain a copy-of or a link-to to all remoting webapp | 8 The directory will contain a copy-of or a link-to to all remoting webapp |
| 9 resources. This includes HTML/JS and any plugin binaries. The script also | 9 resources. This includes HTML/JS and any plugin binaries. The script also |
| 10 massages resulting files appropriately with host plugin data. Finally, | 10 massages resulting files appropriately with host plugin data. Finally, |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 # to create a symlink in that case. | 117 # to create a symlink in that case. |
| 118 targetname = os.path.relpath(os.path.realpath(current_file), | 118 targetname = os.path.relpath(os.path.realpath(current_file), |
| 119 os.path.realpath(destination_file)) | 119 os.path.realpath(destination_file)) |
| 120 os.symlink(targetname, destination_file) | 120 os.symlink(targetname, destination_file) |
| 121 else: | 121 else: |
| 122 shutil.copy2(current_file, destination_file) | 122 shutil.copy2(current_file, destination_file) |
| 123 | 123 |
| 124 # Copy all the locales, preserving directory structure | 124 # Copy all the locales, preserving directory structure |
| 125 destination_locales = os.path.join(destination, "_locales") | 125 destination_locales = os.path.join(destination, "_locales") |
| 126 os.mkdir(destination_locales , 0775) | 126 os.mkdir(destination_locales , 0775) |
| 127 locale_dir = "/_locales/" | 127 remoting_locales = os.path.join(destination, "remoting_locales") |
| 128 os.mkdir(remoting_locales , 0775) |
| 128 for current_locale in locales: | 129 for current_locale in locales: |
| 129 pos = current_locale.find(locale_dir) | 130 extension = os.path.splitext(current_locale)[1] |
| 130 if (pos == -1): | 131 if extension == '.json': |
| 131 raise Exception("Missing locales directory in " + current_locale) | 132 locale_id = os.path.split(os.path.split(current_locale)[0])[1] |
| 132 subtree = current_locale[pos + len(locale_dir):] | 133 destination_dir = os.path.join(destination_locales, locale_id) |
| 133 pos = subtree.find("/") | 134 destination_file = os.path.join(destination_dir, |
| 134 if (pos == -1): | 135 os.path.split(current_locale)[1]) |
| 135 raise Exception("Malformed locale: " + current_locale) | 136 os.mkdir(destination_dir, 0775) |
| 136 locale_id = subtree[:pos] | 137 shutil.copy2(current_locale, destination_file) |
| 137 messages = subtree[pos+1:] | 138 elif extension == '.pak': |
| 138 destination_dir = os.path.join(destination_locales, locale_id) | 139 destination_file = os.path.join(remoting_locales, |
| 139 destination_file = os.path.join(destination_dir, messages) | 140 os.path.split(current_locale)[1]) |
| 140 os.mkdir(destination_dir, 0775) | 141 shutil.copy2(current_locale, destination_file) |
| 141 shutil.copy2(current_locale, destination_file) | 142 else: |
| 143 raise Exception("Unknown extension: " + current_locale); |
| 142 | 144 |
| 143 # Create fake plugin files to appease the manifest checker. | 145 # Create fake plugin files to appease the manifest checker. |
| 144 # It requires that if there is a plugin listed in the manifest that | 146 # It requires that if there is a plugin listed in the manifest that |
| 145 # there be a file in the plugin with that name. | 147 # there be a file in the plugin with that name. |
| 146 names = [ | 148 names = [ |
| 147 'remoting_host_plugin.dll', # Windows | 149 'remoting_host_plugin.dll', # Windows |
| 148 'remoting_host_plugin.plugin', # Mac | 150 'remoting_host_plugin.plugin', # Mac |
| 149 'libremoting_host_plugin.ia32.so', # Linux 32 | 151 'libremoting_host_plugin.ia32.so', # Linux 32 |
| 150 'libremoting_host_plugin.x64.so' # Linux 64 | 152 'libremoting_host_plugin.x64.so' # Linux 64 |
| 151 ] | 153 ] |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 320 patches.append(arg) | 322 patches.append(arg) |
| 321 else: | 323 else: |
| 322 files.append(arg) | 324 files.append(arg) |
| 323 | 325 |
| 324 return buildWebApp(sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4], | 326 return buildWebApp(sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4], |
| 325 sys.argv[5], sys.argv[6], files, locales, patches) | 327 sys.argv[5], sys.argv[6], files, locales, patches) |
| 326 | 328 |
| 327 | 329 |
| 328 if __name__ == '__main__': | 330 if __name__ == '__main__': |
| 329 sys.exit(main()) | 331 sys.exit(main()) |
| OLD | NEW |