Create installations directories before installing into them, like GNU
[u/mdw/putty] / Recipe
diff --git a/Recipe b/Recipe
index 35e0c98..efdfaba 100644 (file)
--- a/Recipe
+++ b/Recipe
 #      build, since at the time of writing this <multimon.h> is
 #      known not to be available in Cygwin.
 #
+#  - COMPAT=/DNO_HTMLHELP (Windows only)
+#      Disables PuTTY's use of <htmlhelp.h>, which is not available
+#      with some development environments. The resulting binary
+#      will only look for an old-style WinHelp file (.HLP/.CNT), and
+#      will ignore any .CHM file.
+#
+#      Note that this definition is always enabled in the Cygwin
+#      build, since at the time of writing this <htmlhelp.h> is
+#      known not to be available in Cygwin (although you can use
+#      the htmlhelp.h 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;
@@ -158,7 +169,7 @@ version.o: FORCE
 RCFLAGS = $(RCFLAGS) $(VER)
 !end
 !begin cygwin vars
-# XXX GNU-ism, but it's probably all right for a Cygwin/MinGW Makfile.
+# XXX GNU-ism, but it's probably all right for a Cygwin/MinGW Makefile.
 RCFLAGS += $(patsubst -D%,--define %,$(VER))
 !end
 !begin borland vars
@@ -179,6 +190,7 @@ RCFLAGS += $(VER)
 # `make install' target for Unix.
 !begin gtk
 install:
+       mkdir -p $(DESTDIR)$(bindir) $(DESTDIR)$(man1dir)
        $(INSTALL_PROGRAM) -m 755 plink $(DESTDIR)$(bindir)/plink
        $(INSTALL_PROGRAM) -m 755 pscp $(DESTDIR)$(bindir)/pscp
        $(INSTALL_PROGRAM) -m 755 psftp $(DESTDIR)$(bindir)/psftp
@@ -208,6 +220,15 @@ install-strip:
 CFLAGS += -DMACOSX
 !end
 
+# Random symbols.
+!begin cygwin vars
+# _WIN32_IE is required to expose identifiers that only make sense on
+# systems with IE5+ installed, such as some arguments to SHGetFolderPath().
+# WINVER etc perform a similar function for FlashWindowEx().
+CFLAGS += -D_WIN32_IE=0x0500
+CFLAGS += -DWINVER=0x0500 -D_WIN32_WINDOWS=0x0410 -D_WIN32_WINNT=0x0500
+!end
+
 # ------------------------------------------------------------
 # Definitions of object groups. A group name, followed by an =,
 # followed by any number of objects or other already-defined group
@@ -224,7 +245,7 @@ GUITERM  = TERMINAL window windlg winctrls sizetip winucs winprint
 
 # Same thing on Unix.
 UXTERM   = TERMINAL uxcfg sercfg uxucs uxprint timing
-GTKTERM  = UXTERM gtkwin gtkcfg gtkdlg gtkcols gtkpanel xkeysym
+GTKTERM  = UXTERM gtkwin gtkcfg gtkdlg gtkcols xkeysym
 OSXTERM  = UXTERM osxwin osxdlg osxctrls
 
 # Non-SSH back ends (putty, puttytel, plink).
@@ -295,11 +316,12 @@ puttygen : [G] winpgen sshrsag sshdssg sshprime sshdes sshbn sshmd5 version
         + notiming winhelp LIBS wintime
 
 pterm    : [X] GTKTERM uxmisc misc ldisc settings uxpty uxsel BE_NONE uxstore
-         + uxsignal CHARSET cmdline uxpterm version time
+         + uxsignal CHARSET cmdline uxpterm version time xpmpterm xpmptcfg
 putty    : [X] GTKTERM uxmisc misc ldisc settings uxsel U_BE_ALL uxstore
-         + uxsignal CHARSET uxputty NONSSH UXSSH UXMISC ux_x11
+         + uxsignal CHARSET uxputty NONSSH UXSSH UXMISC ux_x11 xpmputty
+         + xpmpucfg
 puttytel : [X] GTKTERM uxmisc misc ldisc settings uxsel U_BE_NOSSH
-        + uxstore uxsignal CHARSET uxputty NONSSH UXMISC
+        + uxstore uxsignal CHARSET uxputty NONSSH UXMISC xpmputty xpmpucfg
 
 plink    : [U] uxplink uxcons NONSSH UXSSH U_BE_ALL logging UXMISC uxsignal
          + ux_x11