Change 27500 by [EMAIL PROTECTED] on 2006/03/15 11:06:34
The first step in supporting VC++ 8.0. Added macros for the free .NET
2.0 SDK and Visual Studio
2005. Added these macros to "if" conditions that were appropriate.
Added a fix to prevent
the .NET 1.1 and 2.0 SDK compilers from attempting to build
perlglob.exe (they are both missing
the setargv.obj file necessary to do it).
Affected files ...
... //depot/perl/win32/Makefile#293 edit
Differences ...
==== //depot/perl/win32/Makefile#293 (text) ====
Index: perl/win32/Makefile
--- perl/win32/Makefile#292~27421~ 2006-03-08 08:25:23.000000000 -0800
+++ perl/win32/Makefile 2006-03-15 03:06:34.000000000 -0800
@@ -100,6 +100,10 @@
#CCTYPE = MSVC70FREE
# Visual C++ 7.x (aka Visual Studio .NET 2003) (full version)
#CCTYPE = MSVC70
+# Visual C++ Toolkit 2005 (free version of Visual C++ 8.x command-line tools)
+#CCTYPE = MSVC80FREE
+# Visual C++ 8.x (aka Visual Studio .NET 2003) (full version)
+#CCTYPE = MSVC80
#
# uncomment next line if you want debug version of perl (big,slow)
@@ -337,7 +341,8 @@
# Visual Studio 98 and .NET 2003 specific
# VC++ 6.x and 7.x can load DLL's on demand. Makes the test suite run in
# about 10% less time. (The free version of 7.x can't do this, however.)
-!IF "$(CCTYPE)" == "MSVC60" || "$(CCTYPE)" == "MSVC70"
+# The addition of VC++ 8.x is currently an educated guess.
+!IF "$(CCTYPE)" == "MSVC60" || "$(CCTYPE)" == "MSVC70" || "$(CCTYPE)" ==
"MSVC80"
DELAYLOAD = -DELAYLOAD:ws2_32.dll -DELAYLOAD:shell32.dll delayimp.lib
!ENDIF
@@ -419,7 +424,7 @@
# the string-pooling option -Gf is deprecated in VC++ 7.x and will be removed
# in later versions, so use read-only string-pooling (-GF) instead
-!IF "$(CCTYPE)" == "MSVC70FREE" || "$(CCTYPE)" == "MSVC70"
+!IF "$(CCTYPE)" == "MSVC70FREE" || "$(CCTYPE)" == "MSVC70" || "$(CCTYPE)" ==
"MSVC80FREE" || "$(CCTYPE)" == "MSVC80"
STRPOOL = -GF
!ELSE
STRPOOL = -Gf
@@ -494,6 +499,12 @@
CONFIGPM = ..\lib\Config.pm ..\lib\Config_heavy.pl
MINIMOD = ..\lib\ExtUtils\Miniperl.pm
X2P = ..\x2p\a2p.exe
+
+# With .NET 1.1 and 2.0, setargs.obj is not available with the .NET SDK. It
+# only comes with Visual Studio 2003 and Visual Studio 2005.
+!IF "$(CCTYPE)" != "MSVC70FREE" && "$(CCTYPE)" != "MSVC80FREE"
+GLOBEXEBUILD =
+!ENDIF
# Unicode data files generated by mktables
UNIDATAFILES = ..\lib\unicore\Canonical.pl ..\lib\unicore\Exact.pl \
@@ -910,8 +921,12 @@
#------------------------------------------------------------
$(GLOBEXE) : perlglob$(o)
+!ifdef GLOBEXEBUILD
$(LINK32) $(LINK_FLAGS) $(LIBFILES) -out:$@ -subsystem:$(SUBSYS) \
perlglob$(o) setargv$(o)
+!else
+ echo Skipping $(GLOBEXE)
+!endif
perlglob$(o) : perlglob.c
End of Patch.