Windows: Extned Assembly name for version options

Windows file resources can be marked as Private, Special, Debug
and Pre-release.  Extend the Heimdal Assembly name to include
designations for these various build options to ensure that
private, special, debug and pre-release builds do not conflict
with the assembly name reserved for public releases.  This permits
a private, special, debug and pre-release build to be installed
side-by-side with the final release without interference.

Change-Id: I569ce2ff911ddbaebd81ba2e8b477ba6fb520502
This commit is contained in:
Jeffrey Altman
2013-09-14 20:26:50 -04:00
parent 6ade3b3a8b
commit 5d0f3ee927
6 changed files with 29 additions and 11 deletions

View File

@@ -49,7 +49,7 @@ prep:: mk-asm-dirs
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
# Heimdal.Kerberos Assembly # Heimdal.Kerberos Assembly
ASMKRBDIR=$(ASMDIR)\Heimdal.Kerberos ASMKRBDIR=$(ASMDIR)\$(ASMKRBNAME)
ASMKRBVER=$(VER_PRODUCT_MAJOR).$(VER_PRODUCT_MINOR).$(VER_PRODUCT_AUX).$(VER_PRODUCT_PATCH) ASMKRBVER=$(VER_PRODUCT_MAJOR).$(VER_PRODUCT_MINOR).$(VER_PRODUCT_AUX).$(VER_PRODUCT_PATCH)
ASMKRBVER_OLD_BEGIN=$(VER_OLD_BEGIN_MAJOR).$(VER_OLD_BEGIN_MINOR).$(VER_OLD_BEGIN_AUX).$(VER_OLD_BEGIN_PATCH) ASMKRBVER_OLD_BEGIN=$(VER_OLD_BEGIN_MAJOR).$(VER_OLD_BEGIN_MINOR).$(VER_OLD_BEGIN_AUX).$(VER_OLD_BEGIN_PATCH)
ASMKRBVER_OLD_END=$(VER_OLD_END_MAJOR).$(VER_OLD_END_MINOR).$(VER_OLD_END_AUX).$(VER_OLD_END_PATCH) ASMKRBVER_OLD_END=$(VER_OLD_END_MAJOR).$(VER_OLD_END_MINOR).$(VER_OLD_END_AUX).$(VER_OLD_END_PATCH)
@@ -130,7 +130,7 @@ test::
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
# Publisher configuration files # Publisher configuration files
POLKRB=policy.$(VER_PRODUCT_MAJOR).$(VER_PRODUCT_MINOR).Heimdal.Kerberos POLKRB=policy.$(VER_PRODUCT_MAJOR).$(VER_PRODUCT_MINOR).$(ASMKRBNAME)
POLKRBDIR=$(ASMDIR)\$(POLKRB) POLKRBDIR=$(ASMDIR)\$(POLKRB)
POLKRBFILE=$(POLKRBDIR)\$(ASMKRBVER).pol POLKRBFILE=$(POLKRBDIR)\$(ASMKRBVER).pol
POLKRBCAT=$(POLKRBDIR)\$(ASMKRBVER).cat POLKRBCAT=$(POLKRBDIR)\$(ASMKRBVER).cat

View File

@@ -63,6 +63,7 @@ $(OBJ)\heimdal-assemblies.wixobj: heimdal-assemblies.wxs
$(CANDLE) -arch $(PLATFORM) -o $@ $** \ $(CANDLE) -arch $(PLATFORM) -o $@ $** \
-dVersion=$(VERSION) \ -dVersion=$(VERSION) \
-dBinDir=$(BINDIR) \ -dBinDir=$(BINDIR) \
-dAsmKrbName=$(ASMKRBNAME) \
-dPlatform=$(PLATFORM) -dPlatform=$(PLATFORM)
$(SDKREDISTDIR)\Heimdal.msm: $(ASSEMBLYMODULE) $(SDKREDISTDIR)\Heimdal.msm: $(ASSEMBLYMODULE)
@@ -77,6 +78,7 @@ $(OBJ)\heimdal-policy.wixobj: heimdal-policy.wxs
$(CANDLE) -arch $(PLATFORM) -o $@ $** \ $(CANDLE) -arch $(PLATFORM) -o $@ $** \
-dVersion=$(VERSION) \ -dVersion=$(VERSION) \
-dBinDir=$(BINDIR) \ -dBinDir=$(BINDIR) \
-dAsmKrbName=$(ASMKRBNAME) \
-dPlatform=$(PLATFORM) \ -dPlatform=$(PLATFORM) \
-dPolPrefix=$(POLPREFIX) -dPolPrefix=$(POLPREFIX)

