Re: Building psqlODBC installers - Mailing list pgsql-odbc

From Craig Ringer
Subject Re: Building psqlODBC installers
Date
Msg-id 539E6EEA.4020207@2ndquadrant.com
Whole thread Raw
In response to Re: Building psqlODBC installers  ("Inoue, Hiroshi" <inoue@tpf.co.jp>)
Responses Re: Building psqlODBC installers  (Heikki Linnakangas <hlinnakangas@vmware.com>)
List pgsql-odbc
On 06/15/2014 06:06 AM, Inoue, Hiroshi wrote:
>>
>
> It doesn't work under Visual Studio 2013 Express for Windows Desktop
> because
>  1. TARGET_CPU variable isn't set.
>  2. setenv.cmd doesn't exist.
>
> IIRC the only environment win64.mak works is Windows SDK 7.1.
> One of the reason why I switched to MSBuild is to avoid such
> kind of troubles.

Yeah, SDK detection is a nightmare.

I didn't know about the great work you'd done with your Powershell
scripts when I wrote pg_build_win (or maybe it wasn't around then). It
has some mess in it for SDK detection, and that's just to determine the
version and check the SDK, it doesn't actually try to find it.

There aren't even standard registry keys for it, as different service
pack levels and different versions (Enterprise, normal, Express, etc)
have their own registry key locations.

It's like Microsoft, for every SDK release, said: "Take the old
packaging team out. Lock them outside the doors. Then find some random
people from another team and make them package this SDK, with absolutely
no knowledge of how the prior team did it."

Anything we can use to make that easier is a win, and MSBuild is one of
the few things that counts there.

IMO, support for SDKs older than v10 (VS 2010, WinSDK 7.1) is completely
uninteresting. If someone wants that, they can go get a matchingly
ancient version of psqlODBC.


--
 Craig Ringer                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


pgsql-odbc by date:

Previous
From: John Smith
Date:
Subject: Precision problems with storage of float/double
Next
From: Craig Ringer
Date:
Subject: Re: Build failure with VS 2012 due to uninitialized pointers