Re: Meson doesn't define HAVE_LOCALE_T for mscv

2022-11-15 Thread Juan José Santamaría Flecha
On Tue, Nov 15, 2022 at 9:02 PM Andres Freund  wrote:

>
> On 2022-11-15 15:35:31 +0100, Juan José Santamaría Flecha wrote:
> > On Tue, Nov 15, 2022 at 1:49 AM Andres Freund 
> wrote:
> > > Hm. Is it right that the changes are only done for msvc? win32_port.h
> > > defines the types for mingw as well afaict.
>
> > Yes, it does, but configure does nothing with them, so adding those
> > defines is a new feature for MinGW but a correction for MSVC.
>
> Any chance you checked if autoconf already detects locale_t with mingw?
> Possible that mingw supplies one of the relevant headers...
>
> Otherwise it looks like a sensible improvement to me.
>
> I've checked the autoconf version of pg_config.h and it's not detected.
Also, manually inspecting  I see no definition of locale_t in
MinGW.

Regards,

Juan José Santamaría Flecha


Re: Meson doesn't define HAVE_LOCALE_T for mscv

2022-11-15 Thread Juan José Santamaría Flecha
On Tue, Nov 15, 2022 at 8:53 PM Andres Freund  wrote:

>
> I don't think we should print mingw - that's really just redundant with
> gcc. But including host_system seems like a good idea. Not sure why I
> didn't
> do that.
>
> I'll open a new thread for this. Also, I think this is skipping
collate.linux.utf.sql and infinite_recurse.sql tests in their intended
platforms.

Regards,

Juan José Santamaría Flecha


Re: Meson doesn't define HAVE_LOCALE_T for mscv

2022-11-15 Thread Andres Freund
Hi,

Hm, the quoting was odd, making me think you had written a separate email
about the define issue. Hence the separate email...


On 2022-11-15 15:35:31 +0100, Juan José Santamaría Flecha wrote:
> On Tue, Nov 15, 2022 at 1:49 AM Andres Freund  wrote:
> > Hm. Is it right that the changes are only done for msvc? win32_port.h
> > defines the types for mingw as well afaict.

> Yes, it does, but configure does nothing with them, so adding those
> defines is a new feature for MinGW but a correction for MSVC.

Any chance you checked if autoconf already detects locale_t with mingw?
Possible that mingw supplies one of the relevant headers...

Otherwise it looks like a sensible improvement to me.

Greetings,

Andres Freund




Re: Meson doesn't define HAVE_LOCALE_T for mscv

2022-11-15 Thread Andres Freund
Hi,

On 2022-11-15 15:35:31 +0100, Juan José Santamaría Flecha wrote:
> I've seen that when building with meson on MinGW the output for version()
> is 'PostgreSQL 16devel on x86_64, compiled by gcc-12.2.0', which is not
> wrong but I cannot tell that it was done on MinGW. Should we include the
> 'host_system' in PG_VERSION_STR?

I don't think we should print mingw - that's really just redundant with
gcc. But including host_system seems like a good idea. Not sure why I didn't
do that.

Greetings,

Andres Freund




Re: Meson doesn't define HAVE_LOCALE_T for mscv

2022-11-15 Thread Juan José Santamaría Flecha
On Tue, Nov 15, 2022 at 1:49 AM Andres Freund  wrote:

>
> Hm. Is it right that the changes are only done for msvc? win32_port.h
> defines
> the types for mingw as well afaict.
>
> Yes, it does, but configure does nothing with them, so adding those
defines is a new feature for MinGW but a correction for MSVC.

PFA a patch for MinGW.

I've seen that when building with meson on MinGW the output for version()
is 'PostgreSQL 16devel on x86_64, compiled by gcc-12.2.0', which is not
wrong but I cannot tell that it was done on MinGW. Should we include the
'host_system' in PG_VERSION_STR?

Regards,

Juan José Santamaría Flecha


0001-meson-define-HAVE_LOCALE_T-for-MinGW.patch
Description: Binary data


Re: Meson doesn't define HAVE_LOCALE_T for mscv

2022-11-14 Thread Andres Freund
Hi,

On 2022-11-10 10:59:41 +0100, Juan José Santamaría Flecha wrote:
> Meson doesn't see the redefinition of locale_t done
> in src/include/port/win32_port.h, so is not defining
> HAVE_LOCALE_T, HAVE_WCSTOMBS_L nor HAVE_MBSTOWCS_L as the
> current src/tools/msvc/build.pl script does.
> 
> Please find attached a patch for so.

Hm. Is it right that the changes are only done for msvc? win32_port.h defines
the types for mingw as well afaict.

Greetings,

Andres Freund




Re: Meson doesn't define HAVE_LOCALE_T for mscv

2022-11-11 Thread Peter Eisentraut

On 10.11.22 10:59, Juan José Santamaría Flecha wrote:
Meson doesn't see the redefinition of locale_t done 
in src/include/port/win32_port.h, so is not defining 
HAVE_LOCALE_T, HAVE_WCSTOMBS_L nor HAVE_MBSTOWCS_L as the 
current src/tools/msvc/build.pl  script does.


Please find attached a patch for so.


committed