1 @echo off |
1 @echo off |
2 REM |
2 REM |
3 REM Copyright (c) 1999, 2009, Oracle and/or its affiliates. All rights reserved. |
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. |
4 REM DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
5 REM |
5 REM |
6 REM This code is free software; you can redistribute it and/or modify it |
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 |
7 REM under the terms of the GNU General Public License version 2 only, as |
8 REM published by the Free Software Foundation. |
8 REM published by the Free Software Foundation. |
24 REM |
24 REM |
25 |
25 |
26 REM This is the interactive build setup script (as opposed to the batch |
26 REM This is the interactive build setup script (as opposed to the batch |
27 REM build execution script). It creates $HotSpotBuildSpace if necessary, |
27 REM build execution script). It creates $HotSpotBuildSpace if necessary, |
28 REM copies the appropriate files out of $HotSpotWorkSpace into it, and |
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 |
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++. |
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 |
31 |
35 REM |
32 REM |
36 REM Since we don't have uname and we could be cross-compiling, |
33 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 |
34 REM Use the compiler to determine which ARCH we are building |
38 REM |
35 REM |
156 echo ARCH=%ARCH% >> %HotSpotBuildSpace%\%%i\local.make |
153 echo ARCH=%ARCH% >> %HotSpotBuildSpace%\%%i\local.make |
157 echo BUILDARCH=%BUILDARCH% >> %HotSpotBuildSpace%\%%i\local.make |
154 echo BUILDARCH=%BUILDARCH% >> %HotSpotBuildSpace%\%%i\local.make |
158 echo Platform_arch=%Platform_arch% >> %HotSpotBuildSpace%\%%i\local.make |
155 echo Platform_arch=%Platform_arch% >> %HotSpotBuildSpace%\%%i\local.make |
159 echo Platform_arch_model=%Platform_arch_model% >> %HotSpotBuildSpace%\%%i\local.make |
156 echo Platform_arch_model=%Platform_arch_model% >> %HotSpotBuildSpace%\%%i\local.make |
160 |
157 |
161 REM build config specific stuff |
|
162 |
|
163 pushd %HotSpotBuildSpace%\%%i |
158 pushd %HotSpotBuildSpace%\%%i |
164 nmake /nologo |
159 nmake /nologo |
165 popd |
160 popd |
166 ) |
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 |
167 |
182 |
168 goto end |
183 goto end |
169 |
184 |
170 :usage |
185 :usage |
171 echo Usage: create HotSpotWorkSpace HotSpotBuildSpace HotSpotJDKDist |
186 echo Usage: create HotSpotWorkSpace HotSpotBuildSpace HotSpotJDKDist |
172 echo. |
187 echo. |
173 echo This is the interactive build setup script (as opposed to the batch |
188 echo This is the interactive build setup script (as opposed to the batch |
174 echo build execution script). It creates HotSpotBuildSpace if necessary, |
189 echo build execution script). It creates HotSpotBuildSpace if necessary, |
175 echo copies the appropriate files out of HotSpotWorkSpace into it, and |
190 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 |
191 echo builds and runs ProjectCreator 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++. |
192 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. |
193 echo The HotSpotJDKDist defines place where JVM binaries should be placed. |
179 echo Environment variable FORCE_MSC_VER allows to override MSVC version autodetection. |
194 echo Environment variable FORCE_MSC_VER allows to override MSVC version autodetection. |
180 echo. |
195 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 |
196 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 |
197 echo space, since they may be overwritten whenever this script is run or |
186 echo nmake is run in that directory. |
198 echo nmake is run in that directory. |
187 |
199 |
188 :end |
200 :end |