Makefile revision 3261
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync#
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync#
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# This code is free software; you can redistribute it and/or modify it
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# under the terms of the GNU General Public License version 2 only, as
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# published by the Free Software Foundation. Oracle designates this
c58f1213e628a545081c70e26c6b67a841cff880vboxsync# particular file as subject to the "Classpath" exception as provided
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# by Oracle in the LICENSE file that accompanied this code.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync#
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# This code is distributed in the hope that it will be useful, but WITHOUT
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# version 2 for more details (a copy is included in the LICENSE file that
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# accompanied this code).
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync#
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# You should have received a copy of the GNU General Public License version
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# 2 along with this work; if not, write to the Free Software Foundation,
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync#
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# or visit www.oracle.com if you need additional information or have any
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# questions.
9040f019271f91b98e1320c0a8c38a42636e3979vboxsync#
9040f019271f91b98e1320c0a8c38a42636e3979vboxsync
9040f019271f91b98e1320c0a8c38a42636e3979vboxsync#
9040f019271f91b98e1320c0a8c38a42636e3979vboxsync# Imports files exported by a hotspot build or provided from an external
9040f019271f91b98e1320c0a8c38a42636e3979vboxsync# location into the OUTPUTDIR, and also primes the OUTPUTDIR with files
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# that are provided inside this workspace.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync#
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# IMPORT_LIST contains the list of destination files that are copied
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# from external places (outside this workspace).
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync#
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# INTERNAL_IMPORT_LIST is the list of destination files from BUILDDIR.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync#
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncBUILDDIR = ../..
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncMODULE = base
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncPRODUCT = java
9040f019271f91b98e1320c0a8c38a42636e3979vboxsyncinclude $(BUILDDIR)/common/Defs.gmk
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncSERVER_LOCATION = server
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncCLIENT_LOCATION = client
9040f019271f91b98e1320c0a8c38a42636e3979vboxsync
9040f019271f91b98e1320c0a8c38a42636e3979vboxsyncDB_SUFFIX = _db
9040f019271f91b98e1320c0a8c38a42636e3979vboxsyncDTRACE_SUFFIX = _dtrace
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifeq ($(PLATFORM), windows)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync LIB_LOCATION = $(BINDIR)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncelse
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync LIB_LOCATION = $(LIBDIR)/$(LIBARCH)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncendif
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncJVM_NAME = $(LIB_PREFIX)jvm.$(LIBRARY_SUFFIX)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncJVMLIB_NAME = $(LIB_PREFIX)jvm.$(LIB_SUFFIX)
9040f019271f91b98e1320c0a8c38a42636e3979vboxsyncJVMMAP_NAME = $(LIB_PREFIX)jvm.map
9040f019271f91b98e1320c0a8c38a42636e3979vboxsyncJVMPDB_NAME = $(LIB_PREFIX)jvm.pdb
9040f019271f91b98e1320c0a8c38a42636e3979vboxsyncLIBJSIG_NAME = $(LIB_PREFIX)jsig.$(LIBRARY_SUFFIX)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncJVMDB_NAME = $(LIB_PREFIX)jvm$(DB_SUFFIX).$(LIBRARY_SUFFIX)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncJVMDTRACE_NAME = $(LIB_PREFIX)jvm$(DTRACE_SUFFIX).$(LIBRARY_SUFFIX)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncCLASSSHARINGDATA_DIR = $(BUILDDIR)/tools/sharing
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# Needed to do file copy
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncABS_BUILDDIR :=$(call FullPath,$(BUILDDIR))
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncSUBDIRS_desktop = fonts
cc5db764b0331d17575b3f384d29e1c74970e62fvboxsyncSUBDIRS_tools = sajdi
99be02f9e15a3ca61b6a7c207cc7eb68dbd04817vboxsyncinclude $(BUILDDIR)/common/Subdirs.gmk
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncall clean clobber::
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(SUBDIRS-loop)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncall:: build
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# List of files created here or coming from BUILDDIR area (this workspace)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncINTERNAL_IMPORT_LIST = $(LIBDIR)/classlist
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync# List of files coming from outside this workspace
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsyncIMPORT_LIST = $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_NAME) \
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(LIB_LOCATION)/$(SERVER_LOCATION)/Xusage.txt
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# Hotspot client is only available on 32-bit non-Zero builds
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifneq ($(ZERO_BUILD), true)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifeq ($(ARCH_DATA_MODEL), 32)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME) \
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(LIB_LOCATION)/$(CLIENT_LOCATION)/Xusage.txt
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncendif
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncendif
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifeq ($(PLATFORM), windows)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# Windows vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv Windows
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncIMPORT_LIST += $(MS_RUNTIME_LIBRARIES:%=$(BINDIR)/%)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# NOTE: These might actually come from BUILDDIR, depends on the settings.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync$(BINDIR)/msvcrt.dll: $(MSVCRT_DLL_PATH)/msvcrt.dll
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(install-import-file)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(call chmod-file, a+x)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync$(BINDIR)/$(MSVCRNN_DLL): $(MSVCRNN_DLL_PATH)/$(MSVCRNN_DLL)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(install-import-file)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(call chmod-file, a+x)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# Get the hotspot .map and .pdb files for client and server
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncIMPORT_LIST += \
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(LIBDIR)/$(JVMLIB_NAME) \
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMMAP_NAME) \
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMPDB_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# Add .map and .pdb files to the import path for client and kernel VMs.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# These are only available on 32-bit windows builds.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifeq ($(ARCH_DATA_MODEL), 32)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMMAP_NAME) \
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMPDB_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync ifeq ($(DO_KERNEL), true)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMMAP_NAME) \
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMPDB_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync endif
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncendif
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync$(LIBDIR)/$(JVMLIB_NAME): $(HOTSPOT_LIB_PATH)/$(JVMLIB_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(install-import-file)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# it is OK for the .map and .pdb files to not exist, so do not force a
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# dependency on them from the bootstrap location, and allow the copy to fail.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMMAP_NAME):
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(prep-target)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync -$(CP) $(HOTSPOT_CLIENT_PATH)/$(JVMMAP_NAME) $@
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(install-module-file)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync$(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMMAP_NAME):
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(prep-target)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync -$(CP) $(HOTSPOT_KERNEL_PATH)/$(JVMMAP_NAME) $@
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(install-module-file)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMMAP_NAME):
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(prep-target)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync -$(CP) $(HOTSPOT_SERVER_PATH)/$(JVMMAP_NAME) $@
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(install-module-file)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMPDB_NAME):
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(prep-target)
a0a9f39e8864357c2e1e61106958411240f5bf6bvboxsync -$(CP) $(HOTSPOT_CLIENT_PATH)/$(JVMPDB_NAME) $@
a0a9f39e8864357c2e1e61106958411240f5bf6bvboxsync @$(install-module-file)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync$(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVMPDB_NAME):
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(prep-target)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync -$(CP) $(HOTSPOT_KERNEL_PATH)/$(JVMPDB_NAME) $@
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(install-module-file)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMPDB_NAME):
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(prep-target)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync -$(CP) $(HOTSPOT_SERVER_PATH)/$(JVMPDB_NAME) $@
7eaaa8a4480370b82ef3735994f986f338fb4df2vboxsync @$(install-module-file)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# Windows ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Windows
b39c3fa81cadaec00ebb2e7170a8db96998b7032vboxsyncelse # PLATFORM
b39c3fa81cadaec00ebb2e7170a8db96998b7032vboxsync# NOT Windows vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv NOT Windows
b39c3fa81cadaec00ebb2e7170a8db96998b7032vboxsync
b39c3fa81cadaec00ebb2e7170a8db96998b7032vboxsyncIMPORT_LIST += \
b39c3fa81cadaec00ebb2e7170a8db96998b7032vboxsync $(LIB_LOCATION)/$(LIBJSIG_NAME) \
479124979f37167f8ce75bf59090903d30e1ced3vboxsync $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_NAME)
d8b66c9f4ecb096e1f2308d74df4d6a1220c3b98vboxsync
d8b66c9f4ecb096e1f2308d74df4d6a1220c3b98vboxsyncifeq ($(PLATFORM), solaris)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# The conditional can be removed when import JDKs contain these files.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_NAME)),)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncelse
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(warning WARNING: $(HOTSPOT_SERVER_PATH)/$(JVMDB_NAME) not found!)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncendif
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncendif
71e61358090b8d7bad611a6d38786ebd63ed04e1vboxsync
71e61358090b8d7bad611a6d38786ebd63ed04e1vboxsyncifneq ($(ZERO_BUILD), true)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifeq ($(ARCH_DATA_MODEL), 32)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncIMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME)
88e9d91abf9293ecc1c70e0bf40e42f1c3a0bdcevboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifeq ($(PLATFORM), solaris)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# solaris vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv solaris
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
ad27e1d5e48ca41245120c331cc88b50464813cevboxsyncIMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# The conditional can be removed when import JDKs contain these files.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME)),)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncelse
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(warning WARNING: $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME) not found!)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncendif
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# The conditional can be removed when import JDKs contain these files.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME)),)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncelse
b39c3fa81cadaec00ebb2e7170a8db96998b7032vboxsync $(warning WARNING: $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME) not found!)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncendif
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# The conditional can be removed when import JDKs contain these files.
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_NAME)),)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_NAME)
00019d7a7381b029a3c17229f14c24a3a7b07a94vboxsyncelse
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync $(warning WARNING: $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_NAME) not found!)
00019d7a7381b029a3c17229f14c24a3a7b07a94vboxsyncendif
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# For backwards compatability, make a link of the 32-bit client JVM to $(LIBDIR)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncIMPORT_LIST += $(LIB_LOCATION)/$(JVM_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
6831f283dbc5c27bde8a8f8bea179b84a5741697vboxsync$(LIB_LOCATION)/$(JVM_NAME): $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync @$(prep-target)
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync# solaris ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ solaris
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncendif # 32bit solaris
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsyncendif # 32bit
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsyncendif # ZERO_BUILD
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync# NOT Windows ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ NOT Windows
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsyncendif # PLATFORM
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVM_NAME)
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync $(install-import-file)
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync$(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVM_NAME): $(HOTSPOT_KERNEL_PATH)/$(JVM_NAME)
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync $(install-file)
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync$(LIB_LOCATION)/$(LIBJSIG_NAME): $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_NAME)
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync $(install-import-file)
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync
19a258565a4d24e5a0af62f626943ac9b898d957vboxsync$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME) \
479124979f37167f8ce75bf59090903d30e1ced3vboxsync$(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_NAME):
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync @$(prep-target)
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync $(call install-sym-link, ../$(LIBJSIG_NAME))
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync
bbf3d430bae83177ab9ce3097f49d89cc873e7c0vboxsync$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDB_NAME)
$(install-import-file)
$(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDB_NAME)
$(install-import-file)
$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDB_NAME)
$(install-import-file)
$(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME)
$(install-import-file)
$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME)
$(install-import-file)
$(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDTRACE_NAME)
$(install-import-file)
$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_NAME)
$(install-import-file)
$(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_NAME)
$(install-import-file)
$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_NAME): $(HOTSPOT_SERVER_PATH)/$(JVM_NAME)
$(install-import-file)
$(LIB_LOCATION)/$(SERVER_LOCATION)/Xusage.txt : $(HOTSPOT_SERVER_PATH)/Xusage.txt
$(install-import-file)
$(LIB_LOCATION)/$(CLIENT_LOCATION)/Xusage.txt : $(HOTSPOT_CLIENT_PATH)/Xusage.txt
$(install-import-file)
$(LIB_LOCATION)/$(KERNEL_LOCATION)/Xusage.txt : $(HOTSPOT_KERNEL_PATH)/Xusage.txt
$(install-file)
#
# Specific to non-OpenJDK building
#
ifndef OPENJDK
INTERNAL_IMPORT_LIST += \
$(LIBDIR)/security/US_export_policy.jar \
$(LIBDIR)/security/local_policy.jar \
$(LIBDIR)/jce.jar
$(LIBDIR)/jce.jar: \
$(BUILDDIR)/closed/tools/crypto/jce/jce.jar
$(install-non-module-file)
$(LIBDIR)/security/US_export_policy.jar: \
$(BUILDDIR)/closed/tools/crypto/jce/US_export_policy.jar
$(install-file)
$(LIBDIR)/security/local_policy.jar: \
$(BUILDDIR)/closed/tools/crypto/jce/local_policy.jar
$(install-file)
endif # OPENJDK
ADDJSUM_JARFILE = $(BUILDTOOLJARDIR)/addjsum.jar
# Construct classlist file
$(LIBDIR)/classlist: \
$(CLASSSHARINGDATA_DIR)/classlist.$(PLATFORM) \
$(ADDJSUM_JARFILE)
@$(prep-target)
@$(RM) -f $@.temp
$(BOOT_JAVA_CMD) -jar $(ADDJSUM_JARFILE) \
$(CLASSSHARINGDATA_DIR)/classlist.$(PLATFORM) $@.temp
$(MV) $@.temp $@
# Import internal files (ones that are stashed in this source tree)
import_internal_files : $(INTERNAL_IMPORT_LIST)
# Import files from the JDK that we are not building
import_files: $(IMPORT_LIST)
# Get component information variables and rules
include $(BUILDDIR)/common/internal/ImportComponents.gmk
# Security files we need to import
SEC_FILES_ZIP=$(ABS_BUILDDIR)/tools/crypto/sec-bin.zip
SEC_FILES_WIN_ZIP=$(ABS_BUILDDIR)/tools/crypto/sec-windows-bin.zip
JGSS_WIN32_FILES_ZIP=$(ABS_BUILDDIR)/tools/crypto/jgss-windows-i586-bin.zip
JGSS_WIN64_FILES_ZIP=$(ABS_BUILDDIR)/tools/crypto/jgss-windows-x64-bin.zip
# Unzip zip file $2 into directory $1 (if $2 exists)
# Warning: $2 must be absolute path not relative
define SecUnzipper
if [ -f $2 ] ; then \
$(MKDIR) -p $1; \
$(ECHO) "( $(CD) $1 && $(UNZIP) -o $2 )"; \
( $(CD) $1 && $(UNZIP) -o $2 ); \
fi
endef
# If sec-bin exists, unpack it into the build directory
# Also, the library recompile build indirectly depends on two SSL classes,
# so copy those as well FIXUP
# if sec-windows-bin exists, unpack it into the build directory
# if JGSS files exists, unpack it into the build directory
$(TEMPDIR)/security_imported:
@$(prep-target)
@$(call SecUnzipper,$(OUTPUTDIR),$(SEC_FILES_ZIP))
ifeq ($(PLATFORM), windows)
@$(call SecUnzipper,$(OUTPUTDIR),$(SEC_FILES_WIN_ZIP))
endif
ifeq ($(PLATFORM), windows)
ifeq ($(ARCH_DATA_MODEL), 32)
@$(call SecUnzipper,$(OUTPUTDIR),$(JGSS_WIN32_FILES_ZIP))
else
@$(call SecUnzipper,$(OUTPUTDIR),$(JGSS_WIN64_FILES_ZIP))
endif
endif
@$(ECHO) "Imported on `$(DATE)`" > $@
# Import all files from other components
$(TEMPDIR)/components_imported:
@$(prep-target)
$(call import-component-binaries,$(ABS_OUTPUTDIR))
$(call import-component-sources,$(IMPORTSRCDIR))
$(call import-component-docs,$(IMPORTDOCDIR))
$(call import-component-classes,$(CLASSDESTDIR))
@$(ECHO) "Imported on `$(DATE)`" > $@
# Do pretty much everything
build : import_files \
import_internal_files \
$(TEMPDIR)/components_imported \
$(TEMPDIR)/security_imported
# Clean up what we imported (except for component files)
clean clobber::
$(RM) $(IMPORT_LIST)
$(RM) $(INTERNAL_IMPORT_LIST)
$(call import-component-sources-clean,$(IMPORTSRCDIR))
$(call import-component-docs-clean,$(IMPORTDOCDIR))
$(call import-component-classes-clean,$(CLASSDESTDIR))
$(RM) $(TEMPDIR)/components_imported
$(RM) $(TEMPDIR)/security_imported
.PHONY: import_files import_internal_files