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
ASMKRBDIR=$(ASMDIR)\Heimdal.Kerberos
ASMKRBDIR=$(ASMDIR)\$(ASMKRBNAME)
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_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
POLKRB=policy.$(VER_PRODUCT_MAJOR).$(VER_PRODUCT_MINOR).Heimdal.Kerberos
POLKRB=policy.$(VER_PRODUCT_MAJOR).$(VER_PRODUCT_MINOR).$(ASMKRBNAME)
POLKRBDIR=$(ASMDIR)\$(POLKRB)
POLKRBFILE=$(POLKRBDIR)\$(ASMKRBVER).pol
POLKRBCAT=$(POLKRBDIR)\$(ASMKRBVER).cat

View File

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

View File

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

View File

@@ -32,8 +32,8 @@
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='dir.policy.Heimdal.Kerberos'
Name='$(var.PolPrefix).Heimdal.Kerberos'
FileSource='$(var.BinDir)\$(var.PolPrefix).Heimdal.Kerberos'>
Name='$(var.PolPrefix).$(var.AsmKrbName)'
FileSource='$(var.BinDir)\$(var.PolPrefix).$(var.AsmKrbName)'>
<Component Id='comp.policy.Heimdal.Kerberos'
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)
# Debug build flag
!ifndef NODEBUG
VER_DEBUG=1
!endif
# Define to 1 if this is a pre-release build. Undefine otherwise
VER_PRERELEASE=1
@@ -44,4 +49,3 @@ VER_PRERELEASE=1
# version numbers.
#VER_SPECIAL=Special build for testing ticket 12345

View File

@@ -561,7 +561,19 @@ LIBSQLITE =$(LIBDIR)\libsqlite.lib
LIBVERS =$(LIBDIR)\libvers.lib
LIBWIND =$(LIBDIR)\libwind.lib
ASMKRBNAME =Heimdal.Kerberos
ASMGSSNAME =Heimdal.GSSAPI
!ifdef VER_DEBUG
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