From: | Noah Misch <noah(at)leadboat(dot)com> |
---|---|
To: | pgsql-committers(at)postgresql(dot)org |
Subject: | pgsql: MSVC 2012+: Permit linking to 32-bit, MinGW-built libraries. |
Date: | 2017-12-09 09:02:54 |
Message-ID: | E1eNb26-0001U8-2Z@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
MSVC 2012+: Permit linking to 32-bit, MinGW-built libraries.
Notably, this permits linking to the 32-bit Perl binaries advertised on
perl.org, namely Strawberry Perl and ActivePerl. This has a side effect
of permitting linking to binaries built with obsolete MSVC versions.
By default, MSVC 2012 and later require a "safe exception handler table"
in each binary. MinGW-built, 32-bit DLLs lack the relevant exception
handler metadata, so linking to them failed with error LNK2026. Restore
the semantics of MSVC 2010, which omits the table from a given binary if
some linker input lacks metadata. This has no effect on 64-bit builds
or on MSVC 2010 and earlier. Back-patch to 9.3 (all supported
versions).
Reported by Victor Wagner.
Discussion: https://postgr.es/m/20160326154321.7754ab8f@wagner.wagner.home
Branch
------
REL9_5_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/470de6a24d37d630515c5112e1bebe03a742b2c8
Modified Files
--------------
src/tools/msvc/MSBuildProject.pm | 2 ++
1 file changed, 2 insertions(+)
From | Date | Subject | |
---|---|---|---|
Next Message | Magnus Hagander | 2017-12-09 10:41:05 | pgsql: Fix typo |
Previous Message | Noah Misch | 2017-12-09 02:58:52 | pgsql: MSVC: Remove cosmetic, cross-branch differences pertaining to Pe |