git.postgresql.org Git - postgresql.git/commitdiff

git projects / postgresql.git / commitdiff
? search:
summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: fae55f0)
Only define NO_THREAD_SAFE_LOCALE for MSVC plperl when required
2024年9月14日 12:37:08 +0000 (08:37 -0400)
2024年9月14日 12:47:06 +0000 (08:47 -0400)
Latest versions of Strawberry Perl define USE_THREAD_SAFE_LOCALE, and we
therefore get a handshake error when building against such instances.
The solution is to perform a test to see if USE_THREAD_SAFE_LOCALE is
defined and only define NO_THREAD_SAFE_LOCALE if it isn't.

Backpatch the meson.build fix back to release 16 and apply the same
logic to Mkvcbuild.pm in releases 12 through 16.

Original report of the issue from Muralikrishna Bandaru.


diff --git a/meson.build b/meson.build
index 4764b09266eb2b4e9cbc2a5e9bf26aa4edafe4ad..48620403514b8a1ca06cf57b50bf4bee83cb7ce1 100644 (file)
--- a/meson.build
+++ b/meson.build
@@ -1058,7 +1058,10 @@ if not perlopt.disabled()
if cc.get_id() == 'msvc'
# prevent binary mismatch between MSVC built plperl and Strawberry or
# msys ucrt perl libraries
- perl_ccflags += ['-DNO_THREAD_SAFE_LOCALE']
+ perl_v = run_command(perl, '-V').stdout()
+ if not perl_v.contains('USE_THREAD_SAFE_LOCALE')
+ perl_ccflags += ['-DNO_THREAD_SAFE_LOCALE']
+ endif
endif
endif
This is the main PostgreSQL git repository.
RSS Atom

AltStyle によって変換されたページ (->オリジナル) /