diff options
author | sebres <sebres@users.sourceforge.net> | 2017-01-12 08:44:56 (GMT) |
---|---|---|
committer | sebres <sebres@users.sourceforge.net> | 2017-01-12 08:44:56 (GMT) |
commit | 16bf696cda8c2d64b7262c508de606277c018572 (patch) | |
tree | f881bb272ca9e8daac6f2143c4b8ea04e5fd364c | |
parent | 28e427662bed8fd5048e65fd4062b23edf5bd02c (diff) | |
download | tcl-16bf696cda8c2d64b7262c508de606277c018572.zip tcl-16bf696cda8c2d64b7262c508de606277c018572.tar.gz tcl-16bf696cda8c2d64b7262c508de606277c018572.tar.bz2 |
Allows to compile direct from Visual Studio IDE (prevents throwing error "LNK1561: entry point must be defined" by testing linker)
-rw-r--r-- | win/rules.vc | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/win/rules.vc b/win/rules.vc index aa4ed1e..ecdd28f 100644 --- a/win/rules.vc +++ b/win/rules.vc @@ -188,9 +188,14 @@ COMPILERFLAGS = $(COMPILERFLAGS) -QIA64_Bx !endif
!endif
+# Prevents "LNK1561: entry point must be defined" error compiling from VS-IDE:
+!ifndef LINKER_TESTFLAGS
+LINKER_TESTFLAGS = -entry:_DllMainCRTStartup@12
+!endif
+
!if "$(MACHINE)" == "IX86"
### test for -align:4096, when align:512 will do.
-!if [nmakehlp -l -opt:nowin98]
+!if [nmakehlp -l -opt:nowin98 $(LINKER_TESTFLAGS)]
!message *** Linker has 'Win98 alignment problem'
ALIGN98_HACK = 1
!else
@@ -203,7 +208,7 @@ ALIGN98_HACK = 0 LINKERFLAGS =
-!if [nmakehlp -l -ltcg]
+!if [nmakehlp -l -ltcg $(LINKER_TESTFLAGS)]
LINKERFLAGS =-ltcg
!endif
@@ -412,7 +417,7 @@ TCL_NO_DEPRECATED = 0 !if [nmakehlp -f $(CHECKS) "fullwarn"]
!message *** Doing full warnings check
WARNINGS = -W4
-!if [nmakehlp -l -warn:3]
+!if [nmakehlp -l -warn:3 $(LINKER_TESTFLAGS)]
LINKERFLAGS = $(LINKERFLAGS) -warn:3
!endif
!else
@@ -425,7 +430,7 @@ WARNINGS = $(WARNINGS) -Wp64 !endif
!if $(PGO) > 1
-!if [nmakehlp -l -ltcg:pgoptimize]
+!if [nmakehlp -l -ltcg:pgoptimize $(LINKER_TESTFLAGS)]
LINKERFLAGS = $(LINKERFLAGS:-ltcg=) -ltcg:pgoptimize
!else
MSG=^
@@ -433,7 +438,7 @@ This compiler does not support profile guided optimization. !error $(MSG)
!endif
!elseif $(PGO) > 0
-!if [nmakehlp -l -ltcg:pginstrument]
+!if [nmakehlp -l -ltcg:pginstrument $(LINKER_TESTFLAGS)]
LINKERFLAGS = $(LINKERFLAGS:-ltcg=) -ltcg:pginstrument
!else
MSG=^
|