make/windows/create.bat

Print this page


   1 @echo off
   2 REM
   3 REM Copyright (c) 1999, 2009, Oracle and/or its affiliates. All rights reserved.
   4 REM DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   5 REM
   6 REM This code is free software; you can redistribute it and/or modify it
   7 REM under the terms of the GNU General Public License version 2 only, as
   8 REM published by the Free Software Foundation.
   9 REM
  10 REM This code is distributed in the hope that it will be useful, but WITHOUT
  11 REM ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  12 REM FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  13 REM version 2 for more details (a copy is included in the LICENSE file that
  14 REM accompanied this code).
  15 REM
  16 REM You should have received a copy of the GNU General Public License version
  17 REM 2 along with this work; if not, write to the Free Software Foundation,
  18 REM Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  19 REM
  20 REM Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  21 REM or visit www.oracle.com if you need additional information or have any
  22 REM questions.
  23 REM  
  24 REM
  25 
  26 REM This is the interactive build setup script (as opposed to the batch
  27 REM build execution script). It creates $HotSpotBuildSpace if necessary,
  28 REM copies the appropriate files out of $HotSpotWorkSpace into it, and
  29 REM builds and runs MakeDeps in it. This has the side-effect of creating
  30 REM the vm.vcproj file in the buildspace, which is then used in Visual C++.
  31 REM 
  32 REM The generated project file depends upon the include databases. If
  33 REM those are changed then MakeDeps is rerun.
  34 
  35 REM
  36 REM Since we don't have uname and we could be cross-compiling,
  37 REM Use the compiler to determine which ARCH we are building
  38 REM 
  39 REM Note: Running this batch file from the Windows command shell requires
  40 REM that "grep" be accessible on the PATH. An MKS install does this.
  41 REM 
  42 cl 2>&1 | grep "IA-64" >NUL
  43 if %errorlevel% == 0 goto isia64
  44 cl 2>&1 | grep "AMD64" >NUL
  45 if %errorlevel% == 0 goto amd64
  46 set ARCH=x86
  47 set BUILDARCH=i486
  48 set Platform_arch=x86
  49 set Platform_arch_model=x86_32
  50 goto end
  51 :amd64
  52 set ARCH=x86
  53 set BUILDARCH=amd64


 141 )
 142 
 143 REM force regneration of ProjectFile
 144 if exist %HotSpotBuildSpace%\%ProjectFile% del %HotSpotBuildSpace%\%ProjectFile%
 145 
 146 for /D %%i in (compiler1, compiler2, tiered, core, kernel) do (
 147 
 148 echo # Generated file!                                                 >    %HotSpotBuildSpace%\%%i\local.make
 149 echo # Changing a variable below and then deleting %ProjectFile% will cause  >>    %HotSpotBuildSpace%\%%i\local.make
 150 echo # %ProjectFile% to be regenerated with the new values.  Changing the    >>    %HotSpotBuildSpace%\%%i\local.make
 151 echo # version requires rerunning create.bat.                         >>    %HotSpotBuildSpace%\%%i\local.make
 152 echo.                                      >>    %HotSpotBuildSpace%\%%i\local.make
 153 echo HOTSPOTWORKSPACE=%HotSpotWorkSpace%   >>    %HotSpotBuildSpace%\%%i\local.make
 154 echo HOTSPOTBUILDSPACE=%HotSpotBuildSpace% >>    %HotSpotBuildSpace%\%%i\local.make
 155 echo HOTSPOTJDKDIST=%HotSpotJDKDist%       >>    %HotSpotBuildSpace%\%%i\local.make
 156 echo ARCH=%ARCH%                           >>    %HotSpotBuildSpace%\%%i\local.make
 157 echo BUILDARCH=%BUILDARCH%                 >>    %HotSpotBuildSpace%\%%i\local.make
 158 echo Platform_arch=%Platform_arch%         >>    %HotSpotBuildSpace%\%%i\local.make
 159 echo Platform_arch_model=%Platform_arch_model% >>    %HotSpotBuildSpace%\%%i\local.make
 160 
 161 REM build config specific stuff
 162 
 163 pushd %HotSpotBuildSpace%\%%i
 164 nmake /nologo
 165 popd

 166 )
 167 



















 168 goto end
 169 
 170 :usage
 171 echo Usage: create HotSpotWorkSpace HotSpotBuildSpace HotSpotJDKDist
 172 echo.
 173 echo This is the interactive build setup script (as opposed to the batch
 174 echo build execution script). It creates HotSpotBuildSpace if necessary,
 175 echo copies the appropriate files out of HotSpotWorkSpace into it, and
 176 echo builds and runs MakeDeps in it. This has the side-effect of creating
 177 echo the %ProjectFile% file in the build space, which is then used in Visual C++.
 178 echo The HotSpotJDKDist defines place where JVM binaries should be placed.
 179 echo Environment variable FORCE_MSC_VER allows to override MSVC version autodetection.
 180 echo.
 181 echo The generated project file depends upon the include databases. If
 182 echo those are changed then MakeDeps is rerun.
 183 echo.
 184 echo NOTE that it is now NOT safe to modify any of the files in the build
 185 echo space, since they may be overwritten whenever this script is run or
 186 echo nmake is run in that directory.
 187 
 188 :end
 189 
 190 endlocal
   1 @echo off
   2 REM
   3 REM Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
   4 REM DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   5 REM
   6 REM This code is free software; you can redistribute it and/or modify it
   7 REM under the terms of the GNU General Public License version 2 only, as
   8 REM published by the Free Software Foundation.
   9 REM
  10 REM This code is distributed in the hope that it will be useful, but WITHOUT
  11 REM ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  12 REM FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  13 REM version 2 for more details (a copy is included in the LICENSE file that
  14 REM accompanied this code).
  15 REM
  16 REM You should have received a copy of the GNU General Public License version
  17 REM 2 along with this work; if not, write to the Free Software Foundation,
  18 REM Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  19 REM
  20 REM Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  21 REM or visit www.oracle.com if you need additional information or have any
  22 REM questions.
  23 REM  
  24 REM
  25 
  26 REM This is the interactive build setup script (as opposed to the batch
  27 REM build execution script). It creates $HotSpotBuildSpace if necessary,
  28 REM copies the appropriate files out of $HotSpotWorkSpace into it, and
  29 REM builds and runs ProjectCreator in it. This has the side-effect of creating
  30 REM the vm.vcproj file in the buildspace, which is then used in Visual C++.



  31 
  32 REM
  33 REM Since we don't have uname and we could be cross-compiling,
  34 REM Use the compiler to determine which ARCH we are building
  35 REM 
  36 REM Note: Running this batch file from the Windows command shell requires
  37 REM that "grep" be accessible on the PATH. An MKS install does this.
  38 REM 
  39 cl 2>&1 | grep "IA-64" >NUL
  40 if %errorlevel% == 0 goto isia64
  41 cl 2>&1 | grep "AMD64" >NUL
  42 if %errorlevel% == 0 goto amd64
  43 set ARCH=x86
  44 set BUILDARCH=i486
  45 set Platform_arch=x86
  46 set Platform_arch_model=x86_32
  47 goto end
  48 :amd64
  49 set ARCH=x86
  50 set BUILDARCH=amd64


 138 )
 139 
 140 REM force regneration of ProjectFile
 141 if exist %HotSpotBuildSpace%\%ProjectFile% del %HotSpotBuildSpace%\%ProjectFile%
 142 
 143 for /D %%i in (compiler1, compiler2, tiered, core, kernel) do (
 144 
 145 echo # Generated file!                                                 >    %HotSpotBuildSpace%\%%i\local.make
 146 echo # Changing a variable below and then deleting %ProjectFile% will cause  >>    %HotSpotBuildSpace%\%%i\local.make
 147 echo # %ProjectFile% to be regenerated with the new values.  Changing the    >>    %HotSpotBuildSpace%\%%i\local.make
 148 echo # version requires rerunning create.bat.                         >>    %HotSpotBuildSpace%\%%i\local.make
 149 echo.                                      >>    %HotSpotBuildSpace%\%%i\local.make
 150 echo HOTSPOTWORKSPACE=%HotSpotWorkSpace%   >>    %HotSpotBuildSpace%\%%i\local.make
 151 echo HOTSPOTBUILDSPACE=%HotSpotBuildSpace% >>    %HotSpotBuildSpace%\%%i\local.make
 152 echo HOTSPOTJDKDIST=%HotSpotJDKDist%       >>    %HotSpotBuildSpace%\%%i\local.make
 153 echo ARCH=%ARCH%                           >>    %HotSpotBuildSpace%\%%i\local.make
 154 echo BUILDARCH=%BUILDARCH%                 >>    %HotSpotBuildSpace%\%%i\local.make
 155 echo Platform_arch=%Platform_arch%         >>    %HotSpotBuildSpace%\%%i\local.make
 156 echo Platform_arch_model=%Platform_arch_model% >>    %HotSpotBuildSpace%\%%i\local.make
 157 


 158 pushd %HotSpotBuildSpace%\%%i
 159 nmake /nologo
 160 popd
 161 
 162 )
 163 
 164 pushd %HotSpotBuildSpace%
 165 
 166 echo # Generated file!                                                 >    local.make
 167 echo # Changing a variable below and then deleting %ProjectFile% will cause  >>    local.make
 168 echo # %ProjectFile% to be regenerated with the new values.  Changing the    >>    local.make
 169 echo # version requires rerunning create.bat.                         >>    local.make
 170 echo.                                      >>    local.make
 171 echo HOTSPOTWORKSPACE=%HotSpotWorkSpace%   >>    local.make
 172 echo HOTSPOTBUILDSPACE=%HotSpotBuildSpace% >>    local.make
 173 echo HOTSPOTJDKDIST=%HotSpotJDKDist%       >>    local.make
 174 echo ARCH=%ARCH%                           >>    local.make
 175 echo BUILDARCH=%BUILDARCH%                 >>    local.make
 176 echo Platform_arch=%Platform_arch%         >>    local.make
 177 echo Platform_arch_model=%Platform_arch_model% >>    local.make
 178 
 179 nmake /nologo /F %HotSpotWorkSpace%/make/windows/projectfiles/common/Makefile %HotSpotBuildSpace%/%ProjectFile%
 180 
 181 popd
 182 
 183 goto end
 184 
 185 :usage
 186 echo Usage: create HotSpotWorkSpace HotSpotBuildSpace HotSpotJDKDist
 187 echo.
 188 echo This is the interactive build setup script (as opposed to the batch
 189 echo build execution script). It creates HotSpotBuildSpace if necessary,
 190 echo copies the appropriate files out of HotSpotWorkSpace into it, and
 191 echo builds and runs ProjectCreator in it. This has the side-effect of creating
 192 echo the %ProjectFile% file in the build space, which is then used in Visual C++.
 193 echo The HotSpotJDKDist defines place where JVM binaries should be placed.
 194 echo Environment variable FORCE_MSC_VER allows to override MSVC version autodetection.
 195 echo.



 196 echo NOTE that it is now NOT safe to modify any of the files in the build
 197 echo space, since they may be overwritten whenever this script is run or
 198 echo nmake is run in that directory.
 199 
 200 :end
 201 
 202 endlocal