Get winemaker to drop the trailing CtrlZ that is still to be found on
[wine] / README
diff --git a/README b/README
index 6bc60db..f03b974 100644 (file)
--- a/README
+++ b/README
 1. INTRODUCTION
 
-Wine is a program that allows running MS-Windows programs under X11.
-It consists of a program loader, that loads and executes an
-MS-Windows binary, and of an emulation library that translates Windows
-API calls to their Unix/X11 equivalent.
+Wine is a program which allows running Microsoft Windows programs
+(including DOS, Windows 3.x and Win32 executables) on Unix.  It
+consists of a program loader which loads and executes a Microsoft
+Windows binary, and a library (called Winelib) that implements Windows
+API calls using their Unix or X11 equivalents.  The library may also
+be used for porting Win32 code into native Unix executables.
 
-Wine is free software. See the file LICENSE for the details.
-Basically, you can do anything with it, except claim that you wrote it.
+Wine is free software, and its license (contained in the file LICENSE)
+is BSD style.  Basically, you can do anything with it except claim
+that you wrote it.
 
+2. QUICK START
 
-2. COMPILATION
+Whenever you compile from source, it is recommended to use the Wine
+Installer to build and install wine.  From the top-level Wine
+directory (which contains this file), run:
 
-To compile the emulator, you must have one of:
+./tools/wineinstall
 
-       Linux version 0.99.13 or above
-       NetBSD-current
-       FreeBSD-current or FreeBSD 1.1 or later
-       OpenBSD/i386 2.1 or later
+Run programs as "wine [options] program".  For more information and
+problem resolution, read the rest of this file, the Wine man page,
+the files in the documentation directory in the Wine source, and
+especially the wealth of information found at http://www.winehq.com.
+
+3. REQUIREMENTS
+
+To compile and run Wine, you must have one of the following:
+
+       Linux version 2.0.36 or above
+       FreeBSD-current or FreeBSD 3.0 or later
        Solaris x86 2.5 or later
 
