# Makefile for putty under Visual C. # # This file was created by `mkfiles.pl' from the `Recipe' file. # DO NOT EDIT THIS FILE DIRECTLY; edit Recipe or mkfiles.pl instead. # # Extra options you can set: # # - COMPAT=/DAUTO_WINSOCK (Windows only) # Causes PuTTY to assume that includes its own WinSock # header file, so that it won't try to include . # # - COMPAT=/DWINSOCK_TWO (Windows only) # Causes the PuTTY utilities to include instead of # , except Plink which _needs_ WinSock 2 so it already # does this. # # - COMPAT=/DNO_SECURITY (Windows only) # Disables use of , which is not available with some # development environments (such as very old versions of the # mingw/Cygwin GNU toolchain). This has the following effects: # - Pageant won't care about the local user ID of processes # accessing it; a version of Pageant built with this option # will therefore refuse to run under NT-series OSes on # security grounds (although it will run fine on Win95-series # OSes where there is no access control anyway). # - SSH connection sharing is disabled. # - There is no support for restriction of the process ACLs. # # - COMPAT=/DNO_MULTIMON (Windows only) # Disables PuTTY's use of , which is not available # with some development environments. This means that PuTTY's # full-screen mode (configurable to work on Alt-Enter) will # not behave usefully in a multi-monitor environment. # # - COMPAT=/DNO_HTMLHELP (Windows only) # Disables PuTTY's use of , which is not available # with some development environments. # # If you don't have this header, you may be able to use the copy # supplied with HTML Help Workshop. # # - RCFL=/DNO_MANIFESTS (Windows only) # Disables inclusion of XML application manifests in the PuTTY # binaries. This may be necessary to build for 64-bit Windows; # the manifests are only included to use the XP GUI style on # Windows XP, and the architecture tags are a lie on 64-bit. # # - COMPAT=/DNO_IPV6 # Disables PuTTY's ability to make IPv6 connections, enabling # it to compile under development environments which do not # support IPv6 in their header files. # # - COMPAT=/DNO_GSSAPI # Disables PuTTY's ability to use GSSAPI functions for # authentication and key exchange. # # - COMPAT=/DSTATIC_GSSAPI # Causes PuTTY to try to link statically against the GSSAPI # library instead of the default of doing it at run time. # # - COMPAT=/DMSVC4 (Windows only) # - RCFL=/DMSVC4 # Makes a couple of minor changes so that PuTTY compiles using # MSVC 4. You will also need /DNO_SECURITY and /DNO_MULTIMON. # # - COMPAT=/DNO_SECUREZEROMEMORY (Windows only) # Disables PuTTY's use of SecureZeroMemory(), which is missing # from some environments' header files. # # - XFLAGS=/DDEBUG # Causes PuTTY to enable internal debugging. # # - XFLAGS=/DMALLOC_LOG # Causes PuTTY to emit a file called putty_mem.log, logging every # memory allocation and free, so you can track memory leaks. # # - XFLAGS=/DMINEFIELD (Windows only) # Causes PuTTY to use a custom memory allocator, similar in # concept to Electric Fence, in place of regular malloc(). Wastes # huge amounts of RAM, but should cause heap-corruption bugs to # show up as GPFs at the point of failure rather than appearing # later on as second-level damage. # # - XFLAGS=/DFUZZING # Builds a version of PuTTY with some tweaks to make fuzz testing # easier: the SSH random number generator is replaced by one that # always returns the same thing. Note that this makes SSH # completely insecure -- a FUZZING build should never be used to # connect to a real server. # If you rename this file to `Makefile', you should change this line, # so that the .rsp files still depend on the correct makefile. MAKEFILE = Makefile.vc # C compilation flags CFLAGS = /nologo /W3 /O1 -I..\./ -I..\charset/ -I..\windows/ -I..\unix/ /D_WINDOWS /D_WIN32_WINDOWS=0x500 /DWINVER=0x500 /D_CRT_SECURE_NO_WARNINGS /D_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE LFLAGS = /incremental:no /dynamicbase /nxcompat RCFLAGS = -I..\./ -I..\charset/ -I..\windows/ -I..\unix/ -DWIN32 -D_WIN32 -DWINVER=0x0400 CFLAGS = $(CFLAGS) /DHAS_GSSAPI all: $(BUILDDIR)pageant.exe $(BUILDDIR)plink.exe $(BUILDDIR)pscp.exe \ $(BUILDDIR)psftp.exe $(BUILDDIR)psocks.exe \ $(BUILDDIR)putty.exe $(BUILDDIR)puttygen.exe \ $(BUILDDIR)puttytel.exe $(BUILDDIR)testcrypt.exe $(BUILDDIR)pageant.exe: $(BUILDDIR)aqsync.obj $(BUILDDIR)be_misc.obj \ $(BUILDDIR)callback.obj $(BUILDDIR)conf.obj \ $(BUILDDIR)ecc.obj $(BUILDDIR)errsock.obj \ $(BUILDDIR)marshal.obj $(BUILDDIR)memory.obj \ $(BUILDDIR)misc.obj $(BUILDDIR)mpint.obj \ $(BUILDDIR)pageant.obj $(BUILDDIR)pageant.res \ $(BUILDDIR)sshaes.obj $(BUILDDIR)sshargon2.obj \ $(BUILDDIR)sshauxcrypt.obj $(BUILDDIR)sshblake2.obj \ $(BUILDDIR)sshdes.obj $(BUILDDIR)sshdss.obj \ $(BUILDDIR)sshecc.obj $(BUILDDIR)sshhmac.obj \ $(BUILDDIR)sshmd5.obj $(BUILDDIR)sshpubk.obj \ $(BUILDDIR)sshrsa.obj $(BUILDDIR)sshsh256.obj \ $(BUILDDIR)sshsh512.obj $(BUILDDIR)sshsha.obj \ $(BUILDDIR)sshsha3.obj $(BUILDDIR)stripctrl.obj \ $(BUILDDIR)tree234.obj $(BUILDDIR)utils.obj \ $(BUILDDIR)version.obj $(BUILDDIR)wcwidth.obj \ $(BUILDDIR)wincapi.obj $(BUILDDIR)winhandl.obj \ $(BUILDDIR)winhelp.obj $(BUILDDIR)winhsock.obj \ $(BUILDDIR)winmisc.obj $(BUILDDIR)winmiscs.obj \ $(BUILDDIR)winnet.obj $(BUILDDIR)winnpc.obj \ $(BUILDDIR)winnps.obj $(BUILDDIR)winpgnt.obj \ $(BUILDDIR)winpgntc.obj $(BUILDDIR)winsecur.obj \ $(BUILDDIR)winselgui.obj $(BUILDDIR)winutils.obj type <