diff build/windows/README @ 0:a61af66fc99e jdk7-b24

Initial load
author duke
date Sat, 01 Dec 2007 00:00:00 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build/windows/README	Sat Dec 01 00:00:00 2007 +0000
@@ -0,0 +1,212 @@
+Copyright (c) 2007 Sun Microsystems, Inc.  All Rights Reserved.
+DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+  
+This code is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License version 2 only, as
+published by the Free Software Foundation.
+  
+This code is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+version 2 for more details (a copy is included in the LICENSE file that
+accompanied this code).
+ 
+You should have received a copy of the GNU General Public License version
+2 along with this work; if not, write to the Free Software Foundation,
+Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+  
+Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+CA 95054 USA or visit www.sun.com if you need additional information or
+have any questions.
+
+________________________________________________________________________________
+
+__Introduction__________________________________________________________________
+
+This readme file should provide all the information needed to build
+the HotSpot VM for Windows 95/Windows NT from its teamware workspace.
+It is intended as a starting point for people who want to learn how
+to work with the current HotSpot source workspace and who need to
+build the VM locally. It is not intended as a tutorial for licensees.
+
+Last update: 03/28/05
+
+
+__Platform______________________________________________________________________
+
+The VM builds under the following platforms:
+- Windows NT 4.0 on Intel x486 or greater
+- x486 PC (or greater), 32MByte or more
+
+
+__Tools_________________________________________________________________________
+
+For building/testing the following tools need to be available:
+- Microsoft Visual C++ 6.0 (with nmake version 1.62.7022 or greater)
+- MKS Toolkit 6.1 or greater
+  see: /net/reinstall/export/vol0/pc-archive/software/mks6.1 (NFS)
+   or: \\reinstall\pc-archive\software\mks6.1                (NT)
+
+
+__JDK___________________________________________________________________________
+
+The workspace works with the following version of the JDK:
+(NOTE: these are out of date)
+- JDK1.2FCS "V" build
+  see: /usr/local/java/jdk1.2/win32
+
+and the following version(s) of HotJava:
+- hjb1.1.4
+- hjb1.1.5
+  see /usr/local/java/hjb1.1.x/win32
+
+
+__Environment variables_________________________________________________________
+
+The following environment variables need to be set up for the IDE
+build process.  For batch builds these do not need to be set.
+
+HotSpotMksHome     points to the (NFS or PC-local) directory where the MKS
+                   executables (like sh.exe and grep.exe) are installed
+
+Optionally you may set the following variables in your environment and they
+will be picked up by the create.bat script used to generate the vm.vcproj files.
+See the section on building within MS Developer Studio for more details.
+
+HotSpotWorkSpace   points to the (NFS) directory where the workspace is located
+HotSpotBuildSpace  points to the (PC-local) directory where the vm is built
+HotSpotReleaseBinDest points to the (NFS or PC-local) directory where the product DLL is
+		      written
+HotSpotDebugBinDest   points to the (NFS or PC-local) directory where the debug DLL is
+		      written
+
+NOTE: For both batch and IDE builds, java and javac must be in your
+PATH, and the versions found by default must work. (If this turns out
+to be a problem, we can define HotSpotJava and HotSpotJavaC for
+bootstrapping...)
+
+__Building the JVM from the command line________________________________________
+
+1) choose a directory in which you want to build the vm
+   (the build process will create a subdirectory)
+
+2) To build the 'core' version (debug || optimized)
+   %HotSpotWorkSpace%\build\windows\build <flavor> core %HotSpotWorkSpace% <jdk_dir>
+   To build the 'compiler2' version (debug || optimized)
+   %HotSpotWorkSpace%\build\windows\build <flavor> compiler2 %HotSpotWorkSpace% <jdk_dir>
+
+   where <jdk_dir> is a full path to a JDK in which bin/java and
+   bin/javac are present and working.
+
+3) If you have problems with building, first try:
+   vcvars32 <CR> (sets path for VC++)
+
+4) In addition to jvm.dll, the Serviceability Agent (SA) based JDI connector 
+   and command line tools are built if dbgeng.h and dbgeng.lib
+   can be located, and BUILD_WIN_SA=1 is specified.   We look for dbgeng.h here:
+        $(MSVCDIR)\PlatformSDK\Include
+        $(SYSTEMROOT)\..\Program Files\Microsoft SDK\include
+
+  The first directory is part of  Visual Studio VC .NET 2003.
+  The second is used on Windows-amd64.
+
+
+__Building the JVM from within MS Developer Studio______________________________
+
+0) Set environment variables as described above
+
+1) Run the following script:
+   %HotSpotWorkSpace%\build\windows\create <type> { <workspace> <buildspace> <productbindest> <debugbindest> }
+   where type is one of core, compiler1, compiler2.  If you leave off the
+   "<workspace> <buildspace> <productbindest> <debugbindest>" part, the script expects to find their
+   values in the HotSpotWorkSpace, HotSpotBuildSpace, HotSpotReleaseBinDest, and HotSpotDebugBinDest environment
+   variables.  The resulting vm.vcproj does not depend on these values in the environment.
+
+   This will populate the build space with the appropriate makefiles
+   and run nmake in it. This builds and runs makedeps, which now
+   generates the appropriate vm.vcproj into the build space. It also
+   builds and runs adlc.
+
+   To regenerate the .incl and .dsp files after changing the include
+   databases, just run nmake in the build space.
+
+   The build process now relies on java and javac. For the IDE builds,
+   the full path to a JDK (in which bin/java and bin/javac are present
+   and working) can be specified either explicitly with the
+   ALT_BOOTDIR environment variable (like the JDK build process), via
+   the JDK build's default BOOTDIR environment variable, via JAVA_HOME,
+   or implicitly via the PATH.
+
+   (Note that there are now many more command line options to MakeDeps
+   on the Windows platform than before. These have been bundled into
+   makefiles/makedeps.make, but it is still necessary to keep this in
+   sync with the batch makefiles, in vm/generated.)
+
+   If you have problems with building (i.e,. finding nmake), first try:
+   vcvars32 <CR> (sets path for VC++)
+
+2) Double-click the vm.vcproj file in the %HotSpotBuildSpace% directory
+   to open MS Developer Studio.
+
+3) build desired or all versions:
+   menu Build -> Batch Build... -> Build (or Rebuild All)
+
+4) jvm.dll is in the %HotSpotReleaseBinDest% or %HotSpotDebugBinDest% directory
+   depending on which configuration you built (release or debug).
+
+Note: do not edit any of the files (especially the vm.vcproj file) in the
+build space, since they are all either autogenerated or copied from
+the work space. If necessary, modify the original Makefiles in
+%HotSpotWorkSpace%\build\windows\projectfiles, or the shared
+makedeps arguments in
+%HotSpotWorkSpace%\build\windows\makefiles\makedeps.make.
+
+Note that it appears that some options set in the IDE (for example,
+the default executable) show up not in the .dsp file, but in the .opt
+file, so the automatic regeneration of the .dsp file should not
+destroy the project settings. However, makedeps.make should be edited
+to supply per-file compiler options.
+
+To build adlc from within the IDE for debugging purposes:
+
+1) in MS Developer Studio, open ADLCompiler.dsw:
+   menu File -> Open Workspace...
+   select & double-click ADLCompiler.dsw
+
+2) rebuild all (debug mode is enough)
+   menu Build -> Rebuild All (make sure Win32 Debug version is selected)
+
+
+__Testing the VM________________________________________________________________
+
+To test the VM using the Tonga Testsuite, use testlook. testlook is a very
+simple testing framework on top of Tonga which allows us to use one (Tonga)
+test file, that can be extended with attributes.
+
+1) copy %HotSpotWorkSpace%\test\testlook.bat onto PC (preferably
+   %HotSpotBuildSpace%\bin, which should ideally be in the path)
+
+2) run testlook <cr> or testlook help <cr> for details
+
+3) to run testlook you need to have Tonga mounted:
+   net use T: \\tapas\export1\psqe
+
+
+__HotJava under HotSpot_________________________________________________________
+
+To run HotJava, use the .bat file %HotSpotWorkSpace%\test\h.bat. Copy
+it into %HotSpotBuildSpace%/<flavor> (which ideally is in the path) and run
+HotJava: h java <flags> (e.g., h java_g -Xint).
+
+
+__Preferred directory setup under Windows NT____________________________________
+
+Within the HotSpot group we are using the following directory setup:
+
+D:\jdk1.2          - where we install the JDK
+
+The following drives are mounted for testing/putbacks/etc.:
+
+net use T: \\tapas\export1\psqe
+net use Y: \\rschmidt\GammaBase
+net use Z: \\animorphic\animorphic