Re: windows build slow due to windows.h includes
Juan José Santamaría Flecha <juanjo.santamaria@gmail.com>
From: Juan José Santamaría Flecha <juanjo.santamaria@gmail.com>
To: Andres Freund <andres@anarazel.de>
Cc: Ranier Vilela <ranier.vf@gmail.com>,
Pg Hackers <pgsql-hackers@postgresql.org>, Andrew Dunstan <andrew@dunslane.net>
Date: 2021-09-22T07:06:03Z
Lists: pgsql-hackers
On Wed, Sep 22, 2021 at 1:56 AM Andres Freund <andres@anarazel.de> wrote: > On 2021-09-21 20:26:36 -0300, Ranier Vilela wrote: > > Em ter., 21 de set. de 2021 às 16:30, Andres Freund <andres@anarazel.de> > > escreveu: > > > But that's too much work for my taste. As it turns out there's a > partial > > > solution to windows.h being just so damn big, the delightfully named > > > WIN32_LEAN_AND_MEAN. > > > > > +1 > > But I did a quick dirty test here, and removed windows.h in win32_port.h, > > and compiled normally with msvc 2019 (64 bit), would it work with mingw > > cross compile? > > That's likely only because winsock indirectly includes windows.h - because > of > that it won't actually reduce compile time. And you can't remove the other > headers that indirectly include windows.h without causing compilation > errors. > > You are right about winsock2.h including some parts of windows.h, please see note in [1]. You could move the windows.h inclusion for clarity: + #ifndef WIN32_LEAN_AND_MEAN + #define WIN32_LEAN_AND_MEAN + #endif + + #include <windows.h> #include <winsock2.h> #include <ws2tcpip.h> - #include <windows.h> [1] https://docs.microsoft.com/en-us/windows/win32/winsock/creating-a-basic-winsock-application Regards, Juan José Santamaría Flecha
Commits
-
windows: Define WIN32_LEAN_AND_MEAN to make compilation faster.
- 8162464a25e5 15.0 landed