Hi,
On 2022-10-05 16:09:14 -0400, Tom Lane wrote:
> Andres Freund <andres@anarazel.de> writes:
> > When using precompiled headers we cannot override macros in system headers
> > from within .c files, as headers are already processed before the #define in
> > the C file is reached.
>
> > A few files #define FD_SETSIZE 1024 on windows, as the default is only 64. I
> > am hesitant to change FD_SETSIZE globally on windows, due to
> > src/backend/port/win32/socket.c using it to size on-stack arrays. Instead add
> > -DFD_SETSIZE=1024 when building the specific targets needing it.
>
> Color me confused, but how does it work to #define that from the command
> line if it can't be overridden from within the program?
If specified on the commandline it's also used when generating the precompiled
header - of course that's not possible when it's just #define'd in some .c
file.
Greetings,
Andres Freund