Subject: bug#25633: porting gzip to Visual Studio 2015 failed due to redesign of CRT

From: Bruno Haible <[email-masked]>
Date: Tue, 07 Feb 2017 14:08:56 +0100

Hello Kees,

> If you like, I can share some additional changes I've made, e.g. Visual Studio
> does not like -g flag, a WIN32 define that should be _WIN32 (a CL.exe built-in
> macro), a workaround for missing #include_next directive (which is not
> supported by Visual Studio), a struct that is in sys/time.h instead of time.h
> (utimens.c). Please let me know the preferred format of changed. Is a UNIX
> style patch ok (using gzip-1.8.18-00e6 as reference)?

Most of these troubles should go away if you use the 'compile' and 'ar-lib'
auxiliary scripts, as described in section 2 of
http://git.savannah.gnu.org/gitweb/?p=gperf.git;a=blob_plain;f=README.windows

These instructions were tested with GNU gperf and a couple of other GNU
packages. They should be applicable to GNU gzip as well.

> Background: I tried to get the Visual Studio build working by performing the
> following steps:
> a. open a Visual Studio command prompt (that have set LIB, INCLUDE etc
> environment variables)
> b. from within this prompt, start Cygwin shell
> c. run CC=cl.exe ./configure

It is in this step 'c' that the 'compile' auxiliary script becomes useful.

Bruno