Subject: [postgresql-interfaces/psqlodbc] PR #64: MSI improvements

From: "chrullrich (@chrullrich)" <[email-masked]>
Date: Sat, 05 Oct 2024 17:08:51 +0000

This is the yield from ~8 hours of poring over the code. This is mostly janitorial stuff, but I'm by no means done; there is more to come. It would be great if you could look it over and tell me whether you are comfortable with it.

My claim in #57 that the component rules violation was the reason for the installation path not changing between versions was wrong. This is in fact an intentional behavior of Windows Installer as long as ODBC drivers are installed using the built-in support, i.e. the ODBCDriver table. In that case, the SetODBCFolders standard action overrides the installation path to maintain the driver in the same location.

---

From: "chrullrich (@chrullrich)" <[email-masked]>
Date: Sun, 06 Oct 2024 14:46:56 +0000

My exploration of both the PostgreSQL and psqlODBC build systems has not been overly successful (and it certainly did not help that PostgreSQL switched to Meson on Windows). I am able to build PostgreSQL in the most basic way, with essentially no optional features at all. The [censored] [censored] buildInstallers.ps1 ... [censored].

I managed to at least get it to pick up OpenSSL and could see it in libpq's dependencies, but the OpenSSL libraries did not show up in the PostgreSQL installation directory. psqlODBC installers include only those dependencies of libpq that are found in the same directory as libpq.dll, so I ended up with a package that installed a libpq with unresolved dependencies.

I have no idea if I'm supposed to copy libssl-3.dll and libcrypto-3.dll manually; instead, I disabled the OpenSSL support again.

Any advice on how this is meant to work will be greatly appreciated.

---

From: "davecramer (@davecramer)" <[email-masked]>
Date: Mon, 07 Oct 2024 11:01:47 +0000

@chrullrich I'm going to take any help I can to get the installer working properly so whatever support you need, just ask.
as far as building it goes have a look at https://github.com/dpage/winpgbuild

---

From: "davecramer (@davecramer)" <[email-masked]>
Date: Mon, 07 Oct 2024 11:02:47 +0000

Also ideally we switch to WIX4 as I would like to be able to release on windows ARM but it doesn't support WIX3

---

From: "chrullrich (@chrullrich)" <[email-masked]>
Date: Mon, 07 Oct 2024 19:23:31 +0000

Thanks for the link. It looks like it will be helpful.

Do you specifically need WiX 4, or will 5 also work?

---

From: "davecramer (@davecramer)" <[email-masked]>
Date: Tue, 08 Oct 2024 00:00:20 +0000

> Do you specifically need WiX 4, or will 5 also work?

I think 5 will work as well, I guess there's no reason not to go to 5

---

From: "chrullrich (@chrullrich)" <[email-masked]>
Date: Sat, 12 Oct 2024 13:14:35 +0000

You know what? Have at it! :-)

---

From: "chrullrich (@chrullrich)" <[email-masked]>
Date: Mon, 14 Oct 2024 14:18:59 +0000

Obsoleted by #66.