XEmacs 21.2.30 "Hygeia".
[chise/xemacs-chise.git.1] / nt / README
index a6e5c95..67c6889 100644 (file)
--- a/nt/README
+++ b/nt/README
@@ -1,4 +1,4 @@
-            Building and Installing XEmacs on Windows NT
+Building and Installing XEmacs on Windows NT            -*- mode:outline -*-
 
                             David Hobley
                            Marc Paquette
@@ -8,28 +8,61 @@ The port was made much easier by the groundbreaking work of Geoff Voelker
 and others who worked on the GNU Emacs port to NT. Their version is available
 from http://www.cs.washington.edu/homes/voelker/ntemacs.html
 
-To get it working you will need:
 
-1.  You will need Visual C++ V4.0 or later to compile everything. Personally we
-    have tested V4.0, V4.2 and V5.0.
-    Note that Visual C++ assumes a couple of environment variables INCLUDE and
-    LIB to be set which specify the location of the includes and libraries.
-    Your PATH environment variable also needs to include the DevStudio vc\bin
-    and sharedide\bin directories.
+* Required tools and sources
+============================
+
+1.  You will need Visual C++ V4.0 or later to compile everything. Personally
+    we have tested V4.0, V4.2, V5.0 and v6.0.
+
+    Note that Visual C++ assumes that the environment variables INCLUDE and
+    LIB are set to specify the location of the includes and libraries.
+    Your PATH environment variable also needs to include the DevStudio
+    vc\bin and sharedide\bin directories.
+
     Visual C++ V5.0 installs a batch file called vcvars32.bat in
     c:\Program Files\DevStudio\VC\bin\ (or wherever you installed it) that you
     can run before building to set up all of these environment variables.
 
-2.  Grab the latest XEmacs source from ftp.xemacs.org if necessary. All Win32
-    support is in the nt\ subdirectory. You'll also need the xemacs-base
-    package from the binary-packages subdirectory and you'll probably also
-    want at least the edit-utils, text-modes, fsf-compat, cc-mode,
-    prog-modes and xemacs-devel packages.
+2.  Grab the latest XEmacs source from ftp.xemacs.org if necessary.
+
+    You'll also need the xemacs-base package from the binary-packages
+    subdirectory and you'll probably also want at least the edit-utils,
+    text-modes, fsf-compat, cc-mode, prog-modes and xemacs-devel
+    packages.
+
+    You'll also need the texinfo package unless you have a copy of
+    makeinfo.exe on your machine.
+
     Unpack the packages into, say, "c:\Program Files\XEmacs\xemacs-packages".
 
-3.  At this point you can select X or Win32 native GUI support.
+3.  At this point you can choose to build for X and/or for Win32 native GUI.
+    If you only want to build for the Win32 native GUI then skip the next
+    section.
+
+
+** Extra tools and sources required for X
+
+If you want support for X you will also need:
+
+1.  An X server. MI/X is available on the Internet for free; It is 
+    available from: http://www.microimages.com/www/html/freestuf/mixdlfrm.htm
+
+2.  Source for the MIT X11R6.3 libraries, available from: ftp.x.org
+
+3.  You'll need to compile the MIT libraries without multi-thread support.
+    To do this, there is an example Win32.cf and site.def provided which set
+    the relevant flags. You will also need to apply the patch in nt/X11.patch
+    in the xc/lib/X11 directory which will fix the DLL definition file.
+
+    Once compiled and installed, you will need to apply the patch in
+    nt/Xmd.patch. This is messy and better solutions would be appreciated.
+
+4.  Goto step 2 under 'Optional libraries' below.
+
 
-If you want to build for native GUI:
+* Optional libraries
+====================
 
 1.  If you want XPM image and toolbar support grab the latest version of the
     xpm sources (xpm-3.4k.tar.gz at time of writing) and unpack them somewhere.
@@ -63,10 +96,14 @@ If you want to build for native GUI:
     directory.  cd to that directory and build libcompface with 
     'nmake -f compface.mak'.
 
-6.  cd to the nt subdirectory of the xemacs distribution and build xemacs:
+
+* Building
+==========
+
+1.  cd to the nt subdirectory of the xemacs distribution and build xemacs:
     `nmake install -f xemacs.mak`, but read on before hitting Enter.
 
-7.  If you're building with XPM support, add this to the nmake command line:
+2.  If you're building with XPM support, add this to the nmake command line:
        HAVE_XPM=1 XPM_DIR="x:\location\of\your\xpm\sources"
     and similarly for JPEG and TIFF support.
 
@@ -78,77 +115,79 @@ If you want to build for native GUI:
        HAVE_GIF=1
 
     If you're building with X-Face support, add this to the nmake command line:
-    HAVE_XFACE=1 COMPFACE_DIR="x:\location\of\your\compface\sources"
+        HAVE_XFACE=1 COMPFACE_DIR="x:\location\of\your\compface\sources"
+
+    If you're building for X, add this to the nmake command line:
+       HAVE_X=1 X11_DIR=x:\root\directory\of\your\X11\installation
 
-8.  By default, XEmacs will expect to find its packages in the subdirectories
+3.  By default, XEmacs will expect to find its packages in the subdirectories
     "site-packages", "mule-packages" and "xemacs-packages" under the package
     prefix directory "c:\Program Files\XEmacs". If you want it to look for
     these subdirectories elsewhere, add this to the nmake command line:
        PACKAGE_PREFIX="x:\your\package\directory"
     If you change your mind and want to alter the package prefix directory
