Makefile revision 1769
2f0d866e126dd288169fed591c259c1c6b4016e5vboxsync# Copyright 1997-2009 Sun Microsystems, Inc. All Rights Reserved.
2f0d866e126dd288169fed591c259c1c6b4016e5vboxsync# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsync# This code is free software; you can redistribute it and/or modify it
2f0d866e126dd288169fed591c259c1c6b4016e5vboxsync# under the terms of the GNU General Public License version 2 only, as
2f0d866e126dd288169fed591c259c1c6b4016e5vboxsync# published by the Free Software Foundation. Sun designates this
86a00a5efe7fdc9725f2076050b996e205259cd6vboxsync# particular file as subject to the "Classpath" exception as provided
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# by Sun in the LICENSE file that accompanied this code.
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# This code is distributed in the hope that it will be useful, but WITHOUT
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# version 2 for more details (a copy is included in the LICENSE file that
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# accompanied this code).
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# You should have received a copy of the GNU General Public License version
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# 2 along with this work; if not, write to the Free Software Foundation,
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# CA 95054 USA or visit www.sun.com if you need additional information or
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync# have any questions.
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsync# Imports files exported by a hotspot build or provided from an external
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsync# location into the OUTPUTDIR, and also primes the OUTPUTDIR with files
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsync# that are provided inside this workspace.
c1b76913eb226361b0f57efd4dc45072db194218vboxsync# IMPORT_LIST contains the list of destination files that are copied
2f0d866e126dd288169fed591c259c1c6b4016e5vboxsync# from external places (outside this workspace).
f2653ef8b5f8e8b668eb4dbf2543262fe260dbf2vboxsync# INTERNAL_IMPORT_LIST is the list of destination files from BUILDDIR.
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsyncJVMDB_NAME = $(LIB_PREFIX)jvm$(DB_SUFFIX).$(LIBRARY_SUFFIX)
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsync# Needed to do file copy
e2a99f74c6a084bdf1f27753da9e7eba175f01aavboxsync# List of files created here or coming from BUILDDIR area (this workspace)
2d97f8baccdd684bc0a8a15eb86bbe9ff2b85374vboxsync# List of files coming from outside this workspace
f2653ef8b5f8e8b668eb4dbf2543262fe260dbf2vboxsyncIMPORT_LIST = $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_NAME) \
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsync# INCLUDE_SA is false on platforms where SA is not supported.
7bc05c1678187b43794b2e36bacea8d8036038e1vboxsync# On platforms where it is supported, we want to allow it to
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsync# not be present, at least temporarily. So,
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsync# if the SA files (well, just sa-jdi.jar) do not exist
715e49c31b15c23c17a9ce3be42a75e7c48d4b78vboxsync# in the HOTSPOT_IMPORT_PATH, then we won't build SA.
870c45cce975c26ed5f57b2f9b22acd88614681bvboxsyncSA_EXISTS := $(shell if [ -r $(HOTSPOT_IMPORT_PATH)/lib/sa-jdi.jar ] ; then \
99be02f9e15a3ca61b6a7c207cc7eb68dbd04817vboxsync# Hotspot client is only available on 32-bit builds
c34f9b1d1526bb5e7fa22d868de402fc50c318fevboxsync IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME) \
8be52b949bfcf8707a76bc4dfc34500f1deb976bvboxsync# Windows vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv Windows
8be52b949bfcf8707a76bc4dfc34500f1deb976bvboxsyncIMPORT_LIST += $(MS_RUNTIME_LIBRARIES:%=$(BINDIR)/%)
f1c2640cecd9a1bf30c9ee1194b04cad4eb00faavboxsync# NOTE: These might actually come from BUILDDIR, depends on the settings.
0e5731ab59b4ecead38375f26eeea698f00b19fdvboxsync$(BINDIR)/$(MSVCRNN_DLL): $(MSVCRNN_DLL_PATH)/$(MSVCRNN_DLL)
a7aa94e0115a73841f34ebbfa00f63fa1904e51fvboxsync# Get the hotspot .map and .pdb files for client and server
18f9f43e809ff424b14f19e097382f44fda2e11evboxsync $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMMAP_NAME) \
46b1264ee3b814435782dab838c9a212023e24b9vboxsync# Add .map and .pdb files to the import path for client and kernel VMs.
c6b3d55ef646614cc689faa1fa4ddc961712b6ffvboxsync# These are only available on 32-bit windows builds.
46b1264ee3b814435782dab838c9a212023e24b9vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMMAP_NAME) \
0013b984212f7f0b741f4121be352249fc7e487bvboxsync IMPORT_LIST += $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMMAP_NAME) \
7995839c0b791ae2334df998d34dbccac12b3b41vboxsync$(LIBDIR)/$(JVMLIB_NAME): $(HOTSPOT_LIB_PATH)/$(JVMLIB_NAME)
7995839c0b791ae2334df998d34dbccac12b3b41vboxsync# it is OK for the .map and .pdb files to not exist, so do not force a
7995839c0b791ae2334df998d34dbccac12b3b41vboxsync# dependency on them from the bootstrap location, and allow the copy to fail.
0dfc79e0666da4c8853deda18a14ebf5819d0d78vboxsync# Windows ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Windows
ab455939477d81b7bb500586f88029d3a3c0b34cvboxsyncelse # PLATFORM
cd7a8c034836a94a0c4f0adf9764f9ed661cdd01vboxsync# NOT Windows vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv NOT Windows
cddc13613d9ef72fa2fe991ef61bf4ab5522c0f4vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME)
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsyncIMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME)
727255ec6d902170e2869565ec03efb2691dac7evboxsync# solaris vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv solaris
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_NAME)
01f0d2858d4377ecf19f5aac2531efe99fef9ffcvboxsyncIMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_NAME)
3bf4bd3347c2bc3bc7c6b24672096f514235ad76vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_NAME)
1d42c7799e7c35c5b36a2494cde9a47e5651ceadvboxsync# For backwards compatability, make a link of the 32-bit client JVM to $(LIBDIR)
d1c36fd86d36726777e3d6f9d040573e0aaf30devboxsync# create a link from lib/libjvm.so to client/libjvm.so
78df3a3ca20e014e0d9eb72cd7bb72711255d5f6vboxsync$(LIB_LOCATION)/$(JVM_NAME): $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME)
e43535ace2499e7f8ef8822186047979bd58d464vboxsync# solaris ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ solaris
# - sa-jdi.jar: This goes into the same dir as tools.jar.
# - a shared library: sawindbg.dll on windows / libproc.sa on unix
# shared libs, eg. libjdwp.so.
INTERNAL_IMPORT_LIST += \