+Linux info:
+  Although Linux version 2.0.x will mostly work, certain features
+  (specifically LDT sharing) required for properly supporting Win32
+  threads were not implemented until kernel version 2.2.  If you get
+  consistent thread-related crashes, you may want to upgrade to 2.2.
+  Also, some bugs were fixed and additional features were added
+  late in the Linux 2.0.x series, so if you have a very old Linux kernel,
+  you may want to upgrade to at least the latest 2.0.x release.
+
+FreeBSD info:
+  On FreeBSD, you may want to apply an LDT sharing patch too
+  (unless you are tracking -current where it finally has
+  been committed just recently), and there also is a small sigtrap
+  fix that's needed for wine's debugger. (Actually now that it's using
+  ptrace() by default it may no longer make a difference but it still
+  doesn't hurt...) And if you're running a system from the -stable
+  branch older than Nov 15 1999, like a 3.3-RELEASE, then you also
+  need to apply a signal handling change that was MFC'd at that date.
+  Make sure you have the USER_LDT, SYSVSHM, SYSVSEM, and SYSVMSG options
+  turned on in your kernel.
+  More information including patches for the -stable branch is in
+  the ports tree:
+  ftp://ftp.freebsd.org/pub/FreeBSD/FreeBSD-current/ports/emulators/wine/files/
+
+Solaris info:
+  You will most likely need to build wine with the GNU toolchain
+  (gcc, gas, etc.)
+
+Wine requires kernel-level threads to run. Currently, only Linux
+version 2.0 or later, FreeBSD-current or FreeBSD 3.0 or later,
+and Solaris x86 version 2.5 or later are supported.
+Other operating systems which support kernel threads may be supported
+in the future.
+
+You need to have the X11 development include files installed
+(called xlib6g-dev in Debian and XFree86-devel in RedHat).
+To use wine's support for multi-threaded applications, your X libraries
+must be reentrant, which is probably the default by now.
+If you have libc6 (glibc2), or you compiled the X libraries yourself,
+they were probably compiled with the reentrant option enabled.
+
 You also need to have libXpm installed on your system. The sources for
-it are probably available on the ftp site where you got Wine. They can
-also be found on ftp.x.org and all its mirror sites.
+it are available at ftp.x.org and all its mirror sites in the directory
+/contrib/libraries. If you are using RedHat, libXpm is distributed as the
+xpm and xpm-devel packages. Debian distributes libXpm as xpm4.7, xpm4g,
+and xpm4g-dev. SuSE calls these packages xpm and xpm-devel.
+
+On x86 Systems gcc >= 2.7.2 is required.
+Versions earlier than 2.7.2.3 may have problems when certain files
+are compiled with optimization, often due to problems with header file
+management. pgcc currently doesn't work with wine. The cause of this problem
+is unknown.
+
+You also need flex version 2.5 or later and yacc.
+Bison will work as a replacement for yacc. If you are
+using RedHat or Debian, install the flex and bison packages.
+
+In case you want to build the documentation yourself, you'll also
+need the DocBook tools (db2html, db2ps, db2pdf).
+
+4. COMPILATION
 
-On x86 Systems gcc >= 2.7.0 is required. You will probably need flex too.
+In case you chose to not use wineinstall, run the following commands
+to build Wine:
 
-To build Wine, first do a "./configure" and then a "make depend; make".
-This will build the library "libwine.a" and the program "wine".
+./configure
+make depend
+make
 
+This will build the program "wine" and numerous support libraries/binaries.  
 The program "wine" will load and run Windows executables.
-The library "libwine.a" can be used to compile and link Windows source
-code under Unix.  If you have an ELF compiler, you can use
-"./configure --enable-dll" to build a shared library instead.
+The library "libwine" ("Winelib") can be used to compile and link
+Windows source code under Unix.
+
+To see compile configuration options, do ./configure --help.
 
 To upgrade to a new release by using a patch file, first cd to the
 top-level directory of the release (the one containing this README
@@ -41,70 +116,99 @@ file). Then do a "make clean", and patch the release with:
 
 where "patch-file" is the name of the patch file (something like
 Wine-yymmdd.diff.gz). You can then re-run "./configure", and then
-run "make depend; make".
+run "make depend && make".
 
 
-3. SETUP
+5. SETUP
 
 Once Wine has been built correctly, you can do "make install"; this
-will install the wine executable and the man page.
+will install the wine executable, the Wine man page, and a few other
+needed files.
+
+Don't forget to uninstall any conflicting previous Wine installation
+first.  Try either "dpkg -r wine" or "rpm -e wine" or "make uninstall"
+before installing.
 
-Wine requires you to have a file /usr/local/etc/wine.conf (you can
-supply a different name when configuring wine) or a file called .winerc
-in your home directory.
+If you want to build the documentation, you can run "make" in the
+documentation directory.
 
-The format of this file is explained in the man page. The file
-wine.ini contains a config file example.
+Wine requires a configuration file named named "config" in your
+~/.wine directory. The format of this file is explained in the man
+page. The file documentation/samples/config contains an example
+configuration file which has to be adapted and copied to the location
+mentioned above.
 
+See http://www.winehq.com/support.shtml for further configuration hints.
 
-4. RUNNING PROGRAMS
+In order to verify the correctness of the environment you need for
+Wine to run successfully, run "./tools/winecheck | less".  You'll get
+a percentage score indicating "Wine configuration correctness".
 
-When invoking Wine, you must specify the entire path to the executable,
+6. RUNNING PROGRAMS
+
+When invoking Wine, you may specify the entire path to the executable,
 or a filename only.
 
-For example: to run Windows' solitaire:
+For example: to run Solitaire:
 
        wine sol                   (using the searchpath to locate the file)
        wine sol.exe
 
-       wine c:\\windows\\sol.exe  (using a dosfilename)
+       wine c:\\windows\\sol.exe  (using a DOS filename)
 
-       wine /usr/windows/sol.exe  (using a unixfilename)
+       wine /usr/windows/sol.exe  (using a Unix filename)
 
 Note: the path of the file will also be added to the path when
       a full name is supplied on the commandline.
 
-Have a nice game of solitaire, but be careful.  Emulation isn't perfect.
-So, occasionally it may crash.
+Wine is not yet complete, so some programs may crash. Provided you set up
+winedbg correctly according to documentation/debugger.sgml, you will be dropped
+into a debugger so that you can investigate and fix the problem. For more
+information on how to do this, please read the file documentation/debugging.
+If you post a bug report, please read the file documentation/bugreports to
+see what information is required.
+
+You should backup all your important files that you give Wine access
+to, or use a special Wine copy of them, as there have been some cases
+of users reporting file corruption. Do NOT run Explorer, for instance,
+if you don't have a proper backup, as it renames/cripples several
+directories sometimes.
 
-UPDATE: Windows 95 components are known to cause more crashes compared
-        to the equivalent Windows 3.1 libraries.
 
+7. GETTING MORE INFORMATION
 
-5. GETTING MORE INFORMATION
+WWW:   A great deal of information about Wine is available from WineHQ at
+       http://www.winehq.com/ : various user guides, application database,
+       bug tracking. This is probably the best starting point.
+
+FAQ:   The Wine FAQ is located at http://www.winehq.com/FAQ
+
+HOWTO: The Wine HOWTO is available at
+       http://www.westfalen.de/witch/wine-HOWTO.txt .
 
 Usenet:        The best place to get help or to report bugs is the Usenet newsgroup
-       comp.emulators.ms-windows.wine. The Wine FAQ is posted there every
-       month. 
+       comp.emulators.ms-windows.wine. Please read the file 
+       documentation/bugreports to see what information should be included 
+       in a bug report.
 
-WWW:   Please browse old messages on http://www.dejanews.com to check whether 
-       your problem is already fixed before posting a bug report to the 
-       newsgroup. 
+       Please browse old messages on http://groups.google.com/ to check
+       whether your problem is already fixed before posting a bug report
+       to the newsgroup. 
 
-       A great deal of information about Wine is available from WineHQ at
-       http://www.winehq.com. Untested patches against the current
-       release are available at http://www.winehq.com/patches.  
+IRC:   Online help is available at channel #WineHQ on irc.openprojects.net.
 
 CVS:   The current Wine development tree is available through CVS.
-       Go to http://www.winehq.com/cvs.html for more information.
-
-FAQ:   The Wine FAQ is located at http://home.pacbell.net/dagar/wine.html.
+       Go to http://www.winehq.com/dev.shtml for more information.
 
+Mailing lists:
+       There are several mailing lists for Wine developers; see 
+       http://www.winehq.com/dev.shtml#ml for more information.
 
 If you add something, or fix a bug, please send a patch ('diff -u'
-format preferred) to julliard@lrc.epfl.ch for inclusion in the next
+format preferred) to julliard@winehq.com or to the
+wine-patches@winehq.com mailing list for inclusion in the next
 release.
 
 --
 Alexandre Julliard
-julliard@lrc.epfl.ch
+julliard@winehq.com