Wed, 14 Oct 2020 17:44:48 +0800
Merge
aoqi@0 | 1 | # |
aoqi@0 | 2 | # Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. |
aoqi@0 | 3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
aoqi@0 | 4 | # |
aoqi@0 | 5 | # This code is free software; you can redistribute it and/or modify it |
aoqi@0 | 6 | # under the terms of the GNU General Public License version 2 only, as |
aoqi@0 | 7 | # published by the Free Software Foundation. |
aoqi@0 | 8 | # |
aoqi@0 | 9 | # This code is distributed in the hope that it will be useful, but WITHOUT |
aoqi@0 | 10 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
aoqi@0 | 11 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
aoqi@0 | 12 | # version 2 for more details (a copy is included in the LICENSE file that |
aoqi@0 | 13 | # accompanied this code). |
aoqi@0 | 14 | # |
aoqi@0 | 15 | # You should have received a copy of the GNU General Public License version |
aoqi@0 | 16 | # 2 along with this work; if not, write to the Free Software Foundation, |
aoqi@0 | 17 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
aoqi@0 | 18 | # |
aoqi@0 | 19 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
aoqi@0 | 20 | # or visit www.oracle.com if you need additional information or have any |
aoqi@0 | 21 | # questions. |
aoqi@0 | 22 | # |
aoqi@0 | 23 | # |
aoqi@0 | 24 | |
aoqi@0 | 25 | # This makefile (jvmti.make) is included from the jvmti.make in the |
aoqi@0 | 26 | # build directories. |
aoqi@0 | 27 | # |
aoqi@0 | 28 | # It knows how to build and run the tools to generate jvmti. |
aoqi@0 | 29 | |
aoqi@0 | 30 | include $(GAMMADIR)/make/bsd/makefiles/rules.make |
aoqi@0 | 31 | |
aoqi@0 | 32 | # ######################################################################### |
aoqi@0 | 33 | |
aoqi@0 | 34 | TOPDIR = $(shell echo `pwd`) |
aoqi@0 | 35 | GENERATED = $(TOPDIR)/../generated |
aoqi@0 | 36 | JvmtiOutDir = $(GENERATED)/jvmtifiles |
aoqi@0 | 37 | |
aoqi@0 | 38 | JvmtiSrcDir = $(GAMMADIR)/src/share/vm/prims |
aoqi@0 | 39 | InterpreterSrcDir = $(GAMMADIR)/src/share/vm/interpreter |
aoqi@0 | 40 | |
aoqi@0 | 41 | # set VPATH so make knows where to look for source files |
aoqi@0 | 42 | Src_Dirs_V += $(JvmtiSrcDir) |
aoqi@0 | 43 | VPATH += $(Src_Dirs_V:%=%:) |
aoqi@0 | 44 | |
aoqi@0 | 45 | JvmtiGeneratedNames = \ |
aoqi@0 | 46 | jvmtiEnv.hpp \ |
aoqi@0 | 47 | jvmtiEnter.cpp \ |
aoqi@0 | 48 | jvmtiEnterTrace.cpp \ |
aoqi@0 | 49 | jvmtiEnvRecommended.cpp \ |
aoqi@0 | 50 | bytecodeInterpreterWithChecks.cpp \ |
aoqi@0 | 51 | jvmti.h \ |
aoqi@0 | 52 | |
aoqi@0 | 53 | JvmtiEnvFillSource = $(JvmtiSrcDir)/jvmtiEnvFill.java |
aoqi@0 | 54 | JvmtiEnvFillClass = $(JvmtiOutDir)/jvmtiEnvFill.class |
aoqi@0 | 55 | |
aoqi@0 | 56 | JvmtiGenSource = $(JvmtiSrcDir)/jvmtiGen.java |
aoqi@0 | 57 | JvmtiGenClass = $(JvmtiOutDir)/jvmtiGen.class |
aoqi@0 | 58 | |
aoqi@0 | 59 | JvmtiGeneratedFiles = $(JvmtiGeneratedNames:%=$(JvmtiOutDir)/%) |
aoqi@0 | 60 | |
aoqi@0 | 61 | XSLT = $(QUIETLY) $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiGen |
aoqi@0 | 62 | |
aoqi@0 | 63 | .PHONY: all jvmtidocs clean cleanall |
aoqi@0 | 64 | |
aoqi@0 | 65 | # ######################################################################### |
aoqi@0 | 66 | |
aoqi@0 | 67 | all: $(JvmtiGeneratedFiles) |
aoqi@0 | 68 | |
aoqi@0 | 69 | both = $(JvmtiGenClass) $(JvmtiSrcDir)/jvmti.xml $(JvmtiSrcDir)/jvmtiLib.xsl |
aoqi@0 | 70 | |
aoqi@0 | 71 | $(JvmtiGenClass): $(JvmtiGenSource) |
aoqi@0 | 72 | $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -d $(JvmtiOutDir) $(JvmtiGenSource) |
aoqi@0 | 73 | |
aoqi@0 | 74 | $(JvmtiEnvFillClass): $(JvmtiEnvFillSource) |
aoqi@0 | 75 | $(QUIETLY) $(REMOTE) $(COMPILE.JAVAC) -d $(JvmtiOutDir) $(JvmtiEnvFillSource) |
aoqi@0 | 76 | |
aoqi@0 | 77 | $(JvmtiOutDir)/jvmtiEnter.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl |
aoqi@0 | 78 | @echo Generating $@ |
aoqi@0 | 79 | $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnter.cpp -PARAM interface jvmti |
aoqi@0 | 80 | |
aoqi@0 | 81 | $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp: $(JvmtiGenClass) $(InterpreterSrcDir)/bytecodeInterpreter.cpp $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl |
aoqi@0 | 82 | @echo Generating $@ |
aoqi@0 | 83 | $(XSLT) -IN $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml -XSL $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl -OUT $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp |
aoqi@0 | 84 | |
aoqi@0 | 85 | $(JvmtiOutDir)/jvmtiEnterTrace.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl |
aoqi@0 | 86 | @echo Generating $@ |
aoqi@0 | 87 | $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnterTrace.cpp -PARAM interface jvmti -PARAM trace Trace |
aoqi@0 | 88 | |
aoqi@0 | 89 | $(JvmtiOutDir)/jvmtiEnvRecommended.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnv.xsl $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiEnvFillClass) |
aoqi@0 | 90 | @echo Generating $@ |
aoqi@0 | 91 | $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnv.xsl -OUT $(JvmtiOutDir)/jvmtiEnvStub.cpp |
aoqi@0 | 92 | $(QUIETLY) $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiEnvFill $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiOutDir)/jvmtiEnvStub.cpp $(JvmtiOutDir)/jvmtiEnvRecommended.cpp |
aoqi@0 | 93 | |
aoqi@0 | 94 | $(JvmtiOutDir)/jvmtiEnv.hpp: $(both) $(JvmtiSrcDir)/jvmtiHpp.xsl |
aoqi@0 | 95 | @echo Generating $@ |
aoqi@0 | 96 | $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiHpp.xsl -OUT $(JvmtiOutDir)/jvmtiEnv.hpp |
aoqi@0 | 97 | |
aoqi@0 | 98 | $(JvmtiOutDir)/jvmti.h: $(both) $(JvmtiSrcDir)/jvmtiH.xsl |
aoqi@0 | 99 | @echo Generating $@ |
aoqi@0 | 100 | $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiH.xsl -OUT $(JvmtiOutDir)/jvmti.h |
aoqi@0 | 101 | |
aoqi@0 | 102 | jvmtidocs: $(JvmtiOutDir)/jvmti.html |
aoqi@0 | 103 | |
aoqi@0 | 104 | $(JvmtiOutDir)/jvmti.html: $(both) $(JvmtiSrcDir)/jvmti.xsl |
aoqi@0 | 105 | @echo Generating $@ |
aoqi@0 | 106 | $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmti.xsl -OUT $(JvmtiOutDir)/jvmti.html |
aoqi@0 | 107 | |
aoqi@0 | 108 | # ######################################################################### |
aoqi@0 | 109 | |
aoqi@0 | 110 | clean : |
aoqi@0 | 111 | rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles) |
aoqi@0 | 112 | |
aoqi@0 | 113 | cleanall : |
aoqi@0 | 114 | rm $(JvmtiGenClass) $(JvmtiEnvFillClass) $(JvmtiGeneratedFiles) |
aoqi@0 | 115 | |
aoqi@0 | 116 | # ######################################################################### |
aoqi@0 | 117 |