Makefile revision 2796
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# This code is free software; you can redistribute it and/or modify it
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# under the terms of the GNU General Public License version 2 only, as
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# published by the Free Software Foundation.
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# This code is distributed in the hope that it will be useful, but WITHOUT
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# version 2 for more details (a copy is included in the LICENSE file that
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# accompanied this code).
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# You should have received a copy of the GNU General Public License version
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# 2 along with this work; if not, write to the Free Software Foundation,
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# or visit www.oracle.com if you need additional information or have any
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# This makefile creates a build tree and lights off a build.
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# You can go back into the build tree and perform rebuilds or
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# incremental builds as desired. Be sure to reestablish
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# environment variable settings for LD_LIBRARY_PATH and JAVA_HOME.
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# The make process now relies on java and javac. These can be
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# specified either implicitly on the PATH, by setting the
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# (JDK-inherited) ALT_BOOTDIR environment variable to full path to a
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# JDK in which bin/java and bin/javac are present and working (e.g.,
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# /usr/local/java/jdk1.3/solaris), or via the (JDK-inherited)
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# default BOOTDIR path value. Note that one of ALT_BOOTDIR
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# or BOOTDIR has to be set. We do *not* search javac, javah, rmic etc.
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# from the PATH.
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# One can set ALT_BOOTDIR or BOOTDIR to point to a jdk that runs on
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# an architecture that differs from the target architecture, as long
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# as the bootstrap jdk runs under the same flavor of OS as the target
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# (i.e., if the target is linux, point to a jdk that runs on a linux
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# box). In order to use such a bootstrap jdk, set the make variable
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# REMOTE to the desired remote command mechanism, e.g.,
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# make REMOTE="rsh -l me myotherlinuxbox"
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# Along with VM, Serviceability Agent (SA) is built for SA/JDI binding.
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# JDI binding on SA produces two binaries:
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# 1. sa-jdi.jar - This is build before building libjvm[_g].so
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# Please refer to ./makefiles/sa.make
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# 2. libsa[_g].so - Native library for SA - This is built after
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# libjsig[_g].so (signal interposition library)
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# Please refer to ./makefiles/vm.make
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeney# If $(GAMMADIR)/agent dir is not present, SA components are not built.
1f08a8488664773a7d96fa3a043a639692d2a5cbMatt Sweeneyinclude $(GAMMADIR)/make/$(OSNAME)/makefiles/rules.make
# exact.east.sun.com. This logic will cause GAMMADIR to begin with
NEW_GAMMADIR := \
NEW_GAMMADIR := \
# jvmg* - "fat" libjvm_g - debug info linked into libjvm_g.so
# in the build.sh script:
BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH)
BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION)
all:
# jvmti.make requires XSLT (J2SE 1.4.x or newer):
echo "*** An XSLT processor (J2SE 1.4.x or newer) is required" \
$(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/makefiles/jvmti.make $(MFLAGS) $(BUILDTREE_VARS) JvmtiOutDir=$(SUBDIR_DOCS) jvmtidocs