The GCC-2.95.2 bundle comes with Mingw32 libraries and headers.
-Make sure you install the binaries as indicated in the README for
-the GCC bundle. You may need to set up a few environment variables
-(usually run from a batch file).
+Make sure you install the binaries that work with MSVCRT.DLL as indicated
+in the README for the GCC bundle. You may need to set up a few environment
+variables (usually run from a batch file).
You also need dmake. See L</"Borland C++"> above on how to get it.
my $t = 30;
$cpt->rdo('/non/existant/file.name');
# The regexp is getting rather baroque.
-print $! =~ /No such file|file specification syntax error|A file or directory in the path name does not exist|Invalid argument|Device not configured|file not found|File or directory doesn't exist/i ? "ok $t\n" : "not ok $t # $!\n"; $t++;
+print $! =~ /cannot find|No such file|file specification syntax error|A file or directory in the path name does not exist|Invalid argument|Device not configured|file not found|File or directory doesn't exist/i ? "ok $t\n" : "not ok $t # $!\n"; $t++;
# test #31 is gone.
print 1 ? "ok $t\n" : "not ok $t\n#$@/$!\n"; $t++;
print (mkdir('blurfl',0777) ? "ok 1\n" : "not ok 1\n");
print (mkdir('blurfl',0777) ? "not ok 2\n" : "ok 2\n");
-print ($! =~ /exist|denied/ ? "ok 3\n" : "# $!\nnot ok 3\n");
+print ($! =~ /cannot move|exist|denied/ ? "ok 3\n" : "# $!\nnot ok 3\n");
print (-d 'blurfl' ? "ok 4\n" : "not ok 4\n");
print (rmdir('blurfl') ? "ok 5\n" : "not ok 5\n");
print (rmdir('blurfl') ? "not ok 6\n" : "ok 6\n");
-print ($! =~ /such|exist|not found/i ? "ok 7\n" : "not ok 7\n");
+print ($! =~ /cannot find|such|exist|not found/i ? "ok 7\n" : "# $!\nnot ok 7\n");
# Visual C++ >= 6.x
#CCTYPE *= MSVC60
# Borland 5.02 or later
-CCTYPE *= BORLAND
-# mingw32/gcc-2.95.2 or better
-#CCTYPE *= GCC
+#CCTYPE *= BORLAND
+# mingw32+gcc-2.95.2 or better
+CCTYPE *= GCC
#
# uncomment this if you are compiling under Windows 95/98 and command.com
# so you may have to set CCHOME explicitly (spaces in the path name should
# not be quoted)
#
-CCHOME *= c:\bc5
+#CCHOME *= c:\bc5
#CCHOME *= $(MSVCDIR)
-#CCHOME *= D:\packages\mingw32
+CCHOME *= c:\gcc-2.95.2-msvcrt
CCINCDIR *= $(CCHOME)\include
CCLIBDIR *= $(CCHOME)\lib
ARCHNAME = MSWin32-$(PROCESSOR_ARCHITECTURE)
.ENDIF
-.IF "$(USE_OBJECT)" == "define"
-ARCHNAME = $(ARCHNAME)-thread
+.IF "$(USE_ITHREADS)" == "define"
+ARCHNAME !:= $(ARCHNAME)-thread
.ENDIF
# Visual Studio 98 specific
EXEOUT_FLAG = -o
LIBOUT_FLAG =
+# NOTE: we assume that GCC uses MSVCRT.DLL
+BUILDOPT += -fno-strict-aliasing -DPERL_MSVCRT_READFIX
+
.ELSE
CC = cl
CFGSH_TMPL = config.gc
CFGH_TMPL = config_H.gc
-.IF "$(USE_OBJECT)" == "define"
-PERLIMPLIB = ..\libperlcore$(a)
-.ELSE
-PERLIMPLIB = ..\libperl$(a)
-.ENDIF
+PERLIMPLIB = ..\libperl56$(a)
.ELSE
#include <stdio.h>
#include <direct.h>
#include <stdlib.h>
+#include <fcntl.h>
#ifndef EXT
#include "EXTERN.h"
#endif