Remove the NMAKE build system for installers (#65)
authorChristian Ullrich <chris@chrullrich.net>
Tue, 8 Oct 2024 16:57:28 +0000 (18:57 +0200)
committerGitHub <noreply@github.com>
Tue, 8 Oct 2024 16:57:28 +0000 (12:57 -0400)
It stopped working in early 2017 after version 9.6.1.

installer/README.txt
installer/installer.mak [deleted file]
installer/productcodes.mak [deleted file]
win64.mak

index 63ffc5714a46eb189fb8d102629d320d7ea334f8..3a1b1872afebe1eff473bb84cba55fe96eb1416d 100644 (file)
@@ -8,9 +8,7 @@ WiX may be downloaded from:
   http://wix.codeplex.com/
 
 
-Two parallel systems to build the installers are currently provided:
-
-POWERSHELL BASED
+HOW TO BUILD
 ----------
 
 Ensure that suitable binaries are in the parent directory Release build outputs
@@ -30,10 +28,5 @@ and try again.
 
 Note that these installer generators use the configuration file prepared by the
 PowerShell scripts in ..\winbuild, defaulting to ..\winbuild\configuration.xml,
-so you can't just mix them with SDK- or NMake based compilation.
-
-NMAKE BASED
------------
+so you can't just mix them with SDK-based compilation.
 
-Use the top-level file (win64.mak), per the documentation in
-docs/win32-compilation.html, to build installers using NMake.
diff --git a/installer/installer.mak b/installer/installer.mak
deleted file mode 100644 (file)
index 84231f6..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-# All the driver files that will be included in the installer
-DRIVER_FILES = ../$(TARGET_CPU)_Unicode_$(CFG)/psqlodbc35w.dll \
-   ../$(TARGET_CPU)_Unicode_$(CFG)/pgxalib.dll \
-   ../$(TARGET_CPU)_Unicode_$(CFG)/pgenlist.dll \
-   ../$(TARGET_CPU)_ANSI_$(CFG)/psqlodbc30a.dll \
-   ../$(TARGET_CPU)_ANSI_$(CFG)/pgxalib.dll \
-   ../$(TARGET_CPU)_ANSI_$(CFG)/pgenlista.dll
-
-ALL: $(TARGET_CPU)\psqlodbc_$(TARGET_CPU).msm $(TARGET_CPU)\psqlodbc_$(TARGET_CPU).msi
-
-CANDLE="$(WIX)bin\candle.exe"
-LIGHT="$(WIX)bin\light"
-
-!INCLUDE ..\windows-defaults.mak
-!IF EXISTS(..\windows-local.mak)
-!INCLUDE ..\windows-local.mak
-!ENDIF
-
-!MESSAGE determining product code
-
-!INCLUDE productcodes.mak
-
-!MESSAGE Got product code $(PRODUCTCODE)
-
-MSM_OPTS = -dLIBPQBINDIR="$(LIBPQ_BIN)"
-
-# Merge module
-$(TARGET_CPU)\psqlodbc_$(TARGET_CPU).msm: psqlodbcm_cpu.wxs $(DRIVER_FILES)
-   echo Building Installer Merge Module
-   $(CANDLE) -nologo -dPlatform="$(TARGET_CPU)" -dVERSION=$(POSTGRESDRIVERVERSION) -dSUBLOC=$(SUBLOC) $(MSM_OPTS) -o $(TARGET_CPU)\psqlodbcm.wixobj psqlodbcm_cpu.wxs
-   $(LIGHT) -nologo -o $(TARGET_CPU)\psqlodbc_$(TARGET_CPU).msm $(TARGET_CPU)\psqlodbcm.wixobj
-
-$(TARGET_CPU)\psqlodbc_$(TARGET_CPU).msi: psqlodbc_cpu.wxs $(DRIVER_FILES)
-   echo Building Installer
-   $(CANDLE) -nologo -dPlatform="$(TARGET_CPU)" -dVERSION=$(POSTGRESDRIVERVERSION) -dSUBLOC=$(SUBLOC) -dPRODUCTCODE=$(PRODUCTCODE) -o $(TARGET_CPU)\psqlodbc.wixobj psqlodbc_cpu.wxs
-   $(LIGHT) -nologo -ext WixUIExtension -cultures:en-us -o $(TARGET_CPU)\psqlodbc_$(TARGET_CPU).msi $(TARGET_CPU)\psqlodbc.wixobj
-   cscript modify_msi.vbs $(TARGET_CPU)\psqlodbc_$(TARGET_CPU).msi
-
-clean:
-   -rd /Q /S x64 x86
diff --git a/installer/productcodes.mak b/installer/productcodes.mak
deleted file mode 100644 (file)
index 09e3c08..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-!IF "$(POSTGRESDRIVERVERSION)" == "09.02.0100"
-PRODUCTCODE="3E42F836-9204-4c42-B3C3-8680A0434875"
-SUBLOC=0902
-!ELSE IF "$(POSTGRESDRIVERVERSION)" == "09.03.0100"
-PRODUCTCODE="1F896F2F-5756-4d22-B5A3-040796C9B485"
-SUBLOC=0903
-!ELSE IF "$(POSTGRESDRIVERVERSION)" == "09.03.0200"
-PRODUCTCODE="1F896F2F-5756-4d22-B5A3-040796C9B485"
-SUBLOC=0903
-!ELSE IF "$(POSTGRESDRIVERVERSION)" == "09.03.0210"
-PRODUCTCODE="1F896F2F-5756-4d22-B5A3-040796C9B485"
-SUBLOC=0903
-!ELSE IF "$(POSTGRESDRIVERVERSION)" == "09.03.0300"
-PRODUCTCODE="1F896F2F-5756-4d22-B5A3-040796C9B485"
-SUBLOC=0903
-!ELSE IF "$(POSTGRESDRIVERVERSION)" == "09.05.0100"
-PRODUCTCODE="4C4C4544-004D-5210-8035-B4C04F4B5731"
-SUBLOC=0905
-!ELSE IF "$(POSTGRESDRIVERVERSION)" == "09.05.0200"
-PRODUCTCODE="E40653B0-7482-45F6-9BBB-BBB4414E282C"
-SUBLOC=0905
-!ELSE IF "$(POSTGRESDRIVERVERSION)" == "09.05.0300"
-PRODUCTCODE="6621B0BF-1017-4b6d-AB9A-C1F9CFF092C8"
-SUBLOC=0905
-!ELSE IF "$(POSTGRESDRIVERVERSION)" == "09.05.0400"
-PRODUCTCODE="B047E4C0-B2C9-44DE-B125-6A4DEEFD26CD"
-SUBLOC=0905
-!ELSE IF "$(POSTGRESDRIVERVERSION)" == "09.06.0100"
-PRODUCTCODE="FBA4F687-2F8E-4E5F-BB7B-60F606E6F1C3"
-SUBLOC=0906
-!ELSE
-!MESSAGE Driver version $(POSTGRESDRIVERVERSION) is not listed in productcodes.mak
-EXIT
-!ENDIF
index b28ad793eba993a7c47cc6406800b41616670953..13574d1640687d2385a7952ae4e4321f96545c43 100755 (executable)
--- a/win64.mak
+++ b/win64.mak
@@ -316,24 +316,13 @@ unicode-driver:
 ansi-driver:
    $(MAKE) -f win64.mak ANSI_VERSION=yes
 
-installer: unicode-driver ansi-driver
-   cd installer && $(MAKE) -f installer.mak CFG=$(CFG)
-
-# world target builds both 32-bit and 64-bit installers in one command.
-#
-# The "setenv" command, from Microsoft SDK, is used to switch the build
-# target. However, it only changes the environment for the current shell;
-# it is reset for the next command. So we cannot just call "setenv /x64"
-# here one one line and nmake one the next one. I also tried creating a .bat
-# file with the commands, but setenv contains a "EXIT /B" which stops the
-# script from executing. But we can launch a new cmd.exe and pass the
-# commands to it in stdin.
 world:
    cmd < <<
 setenv /x64
-$(MAKE) -f win64.mak installer CFG=$(CFG)
+$(MAKE) -f win64.mak unicode-driver ansi-driver CFG=$(CFG)
 setenv /x86
-$(MAKE) -f win64.mak installer CFG=$(CFG)
+$(MAKE) -f win64.mak unicode-driver ansi-driver CFG=$(CFG)
+>&2 echo The "world" target does not build installers anymore.
 <<
 
 clean-world:
@@ -341,4 +330,3 @@ clean-world:
    -rd /Q /S x64_Unicode_Release x64_Unicode_Debug
    -rd /Q /S x86_ANSI_Release x86_ANSI_Debug
    -rd /Q /S x86_Unicode_Release x86_Unicode_Debug
-   cd installer && $(MAKE) /f installer.mak CFG=$(CFG) clean