Makefile revision 1472
0N/A#
1472N/A# Copyright (c) 2000, 2008, Oracle and/or its affiliates. All rights reserved.
0N/A# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
0N/A#
0N/A# This code is free software; you can redistribute it and/or modify it
0N/A# under the terms of the GNU General Public License version 2 only, as
0N/A# published by the Free Software Foundation.
0N/A#
0N/A# This code is distributed in the hope that it will be useful, but WITHOUT
0N/A# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0N/A# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0N/A# version 2 for more details (a copy is included in the LICENSE file that
0N/A# accompanied this code).
0N/A#
0N/A# You should have received a copy of the GNU General Public License version
0N/A# 2 along with this work; if not, write to the Free Software Foundation,
0N/A# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
0N/A#
1472N/A# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
1472N/A# or visit www.oracle.com if you need additional information or have any
1472N/A# questions.
0N/A#
0N/A#
0N/A
0N/A# This guards against adding broken .java files to the directory
0N/A# hierarchy, but may be a pain to keep in sync
0N/A
0N/A# Generated using the build-pkglist script
0N/Aifeq "x$(GAMMADIR)" "x"
0N/Ainclude ../../make/defs.make
0N/Aelse
0N/Ainclude $(GAMMADIR)/make/defs.make
0N/Aendif
0N/A
258N/Aifeq "x$(HOTSPOT_BUILD_VERSION)" "x"
258N/ASA_BUILD_VERSION=$(HOTSPOT_RELEASE_VERSION)
258N/Aelse
258N/ASA_BUILD_VERSION=$(HOTSPOT_RELEASE_VERSION)-$(HOTSPOT_BUILD_VERSION)
258N/Aendif
258N/A
0N/APKGLIST = \
0N/Asun.jvm.hotspot \
0N/Asun.jvm.hotspot.asm \
0N/Asun.jvm.hotspot.asm.amd64 \
0N/Asun.jvm.hotspot.asm.ia64 \
0N/Asun.jvm.hotspot.asm.sparc \
0N/Asun.jvm.hotspot.asm.x86 \
0N/Asun.jvm.hotspot.bugspot \
0N/Asun.jvm.hotspot.bugspot.tree \
0N/Asun.jvm.hotspot.c1 \
0N/Asun.jvm.hotspot.code \
0N/Asun.jvm.hotspot.compiler \
0N/Asun.jvm.hotspot.debugger \
0N/Asun.jvm.hotspot.debugger.amd64 \
0N/Asun.jvm.hotspot.debugger.cdbg \
0N/Asun.jvm.hotspot.debugger.cdbg.basic \
0N/Asun.jvm.hotspot.debugger.cdbg.basic.amd64 \
0N/Asun.jvm.hotspot.debugger.cdbg.basic.x86 \
0N/Asun.jvm.hotspot.debugger.dbx \
0N/Asun.jvm.hotspot.debugger.dbx.sparc \
0N/Asun.jvm.hotspot.debugger.dbx.x86 \
0N/Asun.jvm.hotspot.debugger.dummy \
0N/Asun.jvm.hotspot.debugger.ia64 \
0N/Asun.jvm.hotspot.debugger.linux \
0N/Asun.jvm.hotspot.debugger.linux.amd64 \
0N/Asun.jvm.hotspot.debugger.linux.ia64 \
0N/Asun.jvm.hotspot.debugger.linux.x86 \
0N/Asun.jvm.hotspot.debugger.posix \
0N/Asun.jvm.hotspot.debugger.posix.elf \
0N/Asun.jvm.hotspot.debugger.proc \
0N/Asun.jvm.hotspot.debugger.proc.amd64 \
0N/Asun.jvm.hotspot.debugger.proc.sparc \
0N/Asun.jvm.hotspot.debugger.proc.x86 \
0N/Asun.jvm.hotspot.debugger.remote \
0N/Asun.jvm.hotspot.debugger.remote.amd64 \
0N/Asun.jvm.hotspot.debugger.remote.sparc \
0N/Asun.jvm.hotspot.debugger.remote.x86 \
0N/Asun.jvm.hotspot.debugger.sparc \
0N/Asun.jvm.hotspot.debugger.win32 \
0N/Asun.jvm.hotspot.debugger.win32.coff \
0N/Asun.jvm.hotspot.debugger.windbg \
0N/Asun.jvm.hotspot.debugger.windbg.amd64 \
0N/Asun.jvm.hotspot.debugger.windbg.ia64 \
0N/Asun.jvm.hotspot.debugger.windbg.x86 \
0N/Asun.jvm.hotspot.debugger.x86 \
0N/Asun.jvm.hotspot.gc_implementation \
0N/Asun.jvm.hotspot.gc_implementation.parallelScavenge \
0N/Asun.jvm.hotspot.gc_implementation.shared \
0N/Asun.jvm.hotspot.gc_interface \
0N/Asun.jvm.hotspot.interpreter \
0N/Asun.jvm.hotspot.jdi \
0N/Asun.jvm.hotspot.livejvm \
0N/Asun.jvm.hotspot.memory \
0N/Asun.jvm.hotspot.oops \
0N/Asun.jvm.hotspot.runtime \
0N/Asun.jvm.hotspot.runtime.amd64 \
0N/Asun.jvm.hotspot.runtime.ia64 \
0N/Asun.jvm.hotspot.runtime.linux \
0N/Asun.jvm.hotspot.runtime.linux_amd64 \
0N/Asun.jvm.hotspot.runtime.linux_ia64 \
0N/Asun.jvm.hotspot.runtime.linux_sparc \
0N/Asun.jvm.hotspot.runtime.linux_x86 \
0N/Asun.jvm.hotspot.runtime.posix \
0N/Asun.jvm.hotspot.runtime.solaris_amd64 \
0N/Asun.jvm.hotspot.runtime.solaris_sparc \
0N/Asun.jvm.hotspot.runtime.solaris_x86 \
0N/Asun.jvm.hotspot.runtime.sparc \
0N/Asun.jvm.hotspot.runtime.win32_amd64 \
0N/Asun.jvm.hotspot.runtime.win32_ia64 \
0N/Asun.jvm.hotspot.runtime.win32_x86 \
0N/Asun.jvm.hotspot.runtime.x86 \
0N/Asun.jvm.hotspot.tools \
0N/Asun.jvm.hotspot.tools.jcore \
0N/Asun.jvm.hotspot.tools.soql \
0N/Asun.jvm.hotspot.types \
0N/Asun.jvm.hotspot.types.basic \
0N/Asun.jvm.hotspot.ui \
0N/Asun.jvm.hotspot.ui.action \
0N/Asun.jvm.hotspot.ui.classbrowser \
0N/Asun.jvm.hotspot.ui.resources \
0N/Asun.jvm.hotspot.ui.table \
0N/Asun.jvm.hotspot.ui.tree \
0N/Asun.jvm.hotspot.ui.treetable \
0N/Asun.jvm.hotspot.utilities \
0N/Asun.jvm.hotspot.utilities.memo \
258N/Asun.jvm.hotspot.utilities.soql \
258N/Acom.sun.java.swing.action \
258N/Acom.sun.java.swing.ui
0N/A#END PKGLIST
0N/A
0N/A# Generated using the build-filelist script
0N/AFILELIST = \
0N/Asun/jvm/hotspot/*.java \
0N/Asun/jvm/hotspot/asm/*.java \
0N/Asun/jvm/hotspot/asm/amd64/*.java \
0N/Asun/jvm/hotspot/asm/ia64/*.java \
0N/Asun/jvm/hotspot/asm/sparc/*.java \
0N/Asun/jvm/hotspot/asm/x86/*.java \
0N/Asun/jvm/hotspot/bugspot/*.java \
0N/Asun/jvm/hotspot/bugspot/tree/*.java \
0N/Asun/jvm/hotspot/c1/*.java \
0N/Asun/jvm/hotspot/code/*.java \
0N/Asun/jvm/hotspot/compiler/*.java \
0N/Asun/jvm/hotspot/debugger/*.java \
0N/Asun/jvm/hotspot/debugger/amd64/*.java \
0N/Asun/jvm/hotspot/debugger/cdbg/*.java \
0N/Asun/jvm/hotspot/debugger/cdbg/basic/*.java \
0N/Asun/jvm/hotspot/debugger/cdbg/basic/amd64/*.java \
0N/Asun/jvm/hotspot/debugger/cdbg/basic/x86/*.java \
0N/Asun/jvm/hotspot/debugger/dbx/*.java \
0N/Asun/jvm/hotspot/debugger/dbx/sparc/*.java \
0N/Asun/jvm/hotspot/debugger/dbx/x86/*.java \
0N/Asun/jvm/hotspot/debugger/dummy/*.java \
0N/Asun/jvm/hotspot/debugger/ia64/*.java \
0N/Asun/jvm/hotspot/debugger/linux/*.java \
0N/Asun/jvm/hotspot/debugger/linux/x86/*.java \
0N/Asun/jvm/hotspot/debugger/posix/*.java \
0N/Asun/jvm/hotspot/debugger/posix/elf/*.java \
0N/Asun/jvm/hotspot/debugger/proc/*.java \
0N/Asun/jvm/hotspot/debugger/proc/amd64/*.java \
0N/Asun/jvm/hotspot/debugger/proc/sparc/*.java \
0N/Asun/jvm/hotspot/debugger/proc/x86/*.java \
0N/Asun/jvm/hotspot/debugger/remote/*.java \
0N/Asun/jvm/hotspot/debugger/remote/amd64/*.java \
0N/Asun/jvm/hotspot/debugger/remote/sparc/*.java \
0N/Asun/jvm/hotspot/debugger/remote/x86/*.java \
0N/Asun/jvm/hotspot/debugger/sparc/*.java \
0N/Asun/jvm/hotspot/debugger/win32/*.java \
0N/Asun/jvm/hotspot/debugger/win32/coff/*.java \
0N/Asun/jvm/hotspot/debugger/windbg/*.java \
0N/Asun/jvm/hotspot/debugger/windbg/ia64/*.java \
0N/Asun/jvm/hotspot/debugger/windbg/x86/*.java \
0N/Asun/jvm/hotspot/debugger/x86/*.java \
0N/Asun/jvm/hotspot/interpreter/*.java \
0N/Asun/jvm/hotspot/jdi/*.java \
0N/Asun/jvm/hotspot/livejvm/*.java \
0N/Asun/jvm/hotspot/memory/*.java \
0N/Asun/jvm/hotspot/oops/*.java \
0N/Asun/jvm/hotspot/runtime/*.java \
0N/Asun/jvm/hotspot/runtime/amd64/*.java \
0N/Asun/jvm/hotspot/runtime/ia64/*.java \
0N/Asun/jvm/hotspot/runtime/linux/*.java \
0N/Asun/jvm/hotspot/runtime/linux_amd64/*.java \
0N/Asun/jvm/hotspot/runtime/linux_ia64/*.java \
0N/Asun/jvm/hotspot/runtime/linux_sparc/*.java \
0N/Asun/jvm/hotspot/runtime/linux_x86/*.java \
0N/Asun/jvm/hotspot/runtime/posix/*.java \
0N/Asun/jvm/hotspot/runtime/solaris_amd64/*.java \
0N/Asun/jvm/hotspot/runtime/solaris_sparc/*.java \
0N/Asun/jvm/hotspot/runtime/solaris_x86/*.java \
0N/Asun/jvm/hotspot/runtime/sparc/*.java \
0N/Asun/jvm/hotspot/runtime/win32_amd64/*.java \
0N/Asun/jvm/hotspot/runtime/win32_ia64/*.java \
0N/Asun/jvm/hotspot/runtime/win32_x86/*.java \
0N/Asun/jvm/hotspot/runtime/x86/*.java \
0N/Asun/jvm/hotspot/tools/*.java \
0N/Asun/jvm/hotspot/tools/jcore/*.java \
0N/Asun/jvm/hotspot/tools/soql/*.java \
0N/Asun/jvm/hotspot/types/*.java \
0N/Asun/jvm/hotspot/types/basic/*.java \
0N/Asun/jvm/hotspot/ui/*.java \
0N/Asun/jvm/hotspot/ui/action/*.java \
0N/Asun/jvm/hotspot/ui/classbrowser/*.java \
0N/Asun/jvm/hotspot/ui/table/*.java \
0N/Asun/jvm/hotspot/ui/tree/*.java \
0N/Asun/jvm/hotspot/ui/treetable/*.java \
0N/Asun/jvm/hotspot/utilities/*.java \
0N/Asun/jvm/hotspot/utilities/memo/*.java \
258N/Asun/jvm/hotspot/utilities/soql/*.java \
258N/Acom/sun/java/swing/action/*.java \
258N/Acom/sun/java/swing/ui/*.java
0N/A#END FILELIST
0N/A
0N/Aifneq "x$(ALT_BOOTDIR)" "x"
0N/A BOOTDIR := $(ALT_BOOTDIR)
0N/Aendif
0N/A
0N/Aifeq "x$(BOOTDIR)" "x"
0N/A JDK_HOME := $(shell dirname $(shell which java))/..
0N/Aelse
0N/A JDK_HOME := $(BOOTDIR)
0N/Aendif
0N/A
0N/AisUnix := $(shell test -r c:/; echo $$?)
0N/A
0N/Aifeq "$(isUnix)" "1"
0N/A CPS := :
0N/Aelse
0N/A CPS := ";"
0N/Aendif
0N/A
0N/ASRC_DIR = ../src/share/classes
0N/ABUILD_DIR = ../build
0N/AOUTPUT_DIR = $(BUILD_DIR)/classes
0N/ADOC_DIR = $(BUILD_DIR)/doc
0N/A
0N/A# gnumake 3.78.1 does not accept the *s,
0N/A# so use the shell to expand them
0N/AALLFILES := $(patsubst %,$(SRC_DIR)/%,$(FILELIST))
0N/AALLFILES := $(shell /bin/ls $(ALLFILES))
0N/A
258N/A# tools.jar is used by the sa-jdi binding
258N/ACLASSPATH = $(JDK_HOME)/lib/tools.jar
0N/A
0N/ACLASSPATH := $(subst \,/,$(CLASSPATH))
0N/A
0N/A# FIXME: autogenerate call to rmic
0N/A
0N/ASA_BUILD_VERSION_PROP = "sun.jvm.hotspot.runtime.VM.saBuildVersion=$(SA_BUILD_VERSION)"
0N/A
0N/ASA_PROPERTIES = $(OUTPUT_DIR)/sa.properties
258N/AJAVAC = $(JDK_HOME)/bin/javac
258N/AJAVADOC = $(JDK_HOME)/bin/javadoc
258N/ARMIC = $(JDK_HOME)/bin/rmic
0N/A
0N/A# Tagging it on because there's no reason not to run it
0N/Aall: filelist
0N/A @mkdir -p $(OUTPUT_DIR)
0N/A @echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES)
258N/A $(JAVAC) -source 1.4 -classpath $(CLASSPATH) -deprecation -sourcepath $(SRC_DIR) -g -d $(OUTPUT_DIR) @filelist
258N/A $(RMIC) -classpath $(OUTPUT_DIR) -d $(OUTPUT_DIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer
0N/A rm -f $(OUTPUT_DIR)/sun/jvm/hotspot/utilities/soql/sa.js
0N/A cp $(SRC_DIR)/sun/jvm/hotspot/utilities/soql/sa.js $(OUTPUT_DIR)/sun/jvm/hotspot/utilities/soql
258N/A mkdir -p $(OUTPUT_DIR)/sun/jvm/hotspot/ui/resources
258N/A rm -f $(OUTPUT_DIR)/sun/jvm/hotspot/ui/resources/*
258N/A cp $(SRC_DIR)/sun/jvm/hotspot/ui/resources/*.png $(OUTPUT_DIR)/sun/jvm/hotspot/ui/resources/
258N/A cp -r $(SRC_DIR)/images/* $(OUTPUT_DIR)/
0N/A
0N/Aallprof: filelist
0N/A @mkdir -p $(OUTPUT_DIR)
0N/A @echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES)
258N/A $(JAVAC) -source 1.4 -J-Xprof -classpath $(CLASSPATH) -deprecation -sourcepath $(SRC_DIR) -g -d $(OUTPUT_DIR) @filelist
258N/A $(RMIC) -classpath $(OUTPUT_DIR) -d $(OUTPUT_DIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer
0N/A rm -f $(OUTPUT_DIR)/sun/jvm/hotspot/utilities/soql/sa.js
0N/A cp $(SRC_DIR)/sun/jvm/hotspot/utilities/soql/sa.js $(OUTPUT_DIR)/sun/jvm/hotspot/utilities/soql
258N/A mkdir -p $(OUTPUT_DIR)/sun/jvm/hotspot/ui/resources
258N/A rm -f $(OUTPUT_DIR)/sun/jvm/hotspot/ui/resources/*
258N/A cp $(SRC_DIR)/sun/jvm/hotspot/ui/resources/*.png $(OUTPUT_DIR)/sun/jvm/hotspot/ui/resources/
258N/A cp -r $(SRC_DIR)/images/* $(OUTPUT_DIR)/
0N/A
258N/A.PHONY: filelist
0N/Afilelist: $(ALLFILES)
0N/A @if [ ! -f $(JDK_HOME)/lib/tools.jar ] ; then \
0N/A echo "Missing $(JDK_HOME)/lib/tools.jar file. Use 1.6.0 or later version jdk to build SA."; \
0N/A echo ""; \
0N/A exit 1; \
0N/A fi
0N/A @rm -f $@
0N/A @echo $(ALLFILES) > $@
0N/A
0N/A.PHONY: natives
0N/Anatives:
0N/A cd ../src/os/`java -classpath $(OUTPUT_DIR) sun.jvm.hotspot.utilities.PlatformInfo`; $(MAKE) all
0N/A
0N/A.PHONY: sa-jdi.jar
0N/Asa-jdi.jar:
258N/A echo "sa-jdi.jar is built by a hotspot build."
0N/A
0N/Adocs:
258N/A @$(JAVADOC) -private -classpath $(CLASSPATH) -sourcepath $(SRC_DIR) -d $(DOC_DIR) $(PKGLIST)
0N/A
0N/Asizes: $(ALLFILES)
0N/A wc -l $(ALLFILES)
0N/A
0N/Acscope: $(ALLFILES)
258N/A rm -f java.files
0N/A echo $(ALLFILES) > java.files
0N/A cscope -b -i java.files -f java.out
258N/A rm -f java.files
0N/A
0N/A.PHONY: sa.jar
0N/Asa.jar:
0N/A rm -f $(BUILD_DIR)/sa.jar
0N/A cd $(OUTPUT_DIR) ; jar cvf ../sa.jar *
0N/A
0N/Aclean::
0N/A rm -rf filelist
0N/A cd ../src/os/`java -classpath $(OUTPUT_DIR) sun.jvm.hotspot.utilities.PlatformInfo`; $(MAKE) clean
0N/A rm -rf $(BUILD_DIR)/*