make/windows/makefiles/jfr.make

Mon, 12 Aug 2019 18:30:40 +0300

author
apetushkov
date
Mon, 12 Aug 2019 18:30:40 +0300
changeset 9858
b985cbb00e68
permissions
-rw-r--r--

8223147: JFR Backport
8199712: Flight Recorder
8203346: JFR: Inconsistent signature of jfr_add_string_constant
8195817: JFR.stop should require name of recording
8195818: JFR.start should increase autogenerated name by one
8195819: Remove recording=x from jcmd JFR.check output
8203921: JFR thread sampling is missing fixes from JDK-8194552
8203929: Limit amount of data for JFR.dump
8203664: JFR start failure after AppCDS archive created with JFR StartFlightRecording
8003209: JFR events for network utilization
8207392: [PPC64] Implement JFR profiling
8202835: jfr/event/os/TestSystemProcess.java fails on missing events
Summary: Backport JFR from JDK11. Initial integration
Reviewed-by: neugens

     1 #
     2 # Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
     3 # Copyright (c) 2018-2019, Azul Systems, Inc. All rights reserved.
     4 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     5 #
     6 # This code is free software; you can redistribute it and/or modify it
     7 # under the terms of the GNU General Public License version 2 only, as
     8 # published by the Free Software Foundation.
     9 #
    10 # This code is distributed in the hope that it will be useful, but WITHOUT
    11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    12 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    13 # version 2 for more details (a copy is included in the LICENSE file that
    14 # accompanied this code).
    15 #
    16 # You should have received a copy of the GNU General Public License version
    17 # 2 along with this work; if not, write to the Free Software Foundation,
    18 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    19 #
    20 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    21 # or visit www.oracle.com if you need additional information or have any
    22 # questions.
    23 #  
    24 #
    26 # This makefile (jfr.make) is included from the jfr.make in the
    27 # build directories.
    28 #
    29 # It knows how to build and run the tools to generate jfr.
    31 !include $(WorkSpace)/make/windows/makefiles/rules.make
    33 # #########################################################################
    34 # Build tools needed for the Jfr source code generation
    36 GENERATED   = ../generated
    38 JFR_TOOLS_SRCDIR = $(WorkSpace)/src/share/vm/jfr
    39 JFR_TOOLS_OUTPUTDIR = $(GENERATED)/tools/jfr
    41 JFR_OUTPUTDIR = $(GENERATED)/jfrfiles
    42 JFR_SRCDIR = $(WorkSpace)/src/share/vm/jfr/metadata
    44 METADATA_XML = $(JFR_SRCDIR)/metadata.xml
    45 METADATA_XSD = $(JFR_SRCDIR)/metadata.xsd
    47 # Changing these will trigger a rebuild of generated jfr files.
    48 JFR_DEPS = $(METADATA_XML) \
    49 	$(METADATA_XSD)
    51 JfrGeneratedFiles = \
    52 	$(JFR_OUTPUTDIR)/jfrEventControl.hpp \
    53 	$(JFR_OUTPUTDIR)/jfrEventIds.hpp \
    54 	$(JFR_OUTPUTDIR)/jfrPeriodic.hpp \
    55 	$(JFR_OUTPUTDIR)/jfrTypes.hpp
    57 JfrGenSource = $(JFR_TOOLS_SRCDIR)/GenerateJfrFiles.java
    58 JfrGenClass = $(JFR_TOOLS_OUTPUTDIR)/build/tools/jfr/GenerateJfrFiles.class
    60 .PHONY: all cleanall
    62 # #########################################################################
    64 all: $(JfrGeneratedFiles)
    66 $(JfrGenClass): $(JfrGenSource)
    67 	mkdir -p $(@D)
    68 	$(COMPILE_JAVAC) -d $(JFR_TOOLS_OUTPUTDIR) $(JfrGenSource)
    70 $(JFR_OUTPUTDIR)/jfrEventClasses.hpp: $(METADATA_XML) $(METADATA_XSD) $(JfrGenClass)
    71 	echo Generating $(@F)
    72 	mkdir -p $(@D)
    73 	$(RUN_JAVA) -cp $(JFR_TOOLS_OUTPUTDIR) build.tools.jfr.GenerateJfrFiles $(METADATA_XML) $(METADATA_XSD) $(JFR_OUTPUTDIR)
    74 	test -f $@
    76 $(JfrGeneratedFiles): $(JFR_OUTPUTDIR)/jfrEventClasses.hpp
    78 # #########################################################################
    80 cleanall :
    81 	rm $(JfrGenClass) $(JfrGeneratedFiles) $(JFR_OUTPUTDIR)/jfrEventClasses.hpp

mercurial