-    after you've built XEmacs, delete the file .\obj\emacs.obj and rebuild with
-    the new PACKAGE_PREFIX.
+    after you've built XEmacs, delete the file nt\obj\emacs.obj and rebuild
+    with the new PACKAGE_PREFIX setting.
 
-9.  By default, XEmacs will be installed in directories under the directory
-    "c:\Program Files\XEmacs\XEmacs-21.0". If you want to install it elsewhere,
-    add this to the nmake command line:
+4.  By default, XEmacs will be installed in directories under the directory
+    "c:\Program Files\XEmacs\XEmacs-21.2". If you want to install it
+    elsewhere, add this to the nmake command line:
        INSTALL_DIR="x:\your\installation\directory"
 
-10. Now you can press Enter. nmake will build temacs, the DOC file, update the
-    elc's, dump xemacs and install the relevant files in the directories under
-    the installation directory. Unless you set INSTALL_DIR above, the file that
-    you should run to start XEmacs will be installed as 
-    "c:\Program Files\XEmacs\XEmacs-21.0\i386-pc-win32\runemacs.exe". You may
-    want to create a shortcut to that file from your Desktop or Start Menu.
-
-11. The build process always creates debugging and "Source Browser" information
-    in the source tree for use with MS DevStudio. If you actually want to debug
-    XEmacs you should run XEmacs from the source directory instead of from the
-    installation directory. You should probably also build a debug version of
-    XEmacs; to do this start with a clean source tree and add DEBUG_XEMACS=1 to
-    the nmake command line. You probably don't want to install your debug build
-    so you should tell nmake to build the 'all' target instead of the 'install'
-    target.
-
-    To make use of the debugging and "Source Browser" information, create a new
-    "console" project in MS DevStudio and, under Project/Settings, set:
+5.  XEmacs can build its info files more quickly if you have a copy of the
+    makeinfo program. If you have a copy, add this to the nmake command line:
+       MAKEINFO="x:\location\of\makeinfo.exe"
+    If you don't have a copy of makeinfo then you'll need to have installed
+    the XEmacs texinfo package.
+
+6.  Now you can press Enter. nmake will build temacs, the DOC file, update
+    the elc's, dump xemacs and install the relevant files in the directories
+    under the installation directory.
+
+    Unless you set INSTALL_DIR above, the file that you should run to start
+    XEmacs will be installed as
+        "c:\Program Files\XEmacs\XEmacs-21.2\i586-pc-win32\runxemacs.exe".
+    You may want to create a shortcut to that file from your Desktop or
+    Start Menu.
+
+
+* Debugging under MS Developer Studio
+=====================================
+
+The build process always creates debugging and "Source Browser" information
+in the source tree for use with DevStudio. If you actually want to debug
+XEmacs you should probably build a debug version of XEmacs:
+
+1.  Delete the directory nt\obj and it's contents.
+
+2.  Add DEBUG_XEMACS=1 to the nmake command line and rebuild. You probably
+    don't want to install your debug build so you should tell nmake to build
+    the 'all' target instead of the 'install' target.
+
+3.  To make use of the debugging and "Source Browser" information, create a
+    new "console" project in DevStudio and, under Project/Settings, set:
        Debug: executable name = full path of src\xemacs.exe
        Link: output file name = full path of src\temacs.exe
        Browse Info: browse info file name = full path of src\temacs.bsc
     Remember to close the Source Browser file in DevStudio before rebuilding.
 
+4.  Start XEmacs from within DevStudio or by running src\xemacs.exe so that
+    you get a console window which may contain helpful debugging info.
 
-If you want support for X you will need:
+5.  To display the contents of a lisp variable click Debug/QuickWatch, type
+    debug_print(variable) and click Recalculate. The output will appear in
+    the console window.
 
-1.  An X server. MI/X is available on the Internet for free; It is 
-    available from:  http://www.microimages.com/www/html/freestuf/mixdlfrm.htm
-
-2.  The MIT X11R6.3 libraries available from: ftp.x.org
+6.  To view lisp variables in the "Watch" window wrap the variable in one of
+    the helper functions from the file src\console-msw.c. eg type
+    DSTRING(variable) in the "Watch" window to inspect a lisp string.
 
-3.  You'll need to compile the MIT libraries without multi-thread support.
-    To do this, there is an example Win32.cf and site.def provided which
-    set the relevant flags. You will also need to apply the patch in 
-    nt/X11.patch in the xc/lib/X11 directory which will fix the DLL definition
-    file. Once compiled and installed, you will need to apply the following
-    patch to Xmd.h. This is messy and better solutions would be appreciated. 
 
-4.  Goto 2 under 'native GUI' above and add this to the nmake command line:
-       HAVE_X=1 X11_DIR=x:\root\directory\of\your\X11\installation
+* Known Problems
+================
 
---- Xmd.h~     Thu Jun 08 23:20:40 1995
-+++ Xmd.h      Sun Mar 16 13:09:10 1997
-@@ -150,8 +150,9 @@
- typedef CARD16                BITS16;
- typedef CARD8         BYTE;
-+#ifndef WIN32
- typedef CARD8           BOOL;
--
-+#endif
-Known Problems:
-Please look at the TODO list for the current list of problems and people 
-working on them.
+Please look at the PROBLEMS file for known problems and at the TODO list for
+the current list of problems and people working on them.
 
 Any other problems you need clarified, please email us and we will endeavour
 to provide any assistance we can: