Mercurial > hg > graal-jvmci-8
comparison mxtool/mx.py @ 16845:1fd7bb00a77f
clean up generated IDE content for distributions as part of 'mx ideclean'
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Fri, 15 Aug 2014 13:17:41 +0200 |
parents | 7eca83fd5419 |
children | e3dd75b3c290 |
comparison
equal
deleted
inserted
replaced
16844:e14dedb367e8 | 16845:1fd7bb00a77f |
---|---|
92 def __str__(self): | 92 def __str__(self): |
93 return self.name | 93 return self.name |
94 | 94 |
95 def add_update_listener(self, listener): | 95 def add_update_listener(self, listener): |
96 self.update_listeners.add(listener) | 96 self.update_listeners.add(listener) |
97 | |
98 """ | |
99 Gets the directory in which the IDE project configuration | |
100 for this distribution is generated. | |
101 """ | |
102 def get_ide_project_dir(self): | |
103 if hasattr(self, 'subDir'): | |
104 return join(self.suite.dir, self.subDir, self.name + '.dist') | |
105 else: | |
106 return join(self.suite.dir, self.name + '.dist') | |
97 | 107 |
98 def make_archive(self): | 108 def make_archive(self): |
99 # are sources combined into main archive? | 109 # are sources combined into main archive? |
100 unified = self.path == self.sourcesPath | 110 unified = self.path == self.sourcesPath |
101 | 111 |
952 if arcname == config: | 962 if arcname == config: |
953 arc.zf.writestr(arcname, '\n'.join(aps)) | 963 arc.zf.writestr(arcname, '\n'.join(aps)) |
954 else: | 964 else: |
955 arc.zf.writestr(arcname, lp.read(arcname)) | 965 arc.zf.writestr(arcname, lp.read(arcname)) |
956 d.add_update_listener(_refineAnnotationProcessorServiceConfig) | 966 d.add_update_listener(_refineAnnotationProcessorServiceConfig) |
967 self.dists.append(d) | |
957 | 968 |
958 if self.name is None: | 969 if self.name is None: |
959 abort('Missing "suite=<name>" in ' + projectsFile) | 970 abort('Missing "suite=<name>" in ' + projectsFile) |
960 | 971 |
961 def _commands_name(self): | 972 def _commands_name(self): |
3539 | 3550 |
3540 # Create an Eclipse project for each distribution that will create/update the archive | 3551 # Create an Eclipse project for each distribution that will create/update the archive |
3541 # for the distribution whenever any (transitively) dependent project of the | 3552 # for the distribution whenever any (transitively) dependent project of the |
3542 # distribution is updated. | 3553 # distribution is updated. |
3543 for dist in suite.dists: | 3554 for dist in suite.dists: |
3544 if hasattr(dist, 'subDir'): | 3555 projectDir = dist.get_ide_project_dir() |
3545 projectDir = join(suite.dir, dist.subDir, dist.name + '.dist') | |
3546 else: | |
3547 projectDir = join(suite.dir, dist.name + '.dist') | |
3548 if not exists(projectDir): | 3556 if not exists(projectDir): |
3549 os.makedirs(projectDir) | 3557 os.makedirs(projectDir) |
3550 distProjects = [d for d in dist.sorted_deps(transitive=True) if d.isProject()] | 3558 distProjects = [d for d in dist.sorted_deps(transitive=True) if d.isProject()] |
3551 relevantResources = [] | 3559 relevantResources = [] |
3552 for p in distProjects: | 3560 for p in distProjects: |
4287 try: | 4295 try: |
4288 rm(join(p.dir, p.name + '.jar')) | 4296 rm(join(p.dir, p.name + '.jar')) |
4289 except: | 4297 except: |
4290 log("Error removing {0}".format(p.name + '.jar')) | 4298 log("Error removing {0}".format(p.name + '.jar')) |
4291 | 4299 |
4300 for d in _dists.itervalues(): | |
4301 shutil.rmtree(d.get_ide_project_dir(), ignore_errors=True) | |
4302 | |
4292 | 4303 |
4293 def ideinit(args, refreshOnly=False): | 4304 def ideinit(args, refreshOnly=False): |
4294 """(re)generate Eclipse, NetBeans and Intellij project configurations""" | 4305 """(re)generate Eclipse, NetBeans and Intellij project configurations""" |
4295 eclipseinit(args, refreshOnly=refreshOnly) | 4306 eclipseinit(args, refreshOnly=refreshOnly) |
4296 netbeansinit(args, refreshOnly=refreshOnly) | 4307 netbeansinit(args, refreshOnly=refreshOnly) |