From 523dcaf08e954dac0a8fc020c8a210c12eae7663 Mon Sep 17 00:00:00 2001 From: "Asanka C. Herath" Date: Mon, 29 Nov 2010 18:21:24 -0500 Subject: [PATCH] Windows: 64-bit installer should also include 32-bit assemblies --- packages/windows/installer/NTMakefile | 25 ++++++++++++++++--- .../windows/installer/heimdal-assemblies.wxs | 6 ++--- .../windows/installer/heimdal-installer.wxs | 11 ++++++++ packages/windows/installer/heimdal-policy.wxs | 4 ++- 4 files changed, 39 insertions(+), 7 deletions(-) diff --git a/packages/windows/installer/NTMakefile b/packages/windows/installer/NTMakefile index 9dbfd2c23..9252cc1c9 100644 --- a/packages/windows/installer/NTMakefile +++ b/packages/windows/installer/NTMakefile @@ -93,6 +93,18 @@ clean:: -$(RM) $(SDKREDISTDIR)\Heimdal.msm -$(RM) $(SDKREDISTDIR)\Heimdal.Policy.msm +# Locate 32-bit assembly merge modules + +!if "$(CPU)"=="AMD64" +ASSEMBLYDIR32=$(SDKREDISTDIR:AMD64=i386) + +!if !exist( $(ASSEMBLYDIR32)\Heimdal.msm ) + +!message 32-bit assembly not found. Skipping 32-bit components +!undef ASSEMBLYDIR32 +!endif + +!endif ###################################################################### # Runtime modules @@ -148,20 +160,27 @@ THIRDPARTYOPT=$(THIRDPARTYOPT) -dMKShim=1 INSTALLER=$(INSTDIR)\Heimdal-$(CPU)$(DEBUGOPT)-$(VERSIOND).msi -$(INSTALLER): $(OBJ)\heimdal-installer.wixobj $(ASSEMBLYMODULE) $(THIRDPARTYOBJS) \ - $(THIRDPARTYDEPS) lang\en-us.wxl +$(INSTALLER): $(OBJ)\heimdal-installer.wixobj $(ASSEMBLYMODULE) $(POLICYMODULE) \ + $(THIRDPARTYOBJS) $(THIRDPARTYDEPS) lang\en-us.wxl $(LIGHT) -out $@ $(OBJ)\heimdal-installer.wixobj $(THIRDPARTYOBJS) \ -sval -cultures:en-us -loc lang\en-us.wxl \ -dWixUILicenseRtf=lang\license-en-us.rtf \ -ext WixUIExtension $(_CODESIGN) +!ifdef ASSEMBLYDIR32 +$(INSTALLER): $(ASSEMBLYDIR32)\Heimdal.msm $(ASSEMBLYDIR32)\Heimdal.Policy.msm +!endif + $(OBJ)\heimdal-installer.wixobj: heimdal-installer.wxs - $(CANDLE) -arch $(PLATFORM) -o $@ $** \ + $(CANDLE) -arch $(PLATFORM) -o $@ heimdal-installer.wxs \ -dVersion=$(VERSION) \ -dBinDir=$(BINDIR) \ -dDocDir=$(DOCDIR) \ -dInstDir=$(INSTDIR) \ +!ifdef ASSEMBLYDIR32 + -dAssemblyDir32=$(ASSEMBLYDIR32) \ +!endif -dSrcDir=$(SRC) \ -dPlatform=$(PLATFORM) \ -dRuntimeModule=$(RUNTIMEMODULE) \ diff --git a/packages/windows/installer/heimdal-assemblies.wxs b/packages/windows/installer/heimdal-assemblies.wxs index d64443db1..c4403f61c 100644 --- a/packages/windows/installer/heimdal-assemblies.wxs +++ b/packages/windows/installer/heimdal-assemblies.wxs @@ -4,20 +4,20 @@ + - + - - + + + + + @@ -319,6 +326,10 @@ + + + + diff --git a/packages/windows/installer/heimdal-policy.wxs b/packages/windows/installer/heimdal-policy.wxs index 8a73fe8da..1ef0d965e 100644 --- a/packages/windows/installer/heimdal-policy.wxs +++ b/packages/windows/installer/heimdal-policy.wxs @@ -4,18 +4,20 @@ + + -