comparison mx.graal/mx_graal.py @ 22042:db48a62aba36

only (re)make archives from build command if at least one compilation occurred
author Doug Simon <doug.simon@oracle.com>
date Sun, 21 Jun 2015 21:43:13 +0200
parents 56c50504d60d
children 0e095e2c24e2
comparison
equal deleted inserted replaced
22041:56c50504d60d 22042:db48a62aba36
2368 # com.oracle.jvmci.options.Options service created by 2368 # com.oracle.jvmci.options.Options service created by
2369 # com.oracle.jvmci.options.processor.OptionProcessor. 2369 # com.oracle.jvmci.options.processor.OptionProcessor.
2370 optionsOwner = arcname[len('META-INF/jvmci.options/'):] 2370 optionsOwner = arcname[len('META-INF/jvmci.options/'):]
2371 provider = optionsOwner + '_Options' 2371 provider = optionsOwner + '_Options'
2372 self.expectedOptionsProviders.add(provider.replace('.', '/') + '.class') 2372 self.expectedOptionsProviders.add(provider.replace('.', '/') + '.class')
2373 #assert exists(providerClassfile), 'missing generated Options provider ' + providerClassfile
2374 self.services.setdefault('com.oracle.jvmci.options.Options', []).append(provider) 2373 self.services.setdefault('com.oracle.jvmci.options.Options', []).append(provider)
2375 return False 2374 return False
2376 2375
2377 def __addsrc__(self, arcname, contents): 2376 def __addsrc__(self, arcname, contents):
2378 return False 2377 return False
2380 def __closing__(self): 2379 def __closing__(self):
2381 self.expectedOptionsProviders -= set(self.arc.zf.namelist()) 2380 self.expectedOptionsProviders -= set(self.arc.zf.namelist())
2382 assert len(self.expectedOptionsProviders) == 0, 'missing generated Options providers:\n ' + '\n '.join(self.expectedOptionsProviders) 2381 assert len(self.expectedOptionsProviders) == 0, 'missing generated Options providers:\n ' + '\n '.join(self.expectedOptionsProviders)
2383 for service, providers in self.jvmciServices.iteritems(): 2382 for service, providers in self.jvmciServices.iteritems():
2384 arcname = 'META-INF/jvmci.services/' + service 2383 arcname = 'META-INF/jvmci.services/' + service
2385 self.arc.zf.writestr(arcname, '\n'.join(providers)) 2384 # Convert providers to a set before printing to remove duplicates
2385 self.arc.zf.writestr(arcname, '\n'.join(frozenset(providers)))
2386 2386
2387 def mx_post_parse_cmd_line(opts): # 2387 def mx_post_parse_cmd_line(opts): #
2388 # TODO _minVersion check could probably be part of a Suite in mx? 2388 # TODO _minVersion check could probably be part of a Suite in mx?
2389 def _versionCheck(version): 2389 def _versionCheck(version):
2390 return version >= _minVersion and (not _untilVersion or version >= _untilVersion) 2390 return version >= _minVersion and (not _untilVersion or version >= _untilVersion)