Subject: [Patch] Windows installer: allow manually setting WIXDIR as appropriate.

From: Nikolai Zhubr <[email-masked]>
Date: Fri, 02 Oct 2015 22:33:19 +0300

Hi all,

How about allowing wix3 to be located in a different path, pointed to by
setting WIXDIR environment variable _manually_ before building.

The following patch allows doing so, while fully retaining previous 
behaviour in case this variable was not manually set.

(E.g. when building in a 32bit windows, the "Program Files (x86)" is not 
good enough, and I'd rather not modify the scripts for just setting a 
correct path)

--- pkg/win32/Make.bat.orig	Fri Sep 25 13:20:24 2015
+++ pkg/win32/Make.bat	Fri Oct 02 21:55:27 2015
@@ -9,7 +9,9 @@
  SET APPKEYWORDS=PostgreSQL, pgAdmin
  SET APPCOMMENTS=PostgreSQL Tools
  SET APPDESCRIPTION=Management and administration tools for the 
PostgreSQL DBMS
+IF NOT "%WIXDIR%"=="" GOTO DONE_WIXDIR
  SET WIXDIR="C:\Program Files (x86)\Windows Installer XML v3\bin"
+:DONE_WIXDIR

  SET BUILDTREE="../.."

Thank you,
Nikolai

-- 
Sent via pgadmin-hackers mailing list ([email-masked])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers

---

From: Nikolai Zhubr <[email-masked]>
Date: Sat, 03 Oct 2015 00:10:30 +0300

Hi again,

there is some problem in my previous patch, it did not actually work, 
here goes a better one:

+IF NOT (%WIXDIR%)==() GOTO DONE_WIXDIR

  SET BUILDTREE="../.."

Thank you,
Nikolai

---

From: "J.F. Oster" <[email-masked]>
Date: Sun, 4 Oct 2015 07:55:33 +0300

Hello,

+1
I proposed the same once but had no feedback.

Nikolai, why doesn't the first version work for you? I have it done similar:

if NOT "%WIXDIR%"=="" GOTO WIXDIR_SET
SET WIXDIR="C:\Program Files (x86)\Windows Installer XML v3\bin"
:WIXDIR_SET

Saturday, October 3, 2015, 12:10:30 AM, Nikolai Zhubr wrote:

NZ> Hi again,

NZ> there is some problem in my previous patch, it did not actually work, 
NZ> here goes a better one:

NZ> --- pkg/win32/Make.bat.orig     Fri Sep 25 13:20:24 2015
NZ> +++ pkg/win32/Make.bat  Fri Oct 02 21:55:27 2015
NZ> @@ -9,7 +9,9 @@
NZ>   SET APPKEYWORDS=PostgreSQL, pgAdmin
NZ>   SET APPCOMMENTS=PostgreSQL Tools
NZ>   SET APPDESCRIPTION=Management and administration tools for the 
NZ> PostgreSQL DBMS
NZ> +IF NOT (%WIXDIR%)==() GOTO DONE_WIXDIR
NZ>   SET WIXDIR="C:\Program Files (x86)\Windows Installer XML v3\bin"
NZ> +:DONE_WIXDIR

NZ>   SET BUILDTREE="../.."

NZ> Thank you,
NZ> Nikolai

-- 
Best regards,
 J.F.

---

From: Nikolai Zhubr <[email-masked]>
Date: Sun, 04 Oct 2015 16:31:55 +0300

Hi all,
> I proposed the same once but had no feedback.

I'm actually surprised by the very low feedback on the list altogether.

> Nikolai, why doesn't the first version work for you? I have it done similar:

Because if the variable itself contains quotes (and typically it does, 
to deal with spaces in paths) then AFAICS command interpreter gets 
confused when it sees yet more surrounding quotes in a comparison 
operator in a line like you listed below. I'm no expert in cmd.exe 
behaviour, but at least on windows xp it caused interpreter errors, so I 
just used a simple workaround and it then ran fine.

Thank you,
Nikolai

---

From: Dave Page <[email-masked]>
Date: Mon, 5 Oct 2015 16:16:58 +0100

Thanks - patch applied.

On Fri, Oct 2, 2015 at 10:10 PM, Nikolai Zhubr <[email-masked]> wrote:
> Hi again,
>
> there is some problem in my previous patch, it did not actually work, here
> goes a better one:
>
>  SET APPDESCRIPTION=Management and administration tools for the PostgreSQL
> DBMS

-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company