make/windows/build.bat

Fri, 11 Apr 2008 09:56:35 -0400

author
kamg
date
Fri, 11 Apr 2008 09:56:35 -0400
changeset 545
a49a647afe9a
parent 526
a294fd0c4b38
child 631
d1605aabd0a1
permissions
-rw-r--r--

Merge

duke@435 1 @echo off
duke@435 2 REM
duke@435 3 REM Copyright 1997-2006 Sun Microsystems, Inc. All Rights Reserved.
duke@435 4 REM DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
duke@435 5 REM
duke@435 6 REM This code is free software; you can redistribute it and/or modify it
duke@435 7 REM under the terms of the GNU General Public License version 2 only, as
duke@435 8 REM published by the Free Software Foundation.
duke@435 9 REM
duke@435 10 REM This code is distributed in the hope that it will be useful, but WITHOUT
duke@435 11 REM ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
duke@435 12 REM FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
duke@435 13 REM version 2 for more details (a copy is included in the LICENSE file that
duke@435 14 REM accompanied this code).
duke@435 15 REM
duke@435 16 REM You should have received a copy of the GNU General Public License version
duke@435 17 REM 2 along with this work; if not, write to the Free Software Foundation,
duke@435 18 REM Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
duke@435 19 REM
duke@435 20 REM Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
duke@435 21 REM CA 95054 USA or visit www.sun.com if you need additional information or
duke@435 22 REM have any questions.
duke@435 23 REM
duke@435 24 REM
duke@435 25
duke@435 26
duke@435 27 REM
duke@435 28 REM Since we don't have uname and we could be cross-compiling,
duke@435 29 REM Use the compiler to determine which ARCH we are building
duke@435 30 REM
duke@435 31 cl 2>&1 | grep "IA-64" >NUL
duke@435 32 if %errorlevel% == 0 goto isia64
duke@435 33 cl 2>&1 | grep "AMD64" >NUL
duke@435 34 if %errorlevel% == 0 goto amd64
duke@435 35 set ARCH=x86
duke@435 36 set BUILDARCH=i486
duke@435 37 set Platform_arch=x86
duke@435 38 set Platform_arch_model=x86_32
duke@435 39 goto end
duke@435 40 :amd64
duke@435 41 set LP64=1
duke@435 42 set ARCH=x86
duke@435 43 set BUILDARCH=amd64
duke@435 44 set Platform_arch=x86
duke@435 45 set Platform_arch_model=x86_64
duke@435 46 goto end
duke@435 47 :isia64
duke@435 48 set LP64=1
duke@435 49 set ARCH=ia64
duke@435 50 set Platform_arch=ia64
duke@435 51 set Platform_arch_model=ia64
duke@435 52 :end
duke@435 53
duke@435 54 if "%4" == "" goto usage
duke@435 55 if not "%7" == "" goto usage
duke@435 56
duke@435 57 if "%1" == "product" goto test1
duke@435 58 if "%1" == "debug" goto test1
duke@435 59 if "%1" == "fastdebug" goto test1
duke@435 60 goto usage
duke@435 61
duke@435 62 :test1
duke@435 63 if "%2" == "core" goto test2
duke@435 64 if "%2" == "kernel" goto test2
duke@435 65 if "%2" == "compiler1" goto test2
duke@435 66 if "%2" == "compiler2" goto test2
duke@435 67 if "%2" == "tiered" goto test2
duke@435 68 if "%2" == "adlc" goto build_adlc
duke@435 69
duke@435 70 goto usage
duke@435 71
duke@435 72 :test2
duke@435 73 REM check_j2se_version
duke@435 74 REM jvmti.make requires J2SE 1.4.x or newer.
duke@435 75 REM If not found then fail fast.
duke@435 76 %4\bin\javap javax.xml.transform.TransformerFactory >NUL
duke@435 77 if %errorlevel% == 0 goto build
duke@435 78 echo.
duke@435 79 echo J2SE version found at %4\bin\java:
duke@435 80 %4\bin\java -version
duke@435 81 echo.
duke@435 82 echo An XSLT processor (J2SE 1.4.x or newer) is required to
duke@435 83 echo bootstrap this build
duke@435 84 echo.
duke@435 85
duke@435 86 goto usage
duke@435 87
duke@435 88 :build
kamg@526 89 nmake -f %3/make/windows/build.make Variant=%2 WorkSpace=%3 BootStrapDir=%4 BuildUser="%USERNAME%" HOTSPOT_BUILD_VERSION="%5" %1
duke@435 90 goto end
duke@435 91
duke@435 92 :build_adlc
kamg@526 93 nmake -f %3/make/windows/build.make Variant=compiler2 WorkSpace=%3 BootStrapDir=%4 BuildUser="%USERNAME%" HOTSPOT_BUILD_VERSION=%5 ADLC_ONLY=1 %1
duke@435 94 goto end
duke@435 95
duke@435 96 :usage
duke@435 97 echo Usage: build flavor version workspace bootstrap_dir [build_id] [windbg_home]
duke@435 98 echo.
duke@435 99 echo where:
duke@435 100 echo flavor is "product", "debug" or "fastdebug",
duke@435 101 echo version is "core", "kernel", "compiler1", "compiler2", or "tiered",
duke@435 102 echo workspace is source directory without trailing slash,
duke@435 103 echo bootstrap_dir is a full path to echo a JDK in which bin/java
duke@435 104 echo and bin/javac are present and working, and echo build_id is an
duke@435 105 echo optional build identifier displayed by java -version
duke@435 106
duke@435 107 :end

mercurial