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 |