If you remember, I long ago aquired a copy of bufferoverflowU.lib and stuck it in my compiler lib directory. It satisfies the linker's need to find it, even though it is never called upon to supply any entrypoints.
But I guess that the bufferoverflowU problem could be avoided by:
# The 64 bit Platform SDK compilers contain a runtime library that doe
+sn't
# include the buffer overrun verification code used by the /GS switch.
# Since the code links against libraries that are compiled with /GS, t
+his
# "security cookie verification" must be included via bufferoverlow.li
+b.
!IF "$(WIN64)" == "define" && ( "$(CCTYPE)" == "MSVC80" || "$(CCTYPE)"
+ == "MSVC80FREE" )
LIBBASEFILES = $(LIBBASEFILES) bufferoverflowU.lib
!ENDIF
That said, it is intriguing that you are not having the same problem with exetype.pl. It is only a problem here when run under miniperl.exe... It was at this point it dawned on my that in order to be modifying wperl.exe, it had just copied a successfully built perl.exe.
So, insteand of using $(MINIPERL) it should be possible to use $(PERLEXE) to work around the problem with miniperl. And it is and does. With that change, nmake install completes successfully.
$(PERLEXE): $(PERLDLL) $(CONFIGPM) $(PERLEXE_OBJ) $(PERLEXE_RES)
$(LINK32) -subsystem:console -out:$@ -stack:0x1000000 $(LINK_FLAGS
+) \
$(LIBFILES) $(PERLEXE_OBJ) $(SETARGV_OBJ) $(PERLIMPLIB) $(PERL
+EXE_RES)
$(EMBED_EXE_MANI)
copy $(PERLEXE) $(WPERLEXE)
# $(MINIPERL) -I..\lib bin\exetype.pl $(WPERLEXE) WINDOWS
$(PERLEXE) -I..\lib bin\exetype.pl $(WPERLEXE) WINDOWS
And while we're at it, the spurious -Wp64 is deprecated and will be remove warning could go:
!IF "$(WIN64)" == "define"
DEFINES = $(DEFINES) -DWIN64 -DCONSERVATIVE
!IF "$(CCTYPE)" == "MSVC80" || "$(CCTYPE)" == "MSVC80FREE"
OPTIMIZE = $(OPTIMIZE) -Wp64 -fp:precise
!ELSE
OPTIMIZE = $(OPTIMIZE) -fp:precise
!ENDIF
!ENDIF
Would those changes work on your 2003 setup?
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
|