X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/6da411554bfe4c2a8ddfbb0616b0030ea5e813f5..d47accad0f250d5d59079001443df42fb04d67f2:/README diff --git a/README b/README index e1787910..a797292e 100644 --- a/README +++ b/README @@ -6,16 +6,26 @@ Makefiles and equivalents. (If you have fetched the source from Subversion, you'll have to generate the Makefiles yourself -- see below.) +There are various compile-time directives that you can use to +disable or modify certain features; it may be necessary to do this +in some environments. They are documented in `Recipe', and in +comments in many of the generated Makefiles. + For building on Windows: - windows/Makefile.vc is for command-line builds on MS Visual C++ systems. Change into the `windows' subdirectory and type `nmake -f Makefile.vc' to build all the PuTTY binaries. - (We've also had one report of success building with the + Last time we checked, PuTTY built with vanilla VC7, or VC6 with + an up-to-date Platform SDK. (It is possible to build with + vanilla VC6, but you'll have to remove some functionality with + directives such as NO_IPV6.) + + (We've also had reports of success building with the OpenWatcom compiler -- www.openwatcom.org -- using Makefile.vc with `wmake -ms -f makefile.vc' and NO_MULTIMON, although we - haven't tried this ourselves.) + haven't tried this ourselves. Version 1.3 is reported to work.) - Inside the windows/MSVC subdirectory are MS Visual Studio project files for doing GUI-based builds of the various PuTTY utilities. @@ -32,40 +42,62 @@ For building on Windows: - windows/Makefile.cyg is for Cygwin / mingw32 installations. Type `make -f Makefile.cyg' while in the `windows' subdirectory to - build all the PuTTY binaries. Note that by default the multiple - monitor support is excluded from the Cygwin build, since at the - time of writing Cygwin doesn't include the necessary headers. + build all the PuTTY binaries. + + You'll probably need quite a recent version of the w32api package. + Note that by default the multiple monitor and HTML Help support are + excluded from the Cygwin build, since at the time of writing Cygwin + doesn't include the necessary headers. - windows/Makefile.lcc is for lcc-win32. Type `make -f Makefile.lcc' while in the `windows' subdirectory. (You will probably need to specify COMPAT=-DNO_MULTIMON.) + - Inside the windows/DEVCPP subdirectory are Dev-C++ project + files for doing GUI-based builds of the various PuTTY utilities. + +The PuTTY team actively use Makefile.vc and Makefile.cyg, so we'll +probably notice problems with those toolchains fairly quickly. Please +report any problems with the other toolchains mentioned above. + For building on Unix: - - unix/Makefile.gtk is for Unix and GTK. If you don't have GTK, you + - unix/configure is for Unix and GTK. If you don't have GTK, you should still be able to build the command-line utilities (PSCP, - PSFTP, Plink, PuTTYgen) using this makefile. The makefile expects - you to change into the `unix' subdirectory, then run `make -f - Makefile.gtk'. Note that Unix PuTTY has mostly only been tested - on Linux so far; portability problems such as BSD-style ptys or - different header file requirements are expected. + PSFTP, Plink, PuTTYgen) using this script. To use it, change + into the `unix' subdirectory, run `./configure' and then `make'. + + Note that Unix PuTTY has mostly only been tested on Linux so far; + portability problems such as BSD-style ptys or different header file + requirements are expected. - For the graphical utilities, Gtk+-1.2 is required. Gtk+-2.0 is not - yet supported. + - unix/Makefile.gtk is for non-autoconfigured builds. This makefile + expects you to change into the `unix' subdirectory, then run `make + -f Makefile.gtk'. - There is an `install' target; note that by default it tries to - install `man' pages, which need to be built using Halibut first -- - see below. + - For the graphical utilities, Gtk+-1.2 and Gtk+-2.0 should both be + supported. + + - Both Unix Makefiles have an `install' target. Note that by default + it tries to install `man' pages, which you may need to have built + using Halibut first -- see below. All of the Makefiles are generated automatically from the file `Recipe' by the Perl script `mkfiles.pl'. Additions and corrections to Recipe and the mkfiles.pl are much more useful than additions and corrections to the alternative Makefiles themselves. +The Unix `configure' script and its various requirements are generated +by the shell script `mkauto.sh', which requires GNU Autoconf, GNU +Automake, and Gtk; if you've got the source from Subversion rather +than using one of our source snapshots, you'll need to run this +yourself. + Documentation (in various formats including Windows Help and Unix -`man' pages) is to be built from the Halibut (`.but') files in the -`doc' subdirectory using `doc/Makefile'. Halibut can be found at -. +`man' pages) is built from the Halibut (`.but') files in the `doc' +subdirectory using `doc/Makefile'. If you aren't using one of our +source snapshots, you'll need to do this yourself. Halibut can be +found at . The PuTTY home web site is