Re: Exporting float_to_shortest_decimal_buf(n) with Postgres 17 on Windows
Vladlen Popolitov <v.popolitov@postgrespro.ru>
From: Vladlen Popolitov <v.popolitov@postgrespro.ru>
To: Heikki Linnakangas <hlinnaka@iki.fi>
Cc: Michael Paquier <michael@paquier.xyz>, Andrew Kane <andrew@ankane.org>,
Nathan Bossart <nathandbossart@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>,
pgsql-hackers@postgresql.org
Date: 2024-12-23T12:14:05Z
Lists: pgsql-hackers
Attachments
- v2-0001-Fix-meson.build-to-prevent-missed-obj-files-in-li.patch (text/x-diff) patch v2-0001
Heikki Linnakangas писал(а) 2024-12-23 14:05:
> On 23/12/2024 12:32, Vladlen Popolitov wrote:
>> I found the reason of this bug and the fix for it.
>
> Cool!
>
>> Fortunatelly meson has option to force put all object files to
>> library - add dependency with the flag link_whole .
>>
>> I made the one-line patch and it fixes this issue.
>>
>> - 'dependencies': opts['dependencies'] + [ssl],
>> + 'dependencies': opts['dependencies'] + [ssl] +
>> [declare_dependency( link_whole : cflag_libs)],
>
> I'm no meson expert and don't have a Windows system to test on, but
> this seems like a weird place to add the option. Could you do this
> instead:
>
> diff --git a/src/common/meson.build b/src/common/meson.build
> index 538e0f43d55..76a7f68fe30 100644
> --- a/src/common/meson.build
> +++ b/src/common/meson.build
> @@ -184,6 +184,7 @@ foreach name, opts : pgcommon_variants
>
> lib = static_library('libpgcommon@0@'.format(name),
> link_with: cflag_libs,
> + link_whole: cflag_libs,
> c_pch: pch_c_h,
> kwargs: opts + {
> 'include_directories': [
Yes, it is also working option. I applied it and tested in the current
master under Windows,
it works.
Attached patch changes this line in meson.build
> link_with: cflag_libs,
> + link_whole: cflag_libs,
> c_pch: pch_c_h,
--
Best regards,
Vladlen Popolitov.
Commits
-
meson: Export all libcommon functions in Windows builds
- 643efb18bf80 16.7 landed
- d8b0c6411648 17.3 landed
- 07f902bd7607 18.0 landed
- 4e0d71ff2259 16.7 landed
- c80acbc6fae8 17.3 landed
- 2571c1d5cc5e 18.0 landed