Thu, 17 Jun 2010 16:27:56 -0700
Added tag jdk7-b98 for changeset 3b99409057e4
duke@1 | 1 | # |
ohair@158 | 2 | # Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved. |
duke@1 | 3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
duke@1 | 4 | # |
duke@1 | 5 | # This code is free software; you can redistribute it and/or modify it |
duke@1 | 6 | # under the terms of the GNU General Public License version 2 only, as |
ohair@158 | 7 | # published by the Free Software Foundation. Oracle designates this |
duke@1 | 8 | # particular file as subject to the "Classpath" exception as provided |
ohair@158 | 9 | # by Oracle in the LICENSE file that accompanied this code. |
duke@1 | 10 | # |
duke@1 | 11 | # This code is distributed in the hope that it will be useful, but WITHOUT |
duke@1 | 12 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
duke@1 | 13 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
duke@1 | 14 | # version 2 for more details (a copy is included in the LICENSE file that |
duke@1 | 15 | # accompanied this code). |
duke@1 | 16 | # |
duke@1 | 17 | # You should have received a copy of the GNU General Public License version |
duke@1 | 18 | # 2 along with this work; if not, write to the Free Software Foundation, |
duke@1 | 19 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
duke@1 | 20 | # |
ohair@158 | 21 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
ohair@158 | 22 | # or visit www.oracle.com if you need additional information or have any |
ohair@158 | 23 | # questions. |
duke@1 | 24 | # |
duke@1 | 25 | |
duke@1 | 26 | # |
duke@1 | 27 | # Definitions for Windows. |
duke@1 | 28 | # |
duke@1 | 29 | |
duke@1 | 30 | # Default for COMPILER_WARNINGS_FATAL on Windows (C++ compiler warnings) |
duke@1 | 31 | # Level: Default is 3, 0 means none, 4 is the most but may be unreliable |
duke@1 | 32 | # Some makefiles may have set this to 0 to turn off warnings completely, |
duke@1 | 33 | # which also effectively creates a COMPILER_WARNINGS_FATAL=false situation. |
duke@1 | 34 | # Program.gmk may turn this down to 2 (building .exe's). |
duke@1 | 35 | # Windows 64bit platforms are less likely to be warning free. |
duke@1 | 36 | # Historically, Windows 32bit builds should be mostly warning free. |
duke@1 | 37 | ifndef COMPILER_WARNING_LEVEL |
duke@1 | 38 | COMPILER_WARNING_LEVEL=3 |
duke@1 | 39 | endif |
duke@1 | 40 | ifndef COMPILER_WARNINGS_FATAL |
duke@1 | 41 | COMPILER_WARNINGS_FATAL=false |
duke@1 | 42 | endif |
duke@1 | 43 | |
duke@1 | 44 | # Windows should use parallel compilation for best build times |
duke@1 | 45 | ifndef COMPILE_APPROACH |
duke@1 | 46 | COMPILE_APPROACH = normal |
duke@1 | 47 | endif |
duke@1 | 48 | |
duke@1 | 49 | # Indication that we are doing an incremental build. |
duke@1 | 50 | # This may trigger the creation of make depend files. |
duke@1 | 51 | # (This may not be working on windows yet, always force to false.) |
duke@1 | 52 | override INCREMENTAL_BUILD = false |
duke@1 | 53 | |
duke@1 | 54 | # WARNING: This is extremely touch stuff, between CYGWIN vs. MKS and all |
duke@1 | 55 | # variations of MKS and CYGWIN releases, and 32bit vs 64bit, |
duke@1 | 56 | # this file can give you nightmares. |
duke@1 | 57 | # |
duke@1 | 58 | # Notes: |
duke@1 | 59 | # Keep all paths in the windows "mixed" style except CYGWIN UNXIXCOMMAND_PATH. |
duke@1 | 60 | # Use of PrefixPath is critical, some variables must end with / (see NOTE). |
duke@1 | 61 | # Use of quotes is critical due to possible spaces in paths coming from |
duke@1 | 62 | # the environment variables, be careful. |
duke@1 | 63 | # First convert \ to / with subst, keep it quoted due to blanks, then |
duke@1 | 64 | # use cygpath -s or dosname -s to get the short non-blank name. |
duke@1 | 65 | # If the MKS is old and doesn't have a dosname -s, you will be forced |
duke@1 | 66 | # to set ALT variables with the short non-space directory names. |
duke@1 | 67 | # If dosname doesn't appear to work, we won't use it. |
duke@1 | 68 | # The dosname utility also wants to accept stdin if it is not supplied |
duke@1 | 69 | # any path on the command line, this is really dangerous when using |
duke@1 | 70 | # make variables that can easily become empty, so I use: |
duke@1 | 71 | # echo $1 | dosname -s instead of dosname -s $1 |
duke@1 | 72 | # to prevent dosname from hanging up the make process when $1 is empty. |
duke@1 | 73 | # The cygpath utility does not have this problem. |
duke@1 | 74 | # The ALT values should never really have spaces or use \. |
duke@1 | 75 | # Suspect these environment variables to have spaces and/or \ characters: |
duke@1 | 76 | # SYSTEMROOT, SystemRoot, WINDIR, windir, PROGRAMFILES, ProgramFiles, |
duke@1 | 77 | # MSTOOLS, Mstools, MSSDK, MSSdk, VC71COMNTOOLS, |
duke@1 | 78 | # MSVCDIR, MSVCDir. |
duke@1 | 79 | # So use $(subst \,/,) on them first adding quotes and placing them in |
duke@1 | 80 | # their own variable assigned with :=, then use FullPath. |
duke@1 | 81 | # |
duke@1 | 82 | |
duke@1 | 83 | # Use FullPath to get C:/ style non-spaces path. Never ends with a /! |
duke@1 | 84 | ifdef USING_CYGWIN |
duke@1 | 85 | # We assume cygpath is available in the search path |
duke@1 | 86 | # NOTE: Use of 'pwd' with CYGWIN will not get you a mixed style path! |
duke@1 | 87 | CYGPATH_CMD=cygpath -a -s -m |
duke@1 | 88 | define FullPath |
duke@1 | 89 | $(shell $(CYGPATH_CMD) $1 2> $(DEV_NULL)) |
duke@1 | 90 | endef |
duke@1 | 91 | define OptFullPath |
duke@1 | 92 | $(shell if [ "$1" != "" -a -d "$1" ]; then $(CYGPATH_CMD) "$1"; else echo "$1"; fi) |
duke@1 | 93 | endef |
duke@1 | 94 | else |
duke@1 | 95 | # Temporary until we upgrade to MKS 8.7, MKS pwd returns mixed mode path |
duke@1 | 96 | define FullPath |
duke@1 | 97 | $(shell cd $1 2> $(DEV_NULL) && pwd) |
duke@1 | 98 | endef |
duke@1 | 99 | define OptFullPath |
duke@1 | 100 | $(shell if [ "$1" != "" -a -d "$1" ]; then (cd $1 && pwd); else echo "$1"; fi) |
duke@1 | 101 | endef |
duke@1 | 102 | endif |
duke@1 | 103 | |
duke@1 | 104 | # System drive |
duke@1 | 105 | ifdef SYSTEMDRIVE |
duke@1 | 106 | _system_drive =$(SYSTEMDRIVE) |
duke@1 | 107 | else |
duke@1 | 108 | ifdef SystemDrive |
duke@1 | 109 | _system_drive =$(SystemDrive) |
duke@1 | 110 | endif |
duke@1 | 111 | endif |
duke@1 | 112 | _system_drive:=$(call CheckValue,_system_drive,C:) |
duke@1 | 113 | |
duke@1 | 114 | # UNIXCOMMAND_PATH: path to where the most common Unix commands are. |
duke@1 | 115 | # NOTE: Must end with / so that it could be empty, allowing PATH usage. |
ohair@114 | 116 | ifndef UNIXCOMMAND_PATH |
ohair@114 | 117 | ifdef ALT_UNIXCOMMAND_PATH |
ohair@114 | 118 | xALT_UNIXCOMMAND_PATH :="$(subst \,/,$(ALT_UNIXCOMMAND_PATH))" |
ohair@114 | 119 | fxALT_UNIXCOMMAND_PATH :=$(call FullPath,$(xALT_UNIXCOMMAND_PATH)) |
ohair@114 | 120 | UNIXCOMMAND_PATH :=$(call PrefixPath,$(fxALT_UNIXCOMMAND_PATH)) |
duke@1 | 121 | else |
ohair@114 | 122 | ifdef USING_CYGWIN |
ohair@114 | 123 | UNIXCOMMAND_PATH :=$(call PrefixPath,/usr/bin) |
duke@1 | 124 | else |
ohair@114 | 125 | ifdef ROOTDIR |
ohair@114 | 126 | xROOTDIR :="$(subst \,/,$(ROOTDIR))" |
ohair@114 | 127 | _rootdir :=$(call FullPath,$(xROOTDIR)) |
ohair@114 | 128 | else |
ohair@114 | 129 | xROOTDIR :="$(_system_drive)/mksnt" |
ohair@114 | 130 | _rootdir :=$(call FullPath,$(xROOTDIR)) |
ohair@114 | 131 | endif |
ohair@114 | 132 | ifneq ($(_rootdir),) |
ohair@114 | 133 | UNIXCOMMAND_PATH :=$(call PrefixPath,$(_rootdir)/mksnt) |
ohair@114 | 134 | endif |
duke@1 | 135 | endif |
duke@1 | 136 | endif |
ohair@114 | 137 | UNIXCOMMAND_PATH:=$(call AltCheckSpaces,UNIXCOMMAND_PATH) |
ohair@114 | 138 | export UNIXCOMMAND_PATH |
duke@1 | 139 | endif |
duke@1 | 140 | |
duke@1 | 141 | # Get version of MKS or CYGWIN |
duke@1 | 142 | ifdef USING_CYGWIN |
ohair@114 | 143 | ifndef CYGWIN_VER |
ohair@114 | 144 | _CYGWIN_VER :=$(shell $(UNAME)) |
ohair@114 | 145 | CYGWIN_VER :=$(call GetVersion,$(_CYGWIN_VER)) |
ohair@114 | 146 | export CYGWIN_VER |
ohair@114 | 147 | endif |
duke@1 | 148 | else # MKS |
duke@1 | 149 | _MKS_VER :=$(shell $(MKSINFO) 2>&1 | $(GREP) Release | $(TAIL) -1 | $(SED) -e 's@.*\(Release.*\)@\1@') |
duke@1 | 150 | MKS_VER :=$(call GetVersion,$(_MKS_VER)) |
duke@1 | 151 | # At this point, we can re-define FullPath to use DOSNAME_CMD |
duke@1 | 152 | CHECK_MKS87:=$(call CheckVersions,$(MKS_VER),8.7) |
duke@1 | 153 | TRY_DOSNAME:=false |
duke@1 | 154 | ifeq ($(CHECK_MKS87),same) |
duke@1 | 155 | TRY_DOSNAME:=true |
duke@1 | 156 | endif |
duke@1 | 157 | # Newer should be ok |
duke@1 | 158 | ifeq ($(CHECK_MKS87),newer) |
duke@1 | 159 | TRY_DOSNAME:=true |
duke@1 | 160 | endif |
duke@1 | 161 | ifeq ($(TRY_DOSNAME),true) |
duke@1 | 162 | ifeq ($(shell $(UNIXCOMMAND_PATH)dosname -s $(_system_drive)/ 2> $(DEV_NULL)),$(_system_drive)/) |
duke@1 | 163 | _DOSNAME=$(UNIXCOMMAND_PATH)dosname |
duke@1 | 164 | DOSNAME_CMD:=$(_DOSNAME) -s |
duke@1 | 165 | define FullPath |
duke@1 | 166 | $(subst //,/,$(shell echo $1 | $(DOSNAME_CMD) 2> $(DEV_NULL))) |
duke@1 | 167 | endef |
duke@1 | 168 | endif # test dosname -s |
duke@1 | 169 | endif # TRY_DOSNAME |
duke@1 | 170 | endif # MKS |
duke@1 | 171 | |
duke@1 | 172 | # We try to get references to what we need via the default component |
duke@1 | 173 | # environment variables, or what was used historically. |
duke@1 | 174 | |
duke@1 | 175 | # Process Windows values into FullPath values, these paths may have \ chars |
duke@1 | 176 | |
ohair@114 | 177 | # Program Files directory |
ohair@114 | 178 | ifndef SHORTPROGRAMFILES |
ohair@114 | 179 | ifdef PROGRAMFILES |
ohair@114 | 180 | xPROGRAMFILES :="$(subst \,/,$(PROGRAMFILES))" |
duke@1 | 181 | else |
ohair@114 | 182 | ifeq ($(ARCH_DATA_MODEL), 32) |
ohair@114 | 183 | xPROGRAMFILES :="$(_system_drive)/Program Files" |
duke@1 | 184 | else |
ohair@114 | 185 | xPROGRAMFILES :="$(_system_drive)/Program Files (x86)" |
duke@1 | 186 | endif |
duke@1 | 187 | endif |
duke@1 | 188 | ifeq ($(ARCH_DATA_MODEL), 32) |
ohair@114 | 189 | SHORTPROGRAMFILES :=$(call FullPath,$(xPROGRAMFILES)) |
duke@1 | 190 | else |
ohair@114 | 191 | ifdef PROGRAMW6432 |
ohair@114 | 192 | xPROGRAMW6432 :="$(subst \,/,$(PROGRAMW6432))" |
ohair@114 | 193 | else |
ohair@114 | 194 | xPROGRAMW6432 :="$(_system_drive)/Program Files" |
ohair@114 | 195 | endif |
ohair@114 | 196 | SHORTPROGRAMFILES :=$(call FullPath,$(xPROGRAMW6432)) |
duke@1 | 197 | endif |
ohair@114 | 198 | ifneq ($(word 1,$(SHORTPROGRAMFILES)),$(SHORTPROGRAMFILES)) |
ohair@114 | 199 | SHORTPROGRAMFILES := |
duke@1 | 200 | endif |
ohair@114 | 201 | export SHORTPROGRAMFILES |
duke@1 | 202 | endif |
duke@1 | 203 | |
duke@1 | 204 | # Compilers, SDK, and Visual Studio (MSDEV) [32bit is different from 64bit] |
duke@1 | 205 | ifeq ($(ARCH_DATA_MODEL), 32) |
ohair@114 | 206 | ifndef SHORTMSVCDIR |
ohair@114 | 207 | # Try looking in MSVCDIR or MSVCDir area first (set by vcvars32.bat) |
ohair@114 | 208 | ifdef MSVCDIR |
ohair@114 | 209 | xMSVCDIR :="$(subst \,/,$(MSVCDIR))" |
ohair@114 | 210 | SHORTMSVCDIR :=$(call FullPath,$(xMSVCDIR)) |
duke@1 | 211 | else |
ohair@114 | 212 | ifdef MSVCDir |
ohair@114 | 213 | xMSVCDIR :="$(subst \,/,$(MSVCDir))" |
ohair@114 | 214 | SHORTMSVCDIR :=$(call FullPath,$(xMSVCDIR)) |
ohair@114 | 215 | else |
ohair@114 | 216 | ifneq ($(SHORTPROGRAMFILES),) |
ohair@114 | 217 | xMSVCDIR :="$(SHORTPROGRAMFILES)/Microsoft Visual Studio .NET 2003/Vc7" |
ohair@114 | 218 | SHORTMSVCDIR :=$(call FullPath,$(xMSVCDIR)) |
ohair@114 | 219 | endif |
duke@1 | 220 | endif |
duke@1 | 221 | endif |
ohair@114 | 222 | ifneq ($(subst MSDev98,OLDOLDOLD,$(SHORTMSVCDIR)),$(SHORTMSVCDIR)) |
ohair@114 | 223 | SHORTMSVCDIR := |
ohair@114 | 224 | endif |
prr@150 | 225 | # If we still don't have it, look for VS100COMNTOOLS, setup by installer? |
prr@150 | 226 | ifeq ($(SHORTMSVCDIR),) |
prr@150 | 227 | ifdef VS100COMNTOOLS # /Common/Tools directory, use ../../Vc |
prr@150 | 228 | xVS100COMNTOOLS :="$(subst \,/,$(VS100COMNTOOLS))" |
prr@150 | 229 | _vs100tools :=$(call FullPath,$(xVS100COMNTOOLS)) |
prr@150 | 230 | endif |
prr@150 | 231 | ifneq ($(_vs100tools),) |
prr@150 | 232 | SHORTMSVCDIR :=$(_vs100tools)/../../Vc |
prr@150 | 233 | endif |
prr@150 | 234 | endif |
prr@150 | 235 | export SHORTMSVCDIR |
ohair@114 | 236 | # If we still don't have it, look for VS71COMNTOOLS, setup by installer? |
ohair@114 | 237 | ifeq ($(SHORTMSVCDIR),) |
ohair@114 | 238 | ifdef VS71COMNTOOLS # /Common/Tools directory, use ../../Vc7 |
ohair@114 | 239 | xVS71COMNTOOLS :="$(subst \,/,$(VS71COMNTOOLS))" |
ohair@114 | 240 | _vs71tools :=$(call FullPath,$(xVS71COMNTOOLS)) |
ohair@114 | 241 | endif |
ohair@114 | 242 | ifneq ($(_vs71tools),) |
ohair@114 | 243 | SHORTMSVCDIR :=$(_vs71tools)/../../Vc7 |
ohair@114 | 244 | endif |
ohair@114 | 245 | endif |
ohair@114 | 246 | export SHORTMSVCDIR |
duke@1 | 247 | endif |
ohair@114 | 248 | ifneq ($(SHORTMSVCDIR),) |
ohair@114 | 249 | SHORTCOMPILERBIN :=$(SHORTMSVCDIR)/Bin |
ohair@114 | 250 | SHORTPSDK :=$(SHORTMSVCDIR)/PlatformSDK |
ohair@114 | 251 | export SHORTCOMPILERBIN |
ohair@114 | 252 | export SHORTPSDK |
duke@1 | 253 | endif |
duke@1 | 254 | endif |
duke@1 | 255 | |
duke@1 | 256 | # The Microsoft Platform SDK installed by itself |
ohair@114 | 257 | ifneq ($(SHORTPROGRAMFILES),) |
ohair@114 | 258 | ifndef SHORTPSDK |
ohair@114 | 259 | xPSDK :="$(SHORTPROGRAMFILES)/Microsoft Platform SDK" |
ohair@114 | 260 | SHORTPSDK :=$(call FullPath,$(xPSDK)) |
ohair@114 | 261 | ifeq ($(SHORTPSDK),) |
ohair@114 | 262 | xPSDK :="$(SHORTPROGRAMFILES)/Microsoft SDK" |
ohair@114 | 263 | SHORTPSDK :=$(call FullPath,$(xMSSDK)) |
ohair@114 | 264 | endif |
ohair@114 | 265 | export SHORTPSDK |
duke@1 | 266 | endif |
duke@1 | 267 | endif |
duke@1 | 268 | |
duke@1 | 269 | # If no SDK found yet, look in other places |
ohair@114 | 270 | ifndef SHORTPSDK |
duke@1 | 271 | ifdef MSSDK |
ohair@114 | 272 | xMSSDK :="$(subst \,/,$(MSSDK))" |
ohair@114 | 273 | SHORTPSDK :=$(call FullPath,$(xMSSDK)) |
duke@1 | 274 | else |
duke@1 | 275 | ifdef MSSdk |
ohair@114 | 276 | xMSSDK :="$(subst \,/,$(MSSdk))" |
ohair@114 | 277 | SHORTPSDK :=$(call FullPath,$(xMSSDK)) |
duke@1 | 278 | endif |
duke@1 | 279 | endif |
ohair@114 | 280 | export SHORTPSDK |
duke@1 | 281 | endif |
duke@1 | 282 | |
duke@1 | 283 | # Compilers for 64bit are from SDK |
duke@1 | 284 | ifeq ($(ARCH_DATA_MODEL), 64) |
ohair@114 | 285 | ifndef SHORTCOMPILERBIN |
prr@150 | 286 | ifdef VS100COMNTOOLS # /Common7/Tools directory, use ../../Vc |
prr@150 | 287 | xVS100COMNTOOLS :="$(subst \,/,$(VS100COMNTOOLS))" |
prr@150 | 288 | _vs100tools :=$(call FullPath,$(xVS100COMNTOOLS)) |
prr@150 | 289 | endif |
prr@150 | 290 | ifneq ($(_vs100tools),) |
prr@150 | 291 | SHORTCOMPILERBIN :=$(_vs100tools)/../../Vc/bin/amd64 |
prr@150 | 292 | xMSSDK70 :="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.0A/" |
prr@150 | 293 | MSSDK7 :=$(call FullPath,$(xMSSDK70)) |
prr@150 | 294 | export MSSDK7 |
ohair@114 | 295 | else |
prr@150 | 296 | xMSSDK61 :="C:/Program Files/Microsoft SDKs/Windows/v6.1/" |
prr@150 | 297 | MSSDK61 :=$(call FullPath,$(xMSSDK61)) |
prr@150 | 298 | xVS2008 :="C:/Program Files (x86)/Microsoft Visual Studio 9.0/" |
prr@150 | 299 | _vs2008 :=$(call FullPath,$(xVS2008)) |
prr@150 | 300 | ifneq ($(_vs2008),) |
ohair@114 | 301 | ifeq ($(ARCH), ia64) |
prr@150 | 302 | SHORTCOMPILERBIN :=$(_vs2008)/VC/Bin/x86_ia64 |
ohair@114 | 303 | endif |
ohair@114 | 304 | ifeq ($(ARCH), amd64) |
prr@150 | 305 | SHORTCOMPILERBIN :=$(_vs2008)/VC/Bin/$(ARCH) |
prr@150 | 306 | endif |
prr@150 | 307 | else |
prr@150 | 308 | ifneq ($(SHORTPSDK),) |
prr@150 | 309 | ifeq ($(ARCH), ia64) |
prr@150 | 310 | SHORTCOMPILERBIN :=$(SHORTPSDK)/Bin/Win64 |
prr@150 | 311 | endif |
prr@150 | 312 | ifeq ($(ARCH), amd64) |
prr@150 | 313 | SHORTCOMPILERBIN :=$(SHORTPSDK)/Bin/Win64/x86/$(ARCH) |
prr@150 | 314 | endif |
ohair@114 | 315 | endif |
ohair@57 | 316 | endif |
duke@1 | 317 | endif |
ohair@114 | 318 | export SHORTCOMPILERBIN |
duke@1 | 319 | endif |
duke@1 | 320 | endif |
duke@1 | 321 | |
duke@1 | 322 | # Location on system where jdk installs might be |
ohair@114 | 323 | ifneq ($(SHORTPROGRAMFILES),) |
ohair@114 | 324 | USRJDKINSTANCES_PATH =$(SHORTPROGRAMFILES)/Java |
duke@1 | 325 | else |
duke@1 | 326 | USRJDKINSTANCES_PATH =$(_system_drive)/ |
duke@1 | 327 | endif |
duke@1 | 328 | |
duke@1 | 329 | # SLASH_JAVA: location of all network accessable files |
ohair@114 | 330 | ifndef SLASH_JAVA |
ohair@114 | 331 | ifdef ALT_SLASH_JAVA |
ohair@114 | 332 | xALT_SLASH_JAVA :="$(subst \,/,$(ALT_SLASH_JAVA))" |
ohair@114 | 333 | SLASH_JAVA :=$(call FullPath,$(xALT_SLASH_JAVA)) |
duke@1 | 334 | else |
ohair@114 | 335 | ifdef ALT_JDK_JAVA_DRIVE |
ohair@114 | 336 | SLASH_JAVA =$(JDK_JAVA_DRIVE) |
ohair@114 | 337 | else |
ohair@114 | 338 | SLASH_JAVA =J: |
ohair@114 | 339 | endif |
duke@1 | 340 | endif |
ohair@114 | 341 | SLASH_JAVA:=$(call AltCheckSpaces,SLASH_JAVA) |
ohair@114 | 342 | SLASH_JAVA:=$(call AltCheckValue,SLASH_JAVA) |
ohair@114 | 343 | export SLASH_JAVA |
duke@1 | 344 | endif |
duke@1 | 345 | |
duke@1 | 346 | # JDK_DEVTOOLS_DIR: common path for all the java devtools |
ohair@114 | 347 | ifndef JDK_DEVTOOLS_DIR |
ohair@114 | 348 | ifdef ALT_JDK_DEVTOOLS_DIR |
ohair@114 | 349 | xALT_JDK_DEVTOOLS_DIR :="$(subst \,/,$(ALT_JDK_DEVTOOLS_DIR))" |
ohair@114 | 350 | JDK_DEVTOOLS_DIR :=$(call FullPath,$(xALT_JDK_DEVTOOLS_DIR)) |
ohair@114 | 351 | else |
ohair@114 | 352 | JDK_DEVTOOLS_DIR =$(SLASH_JAVA)/devtools |
ohair@114 | 353 | endif |
ohair@114 | 354 | JDK_DEVTOOLS_DIR:=$(call AltCheckSpaces,JDK_DEVTOOLS_DIR) |
ohair@114 | 355 | JDK_DEVTOOLS_DIR:=$(call AltCheckValue,JDK_DEVTOOLS_DIR) |
ohair@114 | 356 | export JDK_DEVTOOLS_DIR |
duke@1 | 357 | endif |
duke@1 | 358 | |
duke@1 | 359 | # COMPILER_PATH: path to where the compiler and tools are installed. |
duke@1 | 360 | # NOTE: Must end with / so that it could be empty, allowing PATH usage. |
ohair@114 | 361 | ifndef COMPILER_PATH |
ohair@114 | 362 | ifdef ALT_COMPILER_PATH |
ohair@114 | 363 | xALT_COMPILER_PATH :="$(subst \,/,$(ALT_COMPILER_PATH))" |
ohair@114 | 364 | fxALT_COMPILER_PATH :=$(call FullPath,$(xALT_COMPILER_PATH)) |
ohair@114 | 365 | COMPILER_PATH :=$(call PrefixPath,$(fxALT_COMPILER_PATH)) |
ohair@114 | 366 | else |
ohair@114 | 367 | COMPILER_PATH :=$(call PrefixPath,$(SHORTCOMPILERBIN)) |
ohair@114 | 368 | endif |
ohair@114 | 369 | COMPILER_PATH :=$(call AltCheckSpaces,COMPILER_PATH) |
ohair@114 | 370 | export COMPILER_PATH |
duke@1 | 371 | endif |
duke@1 | 372 | |
duke@1 | 373 | # MSDEVTOOLS_PATH: path to where the additional MS Compiler tools are. |
duke@1 | 374 | # NOTE: Must end with / so that it could be empty, allowing PATH usage. |
ohair@114 | 375 | ifndef MSDEVTOOLS_PATH |
ohair@114 | 376 | ifdef ALT_MSDEVTOOLS_PATH |
ohair@114 | 377 | xALT_MSDEVTOOLS_PATH :="$(subst \,/,$(ALT_MSDEVTOOLS_PATH))" |
ohair@114 | 378 | fxALT_MSDEVTOOLS_PATH :=$(call FullPath,$(xALT_MSDEVTOOLS_PATH)) |
ohair@114 | 379 | MSDEVTOOLS_PATH :=$(call PrefixPath,$(fxALT_MSDEVTOOLS_PATH)) |
ohair@114 | 380 | else |
ohair@114 | 381 | ifeq ($(ARCH_DATA_MODEL), 64) |
ohair@114 | 382 | ifdef MSTOOLS |
ohair@114 | 383 | xMSTOOLS :="$(subst \,/,$(MSTOOLS))" |
duke@1 | 384 | _ms_tools :=$(call FullPath,$(xMSTOOLS)) |
duke@1 | 385 | else |
ohair@114 | 386 | ifdef Mstools |
ohair@114 | 387 | xMSTOOLS :="$(subst \,/,$(Mstools))" |
ohair@114 | 388 | _ms_tools :=$(call FullPath,$(xMSTOOLS)) |
ohair@114 | 389 | else |
ohair@114 | 390 | _ms_tools := |
ohair@114 | 391 | endif |
duke@1 | 392 | endif |
ohair@114 | 393 | ifneq ($(_ms_tools),) |
ohair@114 | 394 | _ms_tools_bin :=$(_ms_tools)/Bin |
ohair@114 | 395 | else |
ohair@114 | 396 | # Assumes compiler bin is .../Bin/win64/x86/AMD64, rc.exe is 3 levels up |
ohair@114 | 397 | _ms_tools_bin :=$(SHORTCOMPILERBIN)/../../.. |
ohair@114 | 398 | endif |
ohair@114 | 399 | else |
ohair@114 | 400 | _ms_tools_bin :=$(SHORTCOMPILERBIN) |
duke@1 | 401 | endif |
ohair@114 | 402 | MSDEVTOOLS_PATH :=$(call PrefixPath,$(_ms_tools_bin)) |
duke@1 | 403 | endif |
ohair@114 | 404 | MSDEVTOOLS_PATH:=$(call AltCheckSpaces,MSDEVTOOLS_PATH) |
ohair@114 | 405 | export MSDEVTOOLS_PATH |
duke@1 | 406 | endif |
duke@1 | 407 | |
duke@1 | 408 | # DEVTOOLS_PATH: for other tools required for building (such as zip, etc.) |
duke@1 | 409 | # NOTE: Must end with / so that it could be empty, allowing PATH usage. |
ohair@114 | 410 | ifndef DEVTOOLS_PATH |
ohair@114 | 411 | ifdef ALT_DEVTOOLS_PATH |
ohair@114 | 412 | xALT_DEVTOOLS_PATH :="$(subst \,/,$(ALT_DEVTOOLS_PATH))" |
ohair@114 | 413 | fxALT_DEVTOOLS_PATH :=$(call FullPath,$(xALT_DEVTOOLS_PATH)) |
ohair@114 | 414 | DEVTOOLS_PATH :=$(call PrefixPath,$(fxALT_DEVTOOLS_PATH)) |
duke@1 | 415 | else |
ohair@114 | 416 | ifdef USING_CYGWIN |
ohair@114 | 417 | DEVTOOLS_PATH :=$(UNIXCOMMAND_PATH) |
ohair@114 | 418 | else |
ohair@114 | 419 | xDEVTOOLS_PATH :="$(_system_drive)/utils" |
ohair@114 | 420 | fxDEVTOOLS_PATH :=$(call FullPath,$(xDEVTOOLS_PATH)) |
ohair@114 | 421 | DEVTOOLS_PATH :=$(call PrefixPath,$(fxDEVTOOLS_PATH)) |
ohair@114 | 422 | endif |
duke@1 | 423 | endif |
ohair@114 | 424 | DEVTOOLS_PATH:=$(call AltCheckSpaces,DEVTOOLS_PATH) |
ohair@114 | 425 | export DEVTOOLS_PATH |
duke@1 | 426 | endif |
duke@1 | 427 | |
duke@1 | 428 | # _BOOTDIR1: First choice for a Bootstrap JDK, previous released JDK. |
duke@1 | 429 | # _BOOTDIR2: Second choice |
duke@1 | 430 | ifndef ALT_BOOTDIR |
duke@1 | 431 | _BOOTDIR1 =$(_system_drive)/jdk$(PREVIOUS_JDK_VERSION) |
duke@1 | 432 | _BOOTDIR2 =$(USRJDKINSTANCES_PATH)/jdk$(PREVIOUS_JDK_VERSION) |
duke@1 | 433 | endif |
duke@1 | 434 | |
duke@1 | 435 | # Import JDK images allow for partial builds, components not built are |
duke@1 | 436 | # imported (or copied from) these import areas when needed. |
duke@1 | 437 | |
duke@1 | 438 | # BUILD_JDK_IMPORT_PATH: location of JDK install trees to import for |
duke@1 | 439 | # multiple platforms, e.g. windows-i586, solaris-sparc, linux-586, etc. |
ohair@114 | 440 | ifndef BUILD_JDK_IMPORT_PATH |
ohair@114 | 441 | ifdef ALT_BUILD_JDK_IMPORT_PATH |
ohair@114 | 442 | BUILD_JDK_IMPORT_PATH :=$(call FullPath,$(ALT_BUILD_JDK_IMPORT_PATH)) |
ohair@114 | 443 | else |
ohair@114 | 444 | BUILD_JDK_IMPORT_PATH = $(PROMOTED_BUILD_BINARIES) |
ohair@114 | 445 | endif |
ohair@114 | 446 | BUILD_JDK_IMPORT_PATH:=$(call AltCheckSpaces,BUILD_JDK_IMPORT_PATH) |
ohair@114 | 447 | BUILD_JDK_IMPORT_PATH:=$(call AltCheckValue,BUILD_JDK_IMPORT_PATH) |
ohair@114 | 448 | export BUILD_JDK_IMPORT_PATH |
duke@1 | 449 | endif |
duke@1 | 450 | |
duke@1 | 451 | # JDK_IMPORT_PATH: location of previously built JDK (this version) to import |
ohair@114 | 452 | ifndef JDK_IMPORT_PATH |
ohair@114 | 453 | ifdef ALT_JDK_IMPORT_PATH |
ohair@114 | 454 | JDK_IMPORT_PATH :=$(call FullPath,$(ALT_JDK_IMPORT_PATH)) |
ohair@114 | 455 | else |
ohair@114 | 456 | JDK_IMPORT_PATH = $(BUILD_JDK_IMPORT_PATH)/$(PLATFORM)-$(ARCH)$(_JDK_IMPORT_VARIANT) |
ohair@114 | 457 | endif |
ohair@114 | 458 | JDK_IMPORT_PATH:=$(call AltCheckSpaces,JDK_IMPORT_PATH) |
ohair@114 | 459 | JDK_IMPORT_PATH:=$(call AltCheckValue,JDK_IMPORT_PATH) |
ohair@114 | 460 | export JDK_IMPORT_PATH |
duke@1 | 461 | endif |
duke@1 | 462 |