reorganises the GSSAPI support so that it handles alternative
implementations of the GSS-API. In particular, this means PuTTY can
now talk to MIT Kerberos for Windows instead of being limited to
SSPI. I don't know for sure whether further tweaking will be needed
(to the UI, most likely, or to automatic selection of credentials),
but testing reports suggest it's now at least worth committing to
trunk to get it more widely tested.
[originally from svn r8952]
PuTTY makes explicit use of libX11 without including -lX11 on the
link line. (GNU ld appears to pull in libX11 automatically because
it's needed for the dependencies of GTK, but gold expects that
dependency to be satisfied at run time via DT_NEEDED and hence
doesn't bother.) Hence, add explicit -lX11 to both Makefile.gtk and
the autoconf world.
[originally from svn r8876]
trouble on Ubuntu, where the Gtk test programs don't check the return value
from system() and thus fall foul of the combination of our -Werror and
<https://wiki.ubuntu.com/CompilerFlags#-D_FORTIFY_SOURCE=2>.
[originally from svn r8638]
makefile with make's own $(shell ...) function, which means that
gtk-config and krb5-config and so on only get run once per make
invocation instead of once per gcc invocation.
[originally from svn r8400]
incorporates the environment variable CFLAGS into its output. Avoid
exporting our version of it from the Makefile (which actually causes
build failures, since quoting phase issues mean that the backticks
in our version end up unexpanded).
[originally from svn r8399]
semicolon which crept in in r8138 was causing a lot of the "make
install" implementation to be missing from Makefile.gtk.
[originally from svn r8159]
[r8138 == de5dd9d65c]
file called Makefile.local. This means that if you're compiling on a
platform that needs COMPAT definitions, you can put them in a local
file and not have to type them on the command line every time.
[originally from svn r8045]
comes last on the compiler command line. This makes it easier to
override the normal compile options (since conflicting command-line
options usually follow a last-wins policy) in order to compile (for
example) the Unix version -g -O0.
[originally from svn r7170]
since even the latest version of w32api (3.6) shows no sign of HTMLHelp
support.
(This touches mkfiles.pl because that's where the details of what Cygwin
doesn't support are kept currently. This may be deliberate, so I haven't
changed it.)
[originally from svn r7032]
we set _FILE_OFFSET_BITS to 64 on the compiler command line (via mkfiles.pl),
and on Windows we use SetFilePointer and GetFileSize to cope with 64-bit sizes
where possible. Not tested on Win9x.
[originally from svn r6783]
Patch from Ben Hutchings to prevent an ugly special case in
&splitline in which a line is `split' into a line ending in a
backslash followed by a completely blank line.
[originally from svn r6714]
[r6710 == fd90d1a7c8224e673361d8b23aadfa01829de77c in puzzles repository]
a VERSIONINFO resource. The versioning scheme is described in
windows/version.rc2.
Some .rc files are now #included in others. In order to keep MSVC
project files working, these have been renamed to .rc2; there may exist
a better solution.
(This checkin also includes the documentation tweak missing from r6367.)
Testing performed:
- MinGW (cross-compiler): works
- VC nmake: works (tested with VC6)
- VC project files: builds with VERSIONINFO resource (no VER variable though)
- Borland: an old version of this patch was tested with it and more or
less worked, except that some of the VERSIONINFO strings were apparently
not terminated properly. Not attempted to work around this.
- LCC: not tested. Some fixes are in there from the last time we tried
this, but then the build ultimately failed and I haven't tried this
since that was fixed.
- Dev-C++: untested. (Haven't done anything special.)
- Unix Gtk/autoconf Makefiles work as before.
[originally from svn r6374]
[r6367 == f86ad059db]
[this svn revision also touched putty-wishlist]
rather than relying on the user to edit the Makefile. Makefile.gtk
still works as well as it ever did, but now we get a Makefile.in alongside
it. mkunxarc.sh now relies on autoconf and friends to build the configure
script for the Unix source distribution.
[originally from svn r5673]
was fixed in CVS in 2000 (I think); and we now depend on MinGW much more
recent than that for various other reasons. I've tested with my current
MinGW (around 2.0.0 vintage) and the original symptoms (dodgy characters in
edit boxes) don't appear to show up.
[originally from svn r5491]
with the Unix port and layering a Cocoa GUI on top. The basics all
work: there's a configuration panel and a terminal window, the
timing interface works and the select interface functions. The same
application can run both SSH (or other network) connections and
local pty sessions, and multiple sessions in the same process are
fully supported.
However, it's horribly unfinished in a wide variety of other ways;
anyone interested is invited to read README.OSX and wince at the
length and content of its `unfinished' list.
[originally from svn r5308]
long last to move all the Windows-specific source files down into a
`windows' subdirectory. Only platform-specific files remain at the
top level. With any luck this will act as a hint to anyone still
contemplating sending us a Windows-centric patch...
[originally from svn r4792]
directives that allow me to move some of the PuTTY-specific Makefile
fragments into Recipe. Not complete yet, but ought to be enough for
me to at least _try_ using mkfiles.pl in another project.
[originally from svn r4136]
will validate an md5sums manifest and if all md5sums match will use
a version number provided in a file. This should allow me to produce
a Unix release source archive with the property that when unpacked
and built it will produce binaries advertising themselves as
`Release X.YZ', but as soon as the user starts fiddling with the
sources it will revert to `Unidentified build' (though of course the
user can still _explicitly_ ask for a release tag, and in fact this
will override the default if any default is specified).
[originally from svn r3818]
caused a small amount of extra inconvenience at the tops of .rc
files, but it's been positive overall since lcc has managed to point
out some pedantic errors (typically static/extern mismatches between
function prototypes and definitions) which everything else missed.
[originally from svn r3744]
files as well as an nmake makefile. Needed line-end tweakery in
order to be able to generate usable project files when run on Unix,
but other than that appears fine. Ooh!
[originally from svn r3721]
&findfile() now caches its results. At least one full order of
magnitude speedup when running on an SMB-mounted volume. Phew.
[originally from svn r3720]
time. This gives rise to a whole bunch of spare warnings, one or two
of which might have been actual bugs; now all resolved.
[originally from svn r3134]
on Unix. So now mkfiles.pl will look in .. as well as . when
searching for Recipe, so I can run `perl ../mkfiles.pl' and it will
Just Work.
[originally from svn r3016]
functions turn out to be available only to PowerPC applications, through
WindowsLib and ControlsLib respectively, so we weak-link against those in
the obvious way.
[originally from svn r2441]
assuming that duplicate #includes of the same file are idempotent. I mean,
it's not even true for the standard headers (think <assert.h>), and
certainly isn't true here.
[originally from svn r2400]
does UTF-8 copy and paste (falling back to normal strings if
necessary), it understands X font encodings and translates things
accordingly so that if you have a Unicode font you can ask for
virtually any single-byte encoding and get it (Mac-Roman pterm,
anyone?), and so on. There's work left to be done (wide fonts for
CJK spring to mind), but I reckon this is a pretty good start.
[originally from svn r2395]
needlessly complex because Rez's preprocessor doesn't do either ANSI or K&R
stringification, and the MPW Shell isn't much good as shells go.
Also make _all_ the Mac executables depend on reources, not just the
Classic 68K one.
[originally from svn r2389]
of compiled resource file, .rsrc, which is built from .r, and adds mechanisms
to the MPW makefile generator to handle this.
[originally from svn r2385]
- Remove an unused library from the CFM-68K link line.
- Set the fragment name in CFM builds to "PuTTY".
- Set the hasBundle and isShared bits on freshly-created applications.
[originally from svn r2383]
than the Classic 68K version. This requires installing more bits of the
Text Encoding Converter SDK, since Apple seem to have forgotten to put _any_
68k bits for it, either CFM or Classic, in Universal Interfaces.
Also don't bother linking against libraries we don't seem to need.
[originally from svn r2379]
if it's available. Linking against the static Unicode Converter library
costs us about 30k on Classic 68K, which I can live with.
Because the default fallback converter can generate multiple output
characters for a single input character, we provide our own fallback that
doesn't. It converts everything to '?' instead.
[originally from svn r2315]
* splitline gets support for changing the continuation character.
* deps returns a data structure for the output routine to format as
appropriate.
* There's a new program type, [M], for Macintosh.
* There's a new backend to output mac/Makefile.mpw.
[originally from svn r2272]
needs to be able to handle separate Recipe entries for the same
program with different types (plink [C] and plink [X] for example,
with different object lists).
[originally from svn r2159]
The current pty.c backend is temporarily a loopback device for
terminal emulator testing, the display handling is only just enough
to show that terminal.c is functioning, the keyboard handling is
laughable, and most features are absent. Next step: bring output and
input up to a plausibly working state, and put a real pty on the
back to create a vaguely usable prototype. Oh, and a scrollbar would
be nice too.
In _theory_ the Windows builds should still work fine after this...
[originally from svn r2010]
beginning of a Unix port. It's nowhere near done, and currently it
won't even compile on Unix. But this represents the start of the
process of separating out platform-specific code, and also contains
the mkfiles.pl changes required to support a Unix makefile and a
non-flat source tree.
[originally from svn r1993]
analysis (for both .c and .rc files). Generates the VC++ makefile as
well as the other two; the authoritative source is now the new file
`Recipe' rather than any particular Makefile. Note that `Makefile'
is still here as a relic of the old way until we stop the nightly
builds using it, but it'll be gone soon.
[originally from svn r1592]
multi-monitor aware and make the scrollbar separately configurable
in and out of full-screen mode. Also (not Wez's patch, this bit) fix
the case where the user reconfigures _while_ the window is
full-screen, and disables full-screening. (In this case the window
should return gracefully to normal, rather than losing all its title
bars and getting confused.)
[originally from svn r1310]
the Cygwin CFLAGS, and declare `struct ssh_channel' in ssh.h to
prevent gcc warning about scope-confined-to-parameter-list.
[originally from svn r1268]