View File

@@ -24,8 +24,8 @@
Platform="$(var.Platform)" /> Platform="$(var.Platform)" />
<Directory Id='TARGETDIR' Name='SourceDir'> <Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id="dir.Heimdal.Kerberos" Name="Heimdal.Kerberos" <Directory Id="dir.Heimdal.Kerberos" Name="$(var.AsmKrbName)"
FileSource="$(var.BinDir)\Heimdal.Kerberos"> FileSource="$(var.BinDir)\$(var.AsmKrbName)">
<Component Id="comp.Heimdal.Kerberos" <Component Id="comp.Heimdal.Kerberos"
Guid="$(var.GuidKerberos)" Guid="$(var.GuidKerberos)"
Win64="$(var.Win64)"> Win64="$(var.Win64)">
@@ -38,8 +38,8 @@
<File Name="com_err.pdb" /> <File Name="com_err.pdb" />
<File Name="heimntlm.pdb" /> <File Name="heimntlm.pdb" />
<File Name="gssapi.pdb" /> <File Name="gssapi.pdb" />
<File Name="Heimdal.Kerberos.cat" /> <File Name="$(var.AsmKrbName).cat" />
<File Name="Heimdal.Kerberos.manifest" Id="id.Heimdal.Kerberos.manifest" /> <File Name="$(var.AsmKrbName).manifest" Id="id.Heimdal.Kerberos.manifest" />
</Component> </Component>
</Directory> </Directory>
</Directory> </Directory>

View File

@@ -32,8 +32,8 @@
<Directory Id='TARGETDIR' Name='SourceDir'> <Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='dir.policy.Heimdal.Kerberos' <Directory Id='dir.policy.Heimdal.Kerberos'
Name='$(var.PolPrefix).Heimdal.Kerberos' Name='$(var.PolPrefix).$(var.AsmKrbName)'
FileSource='$(var.BinDir)\$(var.PolPrefix).Heimdal.Kerberos'> FileSource='$(var.BinDir)\$(var.PolPrefix).$(var.AsmKrbName)'>
<Component Id='comp.policy.Heimdal.Kerberos' <Component Id='comp.policy.Heimdal.Kerberos'
Guid='$(var.GuidPolKerberos)' Guid='$(var.GuidPolKerberos)'

View File

@@ -30,6 +30,11 @@ VER_OLD_END_PATCH=65535
VER_PACKAGE_VERSION=$(VER_PRODUCT_MAJOR).$(VER_PRODUCT_MINOR).$(VER_PRODUCT_AUX) VER_PACKAGE_VERSION=$(VER_PRODUCT_MAJOR).$(VER_PRODUCT_MINOR).$(VER_PRODUCT_AUX)
# Debug build flag
!ifndef NODEBUG
VER_DEBUG=1
!endif
# Define to 1 if this is a pre-release build. Undefine otherwise # Define to 1 if this is a pre-release build. Undefine otherwise
VER_PRERELEASE=1 VER_PRERELEASE=1
@@ -44,4 +49,3 @@ VER_PRERELEASE=1
# version numbers. # version numbers.
#VER_SPECIAL=Special build for testing ticket 12345 #VER_SPECIAL=Special build for testing ticket 12345

View File

@@ -561,7 +561,19 @@ LIBSQLITE =$(LIBDIR)\libsqlite.lib
LIBVERS =$(LIBDIR)\libvers.lib LIBVERS =$(LIBDIR)\libvers.lib
LIBWIND =$(LIBDIR)\libwind.lib LIBWIND =$(LIBDIR)\libwind.lib
ASMKRBNAME =Heimdal.Kerberos !ifdef VER_DEBUG
ASMGSSNAME =Heimdal.GSSAPI ASM_DBG=.Debug
!endif
!ifdef VER_PRERELEASE
ASM_PRE=.Pre
!endif
!ifdef VER_PRIVATE
ASM_PVT=.Private
!endif
!ifdef VER_SPECIAL
ASM_SPC=.Special
!endif
ASMKRBNAME =Heimdal.Kerberos$(ASM_SPC)$(ASM_PVT)$(ASM_PRE)$(ASM_DBG)
APPMANIFEST =$(INCDIR)\Heimdal.Application.$(MCPU).manifest APPMANIFEST =$(INCDIR)\Heimdal.Application.$(MCPU).manifest