comparison mx/mx_graal_makefile.py @ 21955:3ce35131bff2

Introduce clean target in jvmci.make
author Stefan Anzinger <stefan.anzinger@oracle.com>
date Fri, 12 Jun 2015 18:02:58 +0200
parents 185d7a9a2cfa
children 555f788b964b
comparison
equal deleted inserted replaced
21954:659968246e60 21955:3ce35131bff2
63 else: 63 else:
64 if mx.update_file(opts.output, contents): 64 if mx.update_file(opts.output, contents):
65 return 1 65 return 1
66 return 0 66 return 0
67 67
68 def short_dist_name(name):
69 return name.replace("COM_ORACLE_", "")
70
68 def filter_projects(deps, t): 71 def filter_projects(deps, t):
69 def typeFilter(project): # filters 72 def typeFilter(project): # filters
70 if isinstance(project, str): 73 if isinstance(project, str):
71 project = mx.dependency(project, True) 74 project = mx.dependency(project, True)
72 return isinstance(project, t) 75 return isinstance(project, t)
81 li.append(e) 84 li.append(e)
82 85
83 def make_dist_rule(dist, mf): 86 def make_dist_rule(dist, mf):
84 def path_dist_relative(p): 87 def path_dist_relative(p):
85 return os.path.relpath(p, dist.suite.dir) 88 return os.path.relpath(p, dist.suite.dir)
86 def short_dist_name(name):
87 return name.replace("COM_ORACLE_", "")
88 shortName = short_dist_name(dist.name) 89 shortName = short_dist_name(dist.name)
89 jdkDeployedDists = get_jdk_deployed_dists() 90 jdkDeployedDists = get_jdk_deployed_dists()
90 jarPath = path_dist_relative(dist.path) 91 jarPath = path_dist_relative(dist.path)
91 sourcesVariableName = shortName + "_SRC" 92 sourcesVariableName = shortName + "_SRC"
92 depJarVariableName = shortName + "_DEP_JARS" 93 depJarVariableName = shortName + "_DEP_JARS"
172 # Directories, where the generated property-files reside within the JAR files 173 # Directories, where the generated property-files reside within the JAR files
173 PROVIDERS_INF=/META-INF/jvmci.providers 174 PROVIDERS_INF=/META-INF/jvmci.providers
174 SERVICES_INF=/META-INF/jvmci.services 175 SERVICES_INF=/META-INF/jvmci.services
175 OPTIONS_INF=/META-INF/jvmci.options 176 OPTIONS_INF=/META-INF/jvmci.options
176 177
178 JARS = $(foreach dist,$(DISTRIBUTIONS),$($(dist)_JAR))
179
177 ifeq ($(ABS_BOOTDIR),) 180 ifeq ($(ABS_BOOTDIR),)
178 $(error Variable ABS_BOOTDIR must be set to a JDK installation.) 181 $(error Variable ABS_BOOTDIR must be set to a JDK installation.)
179 endif 182 endif
180 ifeq ($(MAKE_VERBOSE),) 183 ifeq ($(MAKE_VERBOSE),)
181 QUIETLY=@ 184 QUIETLY=@
265 export: all 268 export: all
266 \t$(call verify_defs_make,$(notdir $(wildcard $(SHARED_DIR)/jvmci.services/*)),EXPORT_LIST += $$(EXPORT_JRE_LIB_JVMCI_SERVICES_DIR)/) 269 \t$(call verify_defs_make,$(notdir $(wildcard $(SHARED_DIR)/jvmci.services/*)),EXPORT_LIST += $$(EXPORT_JRE_LIB_JVMCI_SERVICES_DIR)/)
267 \t$(call verify_defs_make,$(notdir $(wildcard $(SHARED_DIR)/jvmci.options/*)),EXPORT_LIST += $$(EXPORT_JRE_LIB_JVMCI_OPTIONS_DIR)/) 270 \t$(call verify_defs_make,$(notdir $(wildcard $(SHARED_DIR)/jvmci.options/*)),EXPORT_LIST += $$(EXPORT_JRE_LIB_JVMCI_OPTIONS_DIR)/)
268 .PHONY: export 271 .PHONY: export
269 272
273 clean:
274 \t$(QUIETLY) rm $(JARS) 2> /dev/null || true
275 \t$(QUIETLY) rmdir -p $(dir $(JARS)) 2> /dev/null || true
276 .PHONY: export clean
277
270 """) 278 """)
271 s = mx.suite("graal") 279 s = mx.suite("graal")
272 dists = [] 280 dists = []
273 ap = [] 281 ap = []
274 projects = [] 282 projects = []
286 294
287 if len(dists) > 0: 295 if len(dists) > 0:
288 mf.add_definition(jdkBootClassPathVariableName + " = " + bootClassPath) 296 mf.add_definition(jdkBootClassPathVariableName + " = " + bootClassPath)
289 for d in ap: make_dist_rule(d, mf) 297 for d in ap: make_dist_rule(d, mf)
290 for d in dists: make_dist_rule(d, mf) 298 for d in dists: make_dist_rule(d, mf)
291 mf.add_rule("default: $({}_JAR)\n.PHONY: default\n".format("_JAR) $(".join([d.name for d in dists]))) 299 mf.add_definition("DISTRIBUTIONS = " + " ".join([short_dist_name(d.name) for d in dists+ap]))
300 mf.add_rule("default: $({}_JAR)\n.PHONY: default\n".format("_JAR) $(".join([short_dist_name(d.name) for d in dists])))
292 return True 301 return True
293 else: 302 else:
294 for d in dists: 303 for d in dists:
295 selectedDists.remove(d.name) 304 selectedDists.remove(d.name)
296 print "Distribution(s) '" + "', '".join(selectedDists) + "' does not exist." 305 print "Distribution(s) '" + "', '".join(selectedDists) + "' does not exist."