| OLD | NEW |
| 1 # coding: utf-8 | 1 # coding: utf-8 |
| 2 | 2 |
| 3 # This file is part of the Adblock Plus build tools, | 3 # This file is part of the Adblock Plus build tools, |
| 4 # Copyright (C) 2006-2013 Eyeo GmbH | 4 # Copyright (C) 2006-2013 Eyeo GmbH |
| 5 # | 5 # |
| 6 # Adblock Plus is free software: you can redistribute it and/or modify | 6 # Adblock Plus is free software: you can redistribute it and/or modify |
| 7 # it under the terms of the GNU General Public License version 3 as | 7 # it under the terms of the GNU General Public License version 3 as |
| 8 # published by the Free Software Foundation. | 8 # published by the Free Software Foundation. |
| 9 # | 9 # |
| 10 # Adblock Plus is distributed in the hope that it will be useful, | 10 # Adblock Plus is distributed in the hope that it will be useful, |
| (...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 185 if not key in data: | 185 if not key in data: |
| 186 files[path] += localeTools.generateStringEntry(key, value, path).enc
ode('utf-8') | 186 files[path] += localeTools.generateStringEntry(key, value, path).enc
ode('utf-8') |
| 187 else: | 187 else: |
| 188 files[path] = reference[file]['_origData'].encode('utf-8') | 188 files[path] = reference[file]['_origData'].encode('utf-8') |
| 189 | 189 |
| 190 def addMissingFiles(params, files): | 190 def addMissingFiles(params, files): |
| 191 templateData = { | 191 templateData = { |
| 192 'hasChrome': False, | 192 'hasChrome': False, |
| 193 'hasChromeRequires': False, | 193 'hasChromeRequires': False, |
| 194 'hasShutdownHandlers': False, | 194 'hasShutdownHandlers': False, |
| 195 'hasXMLHttpRequest': False, |
| 195 'hasVersionPref': False, | 196 'hasVersionPref': False, |
| 196 'chromeWindows': [], | 197 'chromeWindows': [], |
| 197 'requires': {}, | 198 'requires': {}, |
| 198 'metadata': params['metadata'], | 199 'metadata': params['metadata'], |
| 199 'multicompartment': params['multicompartment'], | 200 'multicompartment': params['multicompartment'], |
| 200 'applications': dict((v, k) for k, v in KNOWN_APPS.iteritems()), | 201 'applications': dict((v, k) for k, v in KNOWN_APPS.iteritems()), |
| 201 } | 202 } |
| 202 | 203 |
| 203 def checkScript(name): | 204 def checkScript(name): |
| 204 content = files[name] | 205 content = files[name] |
| 205 for match in re.finditer(r'(?:^|\s)require\(\s*"([\w\-]+)"\s*\)', content): | 206 for match in re.finditer(r'(?:^|\s)require\(\s*"([\w\-]+)"\s*\)', content): |
| 206 templateData['requires'][match.group(1)] = True | 207 templateData['requires'][match.group(1)] = True |
| 207 if name.startswith('chrome/content/'): | 208 if name.startswith('chrome/content/'): |
| 208 templateData['hasChromeRequires'] = True | 209 templateData['hasChromeRequires'] = True |
| 210 if name.startswith('lib/') and re.search(r'\bXMLHttpRequest\b', content): |
| 211 templateData['hasXMLHttpRequest'] = True |
| 209 if name == 'defaults/prefs.js': | 212 if name == 'defaults/prefs.js': |
| 210 if re.search(r'\.currentVersion"', content): | 213 if re.search(r'\.currentVersion"', content): |
| 211 templateData['hasVersionPref'] = True | 214 templateData['hasVersionPref'] = True |
| 212 if not '/' in name or name.startswith('lib/'): | 215 if not '/' in name or name.startswith('lib/'): |
| 213 if re.search(r'(?:^|\s)onShutdown\.', content): | 216 if re.search(r'(?:^|\s)onShutdown\.', content): |
| 214 templateData['hasShutdownHandlers'] = True | 217 templateData['hasShutdownHandlers'] = True |
| 215 | 218 |
| 216 for name, content in files.iteritems(): | 219 for name, content in files.iteritems(): |
| 217 if name == 'chrome.manifest': | 220 if name == 'chrome.manifest': |
| 218 templateData['hasChrome'] = True | 221 templateData['hasChrome'] = True |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 327 if not 'bootstrap.js' in files: | 330 if not 'bootstrap.js' in files: |
| 328 addMissingFiles(params, files) | 331 addMissingFiles(params, files) |
| 329 if keyFile: | 332 if keyFile: |
| 330 signFiles(files, keyFile) | 333 signFiles(files, keyFile) |
| 331 files.zip(outFile, sortKey=lambda x: '!' if x == 'META-INF/zigbert.rsa' else x
) | 334 files.zip(outFile, sortKey=lambda x: '!' if x == 'META-INF/zigbert.rsa' else x
) |
| 332 | 335 |
| 333 def autoInstall(baseDir, type, host, port, multicompartment=False): | 336 def autoInstall(baseDir, type, host, port, multicompartment=False): |
| 334 fileBuffer = StringIO() | 337 fileBuffer = StringIO() |
| 335 createBuild(baseDir, type=type, outFile=fileBuffer, multicompartment=multicomp
artment) | 338 createBuild(baseDir, type=type, outFile=fileBuffer, multicompartment=multicomp
artment) |
| 336 urllib.urlopen('http://%s:%s/' % (host, port), data=fileBuffer.getvalue()) | 339 urllib.urlopen('http://%s:%s/' % (host, port), data=fileBuffer.getvalue()) |
| OLD | NEW |