Makefile revision 795
#
# Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation. Sun designates this
# particular file as subject to the "Classpath" exception as provided
# by Sun in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
# CA 95054 USA or visit www.sun.com if you need additional information or
# have any questions.
#
#
# Imports files exported by a hotspot build or provided from an external
# location into the OUTPUTDIR, and also primes the OUTPUTDIR with files
# that are provided inside this workspace.
#
# IMPORT_LIST contains the list of destination files that are copied
# from external places (outside this workspace).
#
# INTERNAL_IMPORT_LIST is the list of destination files from BUILDDIR.
#
BUILDDIR = ../..
LIB_LOCATION = $(BINDIR)
else
# Needed to do file copy
# List of files created here or coming from BUILDDIR area (this workspace)
# List of files coming from outside this workspace
# INCLUDE_SA is false on platforms where SA is not supported.
# On platforms where it is supported, we want to allow it to
# not be present, at least temporarily. So,
# if the SA files (well, just sa-jdi.jar) do not exist
# in the HOTSPOT_IMPORT_PATH, then we won't build SA.
else \
fi)
INCLUDE_SA := false
$(LIB_LOCATION)/$(SALIB_NAME)
$(LIB_LOCATION)/$(SAPDB_NAME)
endif # INCLUDE_SA
# Hotspot client is only available on 32-bit builds
# Windows vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv Windows
# NOTE: These might actually come from BUILDDIR, depends on the settings.
$(CHMOD) a+x $@
$(CHMOD) a+x $@
# Get the hotspot .map and .pdb files for client and server
IMPORT_LIST += \
$(LIBDIR)/$(JVMLIB_NAME) \
# Hotspot client is only available on 32-bit builds
# it is OK for the .map and .pdb files to not exist, so do not force a
# dependency on them from the bootstrap location, and allow the copy to fail.
# Windows ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Windows
else # PLATFORM
# NOT Windows vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv NOT Windows
IMPORT_LIST += \
$(LIB_LOCATION)/$(LIBJSIG_NAME) \
# solaris vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv solaris
# For backwards compatability, make a link of the 32-bit client JVM to $(LIBDIR)
# solaris ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ solaris
endif # 32bit solaris
endif # 32bit
# NOT Windows ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ NOT Windows
endif # PLATFORM
$(LN) -s ../$(LIBJSIG_NAME) $@
# The Serviceability Agent is built in the Hotspot workspace.
# It contains two files:
# - sa-jdi.jar: This goes into the same dir as tools.jar.
# - a shared library: sawindbg.dll on windows / libproc.sa on unix
# This goes into the same dir as the other
# shared libs, eg. libjdwp.so.
endif # windows
endif # INCLUDE_SA
#
# Specific to OpenJDK building
#
else # !OPENJDK
INTERNAL_IMPORT_LIST += \
endif # OPENJDK
# Construct classlist file
# Lucida font files are not included in the OpenJDK distribution.
# Get names of font files
# Copy font files into OUTPUTDIR area
endif # linux
endif # !OPENJDK
# Import internal files (ones that are stashed in this source tree)
# Import files from the JDK that we are not building
# Get component information variables and rules
# Security files we need to import
# Unzip zip file $2 into directory $1 (if $2 exists)
# Warning: $2 must be absolute path not relative
if [ -f $2 ] ; then \
$(MKDIR) -p $1; \
fi
# 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
else
# Import all files from other components
# Do pretty much everything
build : import_files \
# Clean up what we imported (except for component files)
$(RM) $(IMPORT_LIST)
$(RM) $(INTERNAL_IMPORT_LIST)