Program.gmk revision 4680
0N/A# Copyright (c) 1995, 2012, Oracle and/or its affiliates. All rights reserved. 0N/A# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 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. Oracle designates this 0N/A# particular file as subject to the "Classpath" exception as provided 0N/A# by Oracle in the LICENSE file that accompanied this code. 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# 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# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 0N/A# Generic makefile for building executables. 0N/A# WARNING: This file is shared with other workspaces. 0N/A# So when it includes other files, it must use JDK_TOPDIR. 0N/A# If building programs, use a normal compile approach 0N/A# set the platform specific directory for macosx, also this platform shares 0N/A# substantial family ties with its siblings (solaris and linux), thus we add 0N/A# solaris src path to its compilation dependencies. 0N/A# Make sure the default rule is all 0N/A# Work-around for missing processor specific mapfiles 0N/A # reuse the mapfiles in the launcher's directory, the same should 0N/A # be applicable to the tool launchers as well. 0N/A# Create a dependency on libjli (Java Launcher Infrastructure) 0N/A# On UNIX, this is a relative dependency using $ORIGIN. Unfortunately, to 0N/A# do this reliably on Linux takes a different syntax than Solaris. 0N/A# On Windows, this is done by using the same directory as the executable 0N/A# itself, as with all the Windows libraries. 0N/A else # ! ARCH_DATA_MODEL 64-bit # Launcher specific files. /D
"JDK_INTERNAL_NAME=$(PROGRAM)" \
endif # LOCAL_RESOURCE_FILE endif # LOCAL_RESOURCE_FILE # We need more Stack for Windows 64bit $(SED) 's%IMVERSION%$(IMVERSION)%g;s%PROGRAM%$(PROGRAM)%g' $< > $@
# We used a hand-crafted manifest file for all executables. # It is tweaked to embed the build number and executable name. # Use ";#2" for .dll and ";#1" for .exe in the MT command below: # Note that we have to link -lthread even when USE_PTHREADS is true. # This is becuase checkForCorrectLibthread() croaks otherwise. # Needed for linking the various launchers # Default Info.plist file for the command line tools. This gets overridden by # some of the jvmstat tools so that they have task_for_pid() privileges # This rule only applies on unix. It supports quantify and its ilk. # Now include make dependencies (created during compilation, see Rules.gmk) # Workaround: gnumake sometimes says files is empty when it shouldn't # was: files := $(foreach file, $(wildcard */$(ARCH)/*.$(DEPEND_SUFFIX)), $(file)) endif # INCREMENTAL_BUILD