Mercurial > hg > graal-jvmci-8
annotate make/jvmci.make @ 22758:a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Mon, 21 Dec 2015 15:53:56 +0100 |
parents | 57646377e480 |
children | 577a4a8caa72 |
rev | line source |
---|---|
21790
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
1 # This Makefile is generated automatically, do not edit |
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
2 |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
3 TARGET=. |
21790
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
4 # Bootstrap JDK to be used (for javac and jar) |
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
5 ABS_BOOTDIR= |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
6 |
21790
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
7 JAVAC=$(ABS_BOOTDIR)/bin/javac -g -target 1.8 |
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
8 JAR=$(ABS_BOOTDIR)/bin/jar |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
9 |
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
10 HS_COMMON_SRC=. |
21790
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
11 |
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
12 # Directories, where the generated property-files reside within the JAR files |
21937
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
13 PROVIDERS_INF=/META-INF/jvmci.providers |
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
14 SERVICES_INF=/META-INF/jvmci.services |
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
15 OPTIONS_INF=/META-INF/jvmci.options |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
16 |
21955
3ce35131bff2
Introduce clean target in jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21948
diff
changeset
|
17 JARS = $(foreach dist,$(DISTRIBUTIONS),$($(dist)_JAR)) |
3ce35131bff2
Introduce clean target in jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21948
diff
changeset
|
18 |
21790
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
19 ifeq ($(ABS_BOOTDIR),) |
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
20 $(error Variable ABS_BOOTDIR must be set to a JDK installation.) |
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
21 endif |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
22 ifeq ($(MAKE_VERBOSE),) |
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
23 QUIETLY=@ |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
24 endif |
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
25 |
21920
35961ae3486f
Update jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21917
diff
changeset
|
26 # Required to construct a whitespace for use with subst |
35961ae3486f
Update jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21917
diff
changeset
|
27 space := |
35961ae3486f
Update jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21917
diff
changeset
|
28 space += |
35961ae3486f
Update jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21917
diff
changeset
|
29 |
21937
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
30 # Takes the provider files created by ServiceProviderProcessor (the processor |
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
31 # for the @ServiceProvider annotation) and merges them into a single file. |
21917
0df6a0cb4b5f
Cleanup code in mx_graal_makefile.py, add comments
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21916
diff
changeset
|
32 # Arguments: |
0df6a0cb4b5f
Cleanup code in mx_graal_makefile.py, add comments
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21916
diff
changeset
|
33 # 1: directory with contents of the JAR file |
21937
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
34 define process_providers |
21943
31be1c8f4905
switched to use of simple makefile assignment in jvmci.make and removed unnecessary semicolons
Doug Simon <doug.simon@oracle.com>
parents:
21939
diff
changeset
|
35 $(eval providers := $(1)/$(PROVIDERS_INF)) |
31be1c8f4905
switched to use of simple makefile assignment in jvmci.make and removed unnecessary semicolons
Doug Simon <doug.simon@oracle.com>
parents:
21939
diff
changeset
|
36 $(eval services := $(1)/$(SERVICES_INF)) |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
37 $(QUIETLY) test -d $(services) || mkdir -p $(services) |
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
38 $(QUIETLY) test ! -d $(providers) || (cd $(providers) && for i in $$(ls); do c=$$(cat $$i); echo $$i >> $(abspath $(services))/$$c; rm $$i; done) |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
39 |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
40 @# Since all projects are built together with one javac call we cannot determine |
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
41 @# which project contains HotSpotVMConfig.inline.hpp so we hardcode it. |
21943
31be1c8f4905
switched to use of simple makefile assignment in jvmci.make and removed unnecessary semicolons
Doug Simon <doug.simon@oracle.com>
parents:
21939
diff
changeset
|
42 $(eval vmconfig := $(1)/hotspot/HotSpotVMConfig.inline.hpp) |
22672
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
43 $(eval vmconfigDest := $(HS_COMMON_SRC)/../mxbuild/jvmci/jdk.vm.ci.hotspot/src_gen/hotspot) |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
44 $(QUIETLY) test ! -f $(vmconfig) || (mkdir -p $(vmconfigDest) && cp $(vmconfig) $(vmconfigDest)) |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
45 endef |
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
46 |
22398
4f6caa445b92
moved JVMCI option parsing back into Java
Doug Simon <doug.simon@oracle.com>
parents:
22394
diff
changeset
|
47 # Extracts META-INF/jvmci.services from a JAR file into a given directory |
21917
0df6a0cb4b5f
Cleanup code in mx_graal_makefile.py, add comments
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21916
diff
changeset
|
48 # Arguments: |
0df6a0cb4b5f
Cleanup code in mx_graal_makefile.py, add comments
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21916
diff
changeset
|
49 # 1: JAR file to extract |
21943
31be1c8f4905
switched to use of simple makefile assignment in jvmci.make and removed unnecessary semicolons
Doug Simon <doug.simon@oracle.com>
parents:
21939
diff
changeset
|
50 # 2: target directory (which already exists) |
21793
44bad469bec2
Create DEST_SUBDIR when doing install_jvm (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21790
diff
changeset
|
51 define extract |
21912
1a6a520af3b5
jvmci.make put temp dirs into the target directory
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21911
diff
changeset
|
52 $(eval TMP := $(shell mktemp -d $(TARGET)/tmp_XXXXX)) |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
53 $(QUIETLY) cd $(TMP) && $(JAR) xf $(abspath $(1)) && \ |
22398
4f6caa445b92
moved JVMCI option parsing back into Java
Doug Simon <doug.simon@oracle.com>
parents:
22394
diff
changeset
|
54 (test ! -d .$(SERVICES_INF) || cp -r .$(SERVICES_INF) $(abspath $(2))); |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
55 $(QUIETLY) rm -r $(TMP); |
21937
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
56 $(QUIETLY) cp $(1) $(2) |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
57 endef |
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
58 |
21937
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
59 # Calls $(JAVAC) with the boot class path $(JDK_BOOTCLASSPATH) and sources taken from the automatic variable $^ |
21917
0df6a0cb4b5f
Cleanup code in mx_graal_makefile.py, add comments
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21916
diff
changeset
|
60 # Arguments: |
0df6a0cb4b5f
Cleanup code in mx_graal_makefile.py, add comments
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21916
diff
changeset
|
61 # 1: processorpath |
0df6a0cb4b5f
Cleanup code in mx_graal_makefile.py, add comments
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21916
diff
changeset
|
62 # 2: classpath |
0df6a0cb4b5f
Cleanup code in mx_graal_makefile.py, add comments
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21916
diff
changeset
|
63 # 3: resources to copy |
0df6a0cb4b5f
Cleanup code in mx_graal_makefile.py, add comments
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21916
diff
changeset
|
64 # 4: target JAR file |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
65 define build_and_jar |
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
66 $(info Building $(4)) |
21912
1a6a520af3b5
jvmci.make put temp dirs into the target directory
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21911
diff
changeset
|
67 $(eval TMP := $(shell mkdir -p $(TARGET) && mktemp -d $(TARGET)/tmp_XXXXX)) |
21937
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
68 $(QUIETLY) $(JAVAC) -d $(TMP) -processorpath :$(1) -bootclasspath $(JDK_BOOTCLASSPATH) -cp :$(2) $(filter %.java,$^) |
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
69 $(QUIETLY) test "$(3)" = "" || cp -r $(3) $(TMP) |
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
70 $(QUIETLY) $(call process_providers,$(TMP)) |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
71 $(QUIETLY) mkdir -p $(shell dirname $(4)) |
21992
72129dd49bc0
jvmci.make do not compress jars
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21985
diff
changeset
|
72 $(QUIETLY) $(JAR) -0cf $(4) -C $(TMP) . |
21937
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
73 $(QUIETLY) rm -r $(TMP) |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
74 endef |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
75 |
22398
4f6caa445b92
moved JVMCI option parsing back into Java
Doug Simon <doug.simon@oracle.com>
parents:
22394
diff
changeset
|
76 # Verifies that make/defs.make contains an appropriate line for each JVMCI service |
4f6caa445b92
moved JVMCI option parsing back into Java
Doug Simon <doug.simon@oracle.com>
parents:
22394
diff
changeset
|
77 # and that only existing JVMCI services are exported. |
21947
e701664f4168
Add parameter description to jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21920
diff
changeset
|
78 # Arguments: |
22398
4f6caa445b92
moved JVMCI option parsing back into Java
Doug Simon <doug.simon@oracle.com>
parents:
22394
diff
changeset
|
79 # 1: list of service files |
4f6caa445b92
moved JVMCI option parsing back into Java
Doug Simon <doug.simon@oracle.com>
parents:
22394
diff
changeset
|
80 # 2: variable name for directory of service files |
21937
3a292e8b9e51
replaced Service marker interface with non-standard META-INF directory names to differentiate JVMCI providers from standard service providers
Doug Simon <doug.simon@oracle.com>
parents:
21920
diff
changeset
|
81 define verify_defs_make |
21943
31be1c8f4905
switched to use of simple makefile assignment in jvmci.make and removed unnecessary semicolons
Doug Simon <doug.simon@oracle.com>
parents:
21939
diff
changeset
|
82 $(eval defs := make/defs.make) |
21978
f0a982a28944
relax verify_defs_make in jvmci.make for conditional exports
Doug Simon <doug.simon@oracle.com>
parents:
21955
diff
changeset
|
83 $(eval uncondPattern := EXPORT_LIST += $$$$($(2))/) |
f0a982a28944
relax verify_defs_make in jvmci.make for conditional exports
Doug Simon <doug.simon@oracle.com>
parents:
21955
diff
changeset
|
84 $(eval condPattern := CONDITIONAL_EXPORT_LIST += $$$$($(2))/) |
f0a982a28944
relax verify_defs_make in jvmci.make for conditional exports
Doug Simon <doug.simon@oracle.com>
parents:
21955
diff
changeset
|
85 $(eval unconditionalExports := $(shell grep '^EXPORT_LIST += $$($2)' make/defs.make | sed 's:.*($(2))/::g')) |
f0a982a28944
relax verify_defs_make in jvmci.make for conditional exports
Doug Simon <doug.simon@oracle.com>
parents:
21955
diff
changeset
|
86 $(eval conditionalExports := $(shell grep '^CONDITIONAL_EXPORT_LIST += $$($2)' make/defs.make | sed 's:.*($(2))/::g')) |
f0a982a28944
relax verify_defs_make in jvmci.make for conditional exports
Doug Simon <doug.simon@oracle.com>
parents:
21955
diff
changeset
|
87 $(eval allExports := $(unconditionalExports) $(conditionalExports)) |
f0a982a28944
relax verify_defs_make in jvmci.make for conditional exports
Doug Simon <doug.simon@oracle.com>
parents:
21955
diff
changeset
|
88 $(foreach file,$(1),$(if $(findstring $(file),$(allExports)), ,$(error "Line matching '$(uncondPattern)$(file)' or '$(condPattern)$(file)' not found in $(defs)"))) |
f0a982a28944
relax verify_defs_make in jvmci.make for conditional exports
Doug Simon <doug.simon@oracle.com>
parents:
21955
diff
changeset
|
89 $(foreach export,$(unconditionalExports),$(if $(findstring $(export),$(1)), ,$(error "The line '$(uncondPattern)$(export)' should not be in $(defs)"))) |
21920
35961ae3486f
Update jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21917
diff
changeset
|
90 endef |
35961ae3486f
Update jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21917
diff
changeset
|
91 |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
92 all: default |
21944
b121c00d3c4c
fixed subtle makefile evaluation order issue in the verification that only existing JVMCI services and options are exported in make/defs.make
Doug Simon <doug.simon@oracle.com>
parents:
21943
diff
changeset
|
93 $(info Put $(EXPORTED_FILES) into SHARED_DIR $(SHARED_DIR)) |
21985
ba769b2ee8fa
jvmci.make $(shell ...) is always quiet
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21978
diff
changeset
|
94 $(shell mkdir -p $(SHARED_DIR)) |
21944
b121c00d3c4c
fixed subtle makefile evaluation order issue in the verification that only existing JVMCI services and options are exported in make/defs.make
Doug Simon <doug.simon@oracle.com>
parents:
21943
diff
changeset
|
95 $(foreach export,$(EXPORTED_FILES),$(call extract,$(export),$(SHARED_DIR))) |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
96 |
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
97 export: all |
21978
f0a982a28944
relax verify_defs_make in jvmci.make for conditional exports
Doug Simon <doug.simon@oracle.com>
parents:
21955
diff
changeset
|
98 $(call verify_defs_make,$(notdir $(wildcard $(SHARED_DIR)/jvmci.services/*)),EXPORT_JRE_LIB_JVMCI_SERVICES_DIR) |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
99 .PHONY: export |
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
100 |
21955
3ce35131bff2
Introduce clean target in jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21948
diff
changeset
|
101 clean: |
3ce35131bff2
Introduce clean target in jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21948
diff
changeset
|
102 $(QUIETLY) rm $(JARS) 2> /dev/null || true |
3ce35131bff2
Introduce clean target in jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21948
diff
changeset
|
103 $(QUIETLY) rmdir -p $(dir $(JARS)) 2> /dev/null || true |
3ce35131bff2
Introduce clean target in jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21948
diff
changeset
|
104 .PHONY: export clean |
3ce35131bff2
Introduce clean target in jvmci.make
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21948
diff
changeset
|
105 |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
106 |
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
107 |
22427
9c55f608b79e
Generate jvmci.make with all defined dependencies/bootclasspath regardless availability in the current enviornment
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
22426
diff
changeset
|
108 JDK_BOOTCLASSPATH = $(ABS_BOOTDIR)/jre/lib/resources.jar:$(ABS_BOOTDIR)/jre/lib/rt.jar:$(ABS_BOOTDIR)/jre/lib/sunrsasign.jar:$(ABS_BOOTDIR)/jre/lib/jsse.jar:$(ABS_BOOTDIR)/jre/lib/jce.jar:$(ABS_BOOTDIR)/jre/lib/charsets.jar:$(ABS_BOOTDIR)/jre/lib/jfr.jar:$(ABS_BOOTDIR)/jre/classes |
21790
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
109 |
22672
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
110 JVMCI_SERVICE_SRC += $(shell find jvmci/jdk.vm.ci.service/src -type f 2> /dev/null) |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
111 |
22082
4ce725f06a27
jvmci.make intermediate output is now flattened into build/jvmci.make
Doug Simon <doug.simon@oracle.com>
parents:
22054
diff
changeset
|
112 JVMCI_SERVICE_JAR = $(TARGET)/jvmci-service.jar |
21790
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
113 |
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
114 EXPORTED_FILES += $(JVMCI_SERVICE_JAR) |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
115 |
22758
a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
Doug Simon <doug.simon@oracle.com>
parents:
22697
diff
changeset
|
116 JVMCI_API_SRC += $(shell find jvmci/jdk.vm.ci.inittimer/src -type f 2> /dev/null) |
22672
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
117 JVMCI_API_SRC += $(shell find jvmci/jdk.vm.ci.meta/src -type f 2> /dev/null) |
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
118 JVMCI_API_SRC += $(shell find jvmci/jdk.vm.ci.code/src -type f 2> /dev/null) |
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
119 JVMCI_API_SRC += $(shell find jvmci/jdk.vm.ci.runtime/src -type f 2> /dev/null) |
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
120 JVMCI_API_SRC += $(shell find jvmci/jdk.vm.ci.common/src -type f 2> /dev/null) |
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
121 JVMCI_API_SRC += $(shell find jvmci/jdk.vm.ci.amd64/src -type f 2> /dev/null) |
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
122 JVMCI_API_SRC += $(shell find jvmci/jdk.vm.ci.sparc/src -type f 2> /dev/null) |
21719
cbe8cc0f79ce
Update jvmci.make to latest suites.py
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21718
diff
changeset
|
123 |
22082
4ce725f06a27
jvmci.make intermediate output is now flattened into build/jvmci.make
Doug Simon <doug.simon@oracle.com>
parents:
22054
diff
changeset
|
124 JVMCI_API_JAR = $(TARGET)/jvmci-api.jar |
21719
cbe8cc0f79ce
Update jvmci.make to latest suites.py
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21718
diff
changeset
|
125 |
22758
a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
Doug Simon <doug.simon@oracle.com>
parents:
22697
diff
changeset
|
126 JVMCI_API_DEP_JARS = $(TARGET)/jvmci-service.jar |
21790
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
127 |
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
128 EXPORTED_FILES += $(JVMCI_API_JAR) |
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
129 |
22672
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
130 JVMCI_SERVICE_PROCESSOR_SRC += $(shell find jvmci/jdk.vm.ci.service.processor/src -type f 2> /dev/null) |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
131 |
22176
fb1a9390cdcf
fixed mx_jvmci_makefile.py
Doug Simon <doug.simon@oracle.com>
parents:
22087
diff
changeset
|
132 JVMCI_SERVICE_PROCESSOR_JAR = $(TARGET)/jvmci-service-processor.jar |
21790
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
133 |
22325
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
134 JVMCI_SERVICE_PROCESSOR_DEP_JARS = $(TARGET)/jvmci-service.jar |
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
135 |
22672
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
136 JVMCI_HOTSPOTVMCONFIG_SRC += $(shell find jvmci/jdk.vm.ci.hotspotvmconfig/src -type f 2> /dev/null) |
22325
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
137 |
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
138 JVMCI_HOTSPOTVMCONFIG_JAR = $(TARGET)/jvmci-hotspotvmconfig.jar |
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
139 |
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
140 EXPORTED_FILES += $(JVMCI_HOTSPOTVMCONFIG_JAR) |
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
141 |
22672
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
142 JVMCI_HOTSPOTVMCONFIG_PROCESSOR_SRC += $(shell find jvmci/jdk.vm.ci.hotspotvmconfig.processor/src -type f 2> /dev/null) |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
143 |
22176
fb1a9390cdcf
fixed mx_jvmci_makefile.py
Doug Simon <doug.simon@oracle.com>
parents:
22087
diff
changeset
|
144 JVMCI_HOTSPOTVMCONFIG_PROCESSOR_JAR = $(TARGET)/jvmci-hotspotvmconfig-processor.jar |
fb1a9390cdcf
fixed mx_jvmci_makefile.py
Doug Simon <doug.simon@oracle.com>
parents:
22087
diff
changeset
|
145 |
22758
a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
Doug Simon <doug.simon@oracle.com>
parents:
22697
diff
changeset
|
146 JVMCI_HOTSPOTVMCONFIG_PROCESSOR_DEP_JARS = $(TARGET)/jvmci-service.jar $(TARGET)/jvmci-api.jar $(TARGET)/jvmci-hotspotvmconfig.jar |
22325
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
147 |
22672
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
148 JVMCI_HOTSPOT_SRC += $(shell find jvmci/jdk.vm.ci.hotspot/src -type f 2> /dev/null) |
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
149 JVMCI_HOTSPOT_SRC += $(shell find jvmci/jdk.vm.ci.hotspot.amd64/src -type f 2> /dev/null) |
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
150 JVMCI_HOTSPOT_SRC += $(shell find jvmci/jdk.vm.ci.hotspot.sparc/src -type f 2> /dev/null) |
22426
f45c8b5add13
Ignore projects in jvmci.make, when optional JRE/JDK library dependencies are not present
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
22398
diff
changeset
|
151 ifeq ($(shell find $(ABS_BOOTDIR)/ -name 'jfr.jar'; echo $$?),'0') |
22672
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
152 JVMCI_HOTSPOT_SRC += $(shell find jvmci/jdk.vm.ci.hotspot.jfr/src -type f 2> /dev/null) |
22426
f45c8b5add13
Ignore projects in jvmci.make, when optional JRE/JDK library dependencies are not present
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
22398
diff
changeset
|
153 endif |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
154 |
22082
4ce725f06a27
jvmci.make intermediate output is now flattened into build/jvmci.make
Doug Simon <doug.simon@oracle.com>
parents:
22054
diff
changeset
|
155 JVMCI_HOTSPOT_JAR = $(TARGET)/jvmci-hotspot.jar |
21719
cbe8cc0f79ce
Update jvmci.make to latest suites.py
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21718
diff
changeset
|
156 |
22758
a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
Doug Simon <doug.simon@oracle.com>
parents:
22697
diff
changeset
|
157 JVMCI_HOTSPOT_DEP_JARS = $(TARGET)/jvmci-hotspotvmconfig.jar $(TARGET)/jvmci-service.jar $(TARGET)/jvmci-api.jar |
21719
cbe8cc0f79ce
Update jvmci.make to latest suites.py
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21718
diff
changeset
|
158 |
21740
6c3c21d9b5ef
Add -m switch to mx build, which builds/exports JVMCI with the make/jvmci.make file
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21719
diff
changeset
|
159 EXPORTED_FILES += $(JVMCI_HOTSPOT_JAR) |
21718
b5bbf03bc17a
Improve makefile generator, exporting files into shared dir (JBS:GRAAL-52)
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
diff
changeset
|
160 |
22758
a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
Doug Simon <doug.simon@oracle.com>
parents:
22697
diff
changeset
|
161 DISTRIBUTIONS = JVMCI_SERVICE JVMCI_API JVMCI_SERVICE_PROCESSOR JVMCI_HOTSPOTVMCONFIG JVMCI_HOTSPOTVMCONFIG_PROCESSOR JVMCI_HOTSPOT |
21719
cbe8cc0f79ce
Update jvmci.make to latest suites.py
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21718
diff
changeset
|
162 |
22087
ba177df8f5aa
added local SuppressFBWarnings annotation to replace findbugs-SuppressFBWarnings.jar dependency
Doug Simon <doug.simon@oracle.com>
parents:
22082
diff
changeset
|
163 $(JVMCI_SERVICE_JAR): $(JVMCI_SERVICE_SRC) |
ba177df8f5aa
added local SuppressFBWarnings annotation to replace findbugs-SuppressFBWarnings.jar dependency
Doug Simon <doug.simon@oracle.com>
parents:
22082
diff
changeset
|
164 $(call build_and_jar,,$(subst $(space),:,),,$(JVMCI_SERVICE_JAR)) |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
165 |
21790
6db6070d30b9
Make jvmci.make stable; add header for building the jvmci.make; default to use the jvmci.make file when running mx.build
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21740
diff
changeset
|
166 |
22758
a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
Doug Simon <doug.simon@oracle.com>
parents:
22697
diff
changeset
|
167 $(JVMCI_API_JAR): $(JVMCI_API_SRC) $(JVMCI_API_DEP_JARS) |
a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
Doug Simon <doug.simon@oracle.com>
parents:
22697
diff
changeset
|
168 $(call build_and_jar,,$(subst $(space),:,$(JVMCI_API_DEP_JARS)),,$(JVMCI_API_JAR)) |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
169 |
21719
cbe8cc0f79ce
Update jvmci.make to latest suites.py
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21718
diff
changeset
|
170 |
22325
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
171 $(JVMCI_SERVICE_PROCESSOR_JAR): $(JVMCI_SERVICE_PROCESSOR_SRC) $(JVMCI_SERVICE_PROCESSOR_DEP_JARS) |
22672
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
172 $(call build_and_jar,,$(subst $(space),:,$(JVMCI_SERVICE_PROCESSOR_DEP_JARS)),jvmci/jdk.vm.ci.service.processor/src/META-INF,$(JVMCI_SERVICE_PROCESSOR_JAR)) |
21911
899d7cadd0a1
Make jvmci.make quiet and use recipe for build and jar
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21888
diff
changeset
|
173 |
21719
cbe8cc0f79ce
Update jvmci.make to latest suites.py
Stefan Anzinger <stefan.anzinger@oracle.com>
parents:
21718
diff
changeset
|
174 |
22325
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
175 $(JVMCI_HOTSPOTVMCONFIG_JAR): $(JVMCI_HOTSPOTVMCONFIG_SRC) |
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
176 $(call build_and_jar,,$(subst $(space),:,),,$(JVMCI_HOTSPOTVMCONFIG_JAR)) |
22176
fb1a9390cdcf
fixed mx_jvmci_makefile.py
Doug Simon <doug.simon@oracle.com>
parents:
22087
diff
changeset
|
177 |
fb1a9390cdcf
fixed mx_jvmci_makefile.py
Doug Simon <doug.simon@oracle.com>
parents:
22087
diff
changeset
|
178 |
22325
f114acdecf70
Update jvmci.make
Roland Schatz <roland.schatz@oracle.com>
parents:
22315
diff
changeset
|
179 $(JVMCI_HOTSPOTVMCONFIG_PROCESSOR_JAR): $(JVMCI_HOTSPOTVMCONFIG_PROCESSOR_SRC) $(JVMCI_HOTSPOTVMCONFIG_PROCESSOR_DEP_JARS) |
22672
1bbd4a7c274b
Rename jdk.internal.jvmci to jdk.vm.ci
Tom Rodriguez <tom.rodriguez@oracle.com>
parents:
22618
diff
changeset
|
180 $(call build_and_jar,,$(subst $(space),:,$(JVMCI_HOTSPOTVMCONFIG_PROCESSOR_DEP_JARS)),jvmci/jdk.vm.ci.hotspotvmconfig.processor/src/META-INF,$(JVMCI_HOTSPOTVMCONFIG_PROCESSOR_JAR)) |
22176
fb1a9390cdcf
fixed mx_jvmci_makefile.py
Doug Simon <doug.simon@oracle.com>
parents:
22087
diff
changeset
|
181 |
fb1a9390cdcf
fixed mx_jvmci_makefile.py
Doug Simon <doug.simon@oracle.com>
parents:
22087
diff
changeset
|
182 |
22758
a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
Doug Simon <doug.simon@oracle.com>
parents:
22697
diff
changeset
|
183 $(JVMCI_HOTSPOT_JAR): $(JVMCI_HOTSPOT_SRC) $(JVMCI_HOTSPOTVMCONFIG_PROCESSOR_JAR) $(JVMCI_SERVICE_PROCESSOR_JAR) $(JVMCI_HOTSPOT_DEP_JARS) |
a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
Doug Simon <doug.simon@oracle.com>
parents:
22697
diff
changeset
|
184 $(call build_and_jar,$(JVMCI_HOTSPOTVMCONFIG_PROCESSOR_JAR):$(JVMCI_SERVICE_PROCESSOR_JAR):$(subst $(space),:,$(JVMCI_HOTSPOTVMCONFIG_PROCESSOR_DEP_JARS)):$(subst $(space),:,$(JVMCI_SERVICE_PROCESSOR_DEP_JARS)),$(subst $(space),:,$(JVMCI_HOTSPOT_DEP_JARS)),,$(JVMCI_HOTSPOT_JAR)) |
22176
fb1a9390cdcf
fixed mx_jvmci_makefile.py
Doug Simon <doug.simon@oracle.com>
parents:
22087
diff
changeset
|
185 |
fb1a9390cdcf
fixed mx_jvmci_makefile.py
Doug Simon <doug.simon@oracle.com>
parents:
22087
diff
changeset
|
186 |
22758
a130b51efb07
removed @Option mechanism from JVMCI (GRAAL-1371)
Doug Simon <doug.simon@oracle.com>
parents:
22697
diff
changeset
|
187 default: $(JVMCI_SERVICE_JAR) $(JVMCI_API_JAR) $(JVMCI_HOTSPOT_JAR) $(JVMCI_HOTSPOTVMCONFIG_JAR) |
21948 | 188 .PHONY: default |