From 299e174d2d0d2333c7973b5430db9d4e998911b7 Mon Sep 17 00:00:00 2001 From: Andy Polyakov Date: Sat, 13 Oct 2007 12:38:37 +0000 Subject: [PATCH] Make it possible to link VC static lib with either /MT or /MD application [from HEAD]. PR: 1230 --- e_os.h | 8 ++++++++ util/pl/VC-32.pl | 13 ++++++++----- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/e_os.h b/e_os.h index 5068d1bd74..ab3c539eab 100644 --- a/e_os.h +++ b/e_os.h @@ -277,6 +277,14 @@ static unsigned int _strlen31(const char *str) } # endif # include +# if defined(_MSC_VER) && _MSC_VER<=1200 && defined(_MT) && defined(isspace) + /* compensate for bug is VC6 ctype.h */ +# undef isspace +# undef isdigit +# undef isalnum +# undef isupper +# undef isxdigit +# endif # endif # include # include diff --git a/util/pl/VC-32.pl b/util/pl/VC-32.pl index c359c3a652..3b80adfbad 100644 --- a/util/pl/VC-32.pl +++ b/util/pl/VC-32.pl @@ -31,8 +31,10 @@ if ($FLAVOR =~ /WIN64/) $base_cflags=' /W3 /Gs0 /GF /Gy /nologo -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DDSO_WIN32 -DOPENSSL_SYSNAME_WIN32 -DOPENSSL_SYSNAME_WINNT -DUNICODE -D_UNICODE'; $base_cflags.=' -D_CRT_SECURE_NO_DEPRECATE'; # shut up VC8 $base_cflags.=' -D_CRT_NONSTDC_NO_DEPRECATE'; # shut up VC8 - $opt_cflags=' /MD /Ox'; - $dbg_cflags=' /MDd /Od -DDEBUG -D_DEBUG'; + my $f = $shlib?' /MD':' /MT'; + $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib + $opt_cflags=$f.' /Ox'; + $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG'; $lflags="/nologo /subsystem:console /opt:ref"; } elsif ($FLAVOR =~ /CE/) @@ -94,8 +96,10 @@ else # Win32 $base_cflags=' /W3 /WX /Gs0 /GF /Gy /nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DDSO_WIN32'; $base_cflags.=' -D_CRT_SECURE_NO_DEPRECATE'; # shut up VC8 $base_cflags.=' -D_CRT_NONSTDC_NO_DEPRECATE'; # shut up VC8 - $opt_cflags=' /MD /Ox /O2 /Ob2'; - $dbg_cflags=' /MDd /Od -DDEBUG -D_DEBUG'; + my $f = $shlib?' /MD':' /MT'; + $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib + $opt_cflags=$f.' /Ox /O2 /Ob2'; + $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG'; $lflags="/nologo /subsystem:console /opt:ref"; } $mlflags=''; @@ -203,7 +207,6 @@ if (!$no_asm) if ($shlib && $FLAVOR !~ /CE/) { $mlflags.=" $lflags /dll"; -# $cflags =~ s| /MD| /MT|; $lib_cflag=" -D_WINDLL"; $out_def="out32dll"; $tmp_def="tmp32dll"; -- 2.25.1