Re: Building psqlODBC installers

From: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>
To: Hiroshi Inoue <inoue(at)tpf(dot)co(dot)jp>
Cc: Craig Ringer <craig(at)2ndquadrant(dot)com>, "pgsql-odbc(at)postgresql(dot)org" <pgsql-odbc(at)postgresql(dot)org>, Hiroshi Saito <hiroshi(at)winpg(dot)jp>, Dave Page <dpage(at)pgadmin(dot)org>
Subject: Re: Building psqlODBC installers
Date: 2014-06-18 12:20:55
Message-ID: 53A18427.9050508@vmware.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

On 06/18/2014 03:10 PM, Hiroshi Inoue wrote:
> (2014/06/17 22:14), Heikki Linnakangas wrote:
>> On 06/16/2014 07:00 PM, Heikki Linnakangas wrote:
>>> I'll try to whip the MSbuild system into shape, so that it can build all
>>> the installers in one command. I'd also like to remove the dependency to
>>> PowerShell. Surely plain MSBuild can do what we want, so let's avoid the
>>> extra dependency if we can.
>
> Unfortunately I don't prefer to pack all into one command(tool).
> Though I chose instead of nmake, I don't love it so much.
>
> Though I don't have much time to confirm the patch, I noticed
> the followings for the time being.
>
> 1. The default target seems to build installers. Do we have to
> build installers so often? I have never built installers for
> a long time for purposes other than testing themselves.

Ok, how about making BuildDriverBoth the default then? That builds the
Unicode and ANSI drivers in the current Debug/Release configuration, for
the current target Platform.

> 2. ISTM there's no target which builds x86 and x64 drivers.
> Is it right?

No separate target, but you can pass the TARGET_CPU property:

msbuild /t:BuildDriver /p:TARGET_CPU=x86

Or at least with Windows SDK 7.1, you can also use "setenv /x86" or
"setenv /x64" to change the current target.

> 3. Why does the patch remove installer/psqlodbc-setup together?
>
>> One notable change over the existing powershell system is that the this
>> extracts the driver's version number from version.h, while the
>> powershell scripts did it the other way 'round.
>> This is better, because
>> now you don't need to modify both files when bumping the version number.
>
> I left version.h for nmake build. There's no need to maintain it when
> switching to MSBuild is done.

version.h is also used by Unix builds. That's why I think we should also
use version.h with the Windows builds - otherwise we end up with two
different ways to derive the version number, which is bad.

- Heikki

In response to

Browse pgsql-odbc by date

  From Date Subject
Next Message Heikki Linnakangas 2014-06-18 12:26:45 Re: Building psqlODBC installers
Previous Message Michael Paquier 2014-06-18 12:18:26 Re: Running regression tests on Windows