simon-git: putty (main): Simon Tatham

Commits to Tartarus hosted VCS tartarus-commits at lists.tartarus.org
Sun Aug 27 11:24:22 BST 2023


TL;DR:
  3d340078 Remove a couple of double-typedefs.
  bd27962c CMakeLists.txt: explicitly ask for C99.

Repository:     https://git.tartarus.org/simon/putty.git
On the web:     https://git.tartarus.org/?p=simon/putty.git
Branch updated: main
Committer:      Simon Tatham <anakin at pobox.com>
Date:           2023-08-27 11:24:22

commit 3d3400788972183b58915e6d62ff37fe9d469083
web diff https://git.tartarus.org/?p=simon/putty.git;a=commitdiff;h=3d3400788972183b58915e6d62ff37fe9d469083;hp=da550c3158a3d590ba19b2bd952e9e0111051571
Author: Simon Tatham <anakin at pobox.com>
Date:   Sun Aug 27 09:36:37 2023 +0100

    Remove a couple of double-typedefs.
    
    Experimenting with different compile flags pointed out two instances
    of typedefing the same name twice (though benignly, with the same
    definition as well). PsocksDataSink was typedefed a couple of lines
    above its struct definition and then again _with_ its struct
    definition; cliloop_continue_t was typedefed in unix/platform.h and
    didn't need defining again in unix/psocks.c.

 psocks.h      | 4 ++--
 unix/psocks.c | 3 ---
 2 files changed, 2 insertions(+), 5 deletions(-)

commit bd27962cd93a7ebb0098c0d6577b5d7340c7424a
web diff https://git.tartarus.org/?p=simon/putty.git;a=commitdiff;h=bd27962cd93a7ebb0098c0d6577b5d7340c7424a;hp=3d3400788972183b58915e6d62ff37fe9d469083
Author: Simon Tatham <anakin at pobox.com>
Date:   Sun Aug 27 09:36:42 2023 +0100

    CMakeLists.txt: explicitly ask for C99.
    
    A user just reported that 0.79 doesn't build out of the box on Ubuntu
    14.04 (trusty), because although its gcc (4.8.4) does _support_ C99,
    it doesn't enable it without a non-default -std option. The user was
    able to work around the problem by defining CMAKE_C_FLAGS=-std=gnu99,
    but it would have been nicer if we'd done that automatically. Setting
    CMAKE_C_STANDARD causes cmake to do so.
    
    (This isn't a regression of 0.79 over 0.78 as far as I know; the user
    in question said they had last built 0.76.)
    
    I was surprised to find Ubuntu 14.04 still in use at all, but a quick
    web search revealed that its support has been extended until next
    year, so fair enough, I suppose. It's also running a cmake way older
    than we support, but apparently that can be worked around via
    Kitware's binary tarball downloads (which do still run on 14.04).
    
    This is a bit unsatisfactory: I'd prefer to ask for C standards
    support of _at least_ C99 level, and C11 if possible. Then I could
    test for the presence of C11 features via check_c_source_compiles, and
    use them opportunistically (e.g. in macro definitions). But as far as
    I can see, cmake has no built-in support for asking for a standards
    level of 'as new as you can get, but no older than 99'. Oh well.
    
    (In any case, the thing I'd find most useful from C11 is _Generic, and
    since that's in implementation namespace, compilers can - and do -
    support it in C99 mode anyway. So it's probably fine, at least for now.)

 CMakeLists.txt | 2 ++
 1 file changed, 2 insertions(+)



More information about the tartarus-commits mailing list