summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorapnadkarni <apnmbx-wits@yahoo.com>2019-11-22 04:10:47 (GMT)
committerapnadkarni <apnmbx-wits@yahoo.com>2019-11-22 04:10:47 (GMT)
commit44bc67ccd6e74dea369f724743f77f047fa12edb (patch)
treebbaf96dc72beebf00e4564318fc1beb86b3b5948
parent58a383b2f0ec83800241c0539f19535dd3f4aed4 (diff)
parent931120cefe4e631de9e88bcb524390dc766094a9 (diff)
downloadtcl-44bc67ccd6e74dea369f724743f77f047fa12edb.zip
tcl-44bc67ccd6e74dea369f724743f77f047fa12edb.tar.gz
tcl-44bc67ccd6e74dea369f724743f77f047fa12edb.tar.bz2
Merged rc file VERSIONINFO fixes
-rw-r--r--win/rules.vc17
1 files changed, 15 insertions, 2 deletions
diff --git a/win/rules.vc b/win/rules.vc
index 2b11b01..50911d4 100644
--- a/win/rules.vc
+++ b/win/rules.vc
@@ -24,7 +24,7 @@ _RULES_VC = 1
# For modifications that are not backward-compatible, you *must* change
# the major version.
RULES_VERSION_MAJOR = 1
-RULES_VERSION_MINOR = 4
+RULES_VERSION_MINOR = 5
# The PROJECT macro must be defined by parent makefile.
!if "$(PROJECT)" == ""
@@ -976,6 +976,19 @@ VERSION = $(DOTVERSION:.=)
!endif # $(DOING_TCL) ... etc.
+# Windows RC files have 3 version components. Ensure this irrespective
+# of how many components the package has specified. Basically, ensure
+# minimum 4 components by appending 4 0's and then pick out the first 4.
+# Also take care of the fact that DOTVERSION may have "a" or "b" instead
+# of "." separating the version components.
+DOTSEPARATED=$(DOTVERSION:a=.)
+DOTSEPARATED=$(DOTSEPARATED:b=.)
+!if [echo RCCOMMAVERSION = \> versions.vc] \
+ || [for /f "tokens=1,2,3,4,5* delims=." %a in ("$(DOTSEPARATED).0.0.0.0") do echo %a,%b,%c,%d >> versions.vc]
+!error *** Could not generate RCCOMMAVERSION ***
+!endif
+!include versions.vc
+
################################################################
# 10. Construct output directory and file paths
# Figure-out how to name our intermediate and output directories.
@@ -1490,7 +1503,7 @@ GUIEXECMD = $(link32) $(guilflags) -out:$@ $(baselibs) $(tcllibs) $(tklibs)
RESCMD = $(rc32) -fo $@ -r -i "$(GENERICDIR)" -i "$(TMP_DIR)" \
$(TCL_INCLUDES) \
/DDEBUG=$(DEBUG) -d UNCHECKED=$(UNCHECKED) \
- /DCOMMAVERSION=$(DOTVERSION:.=,),0 \
+ /DCOMMAVERSION=$(RCCOMMAVERSION) \
/DDOTVERSION=\"$(DOTVERSION)\" \
/DVERSION=\"$(VERSION)\" \
/DSUFX=\"$(SUFX:t=)\" \