mirror of
https://github.com/openssl/openssl.git
synced 2025-02-17 14:32:04 +08:00
Configurations/10-main.conf: omit now redundant -D_WINDLL.
... and refine /MT vs. /MD flag handling. Reviewed-by: Richard Levitte <levitte@openssl.org>
This commit is contained in:
parent
d237d69914
commit
c32cbe9787
@ -1238,13 +1238,10 @@ sub vms_info {
|
||||
coutflag => "/Fo",
|
||||
rc => "rc",
|
||||
rcoutflag => "/fo",
|
||||
lib_cflags => sub { join(" ",
|
||||
($disabled{shared} ? "/Zl" : ()),
|
||||
"/Zi /Fdlib") },
|
||||
lib_cflags => add("/Zi /Fdlib"),
|
||||
dso_cflags => "/Zi",
|
||||
bin_cflags => "/Zi /Fdapp",
|
||||
lflags => add("/debug"),
|
||||
shared_cflag => "-D_WINDLL",
|
||||
shared_ldflag => "/dll",
|
||||
shared_target => "win-shared", # meaningless except it gives Configure a hint
|
||||
thread_scheme => "winthreads",
|
||||
@ -1255,14 +1252,29 @@ sub vms_info {
|
||||
cflags => add(picker(default => "-DUNICODE -D_UNICODE",
|
||||
debug =>
|
||||
sub {
|
||||
($disabled{shared} ? "/MT" : "/MD")
|
||||
."d /Od -DDEBUG -D_DEBUG";
|
||||
($disabled{shared} ? "" : "/MDd")
|
||||
." /Od -DDEBUG -D_DEBUG";
|
||||
},
|
||||
release =>
|
||||
sub {
|
||||
($disabled{shared} ? "/MT" : "/MD")
|
||||
($disabled{shared} ? "" : "/MD")
|
||||
." /Ox /O2 /Ob2";
|
||||
})),
|
||||
lib_cflags => add(sub { $disabled{shared} ? "/MT /Zl" : () }),
|
||||
# Following might/should appears controversial, i.e. defining
|
||||
# /MDd without evaluating $disabled{shared}. It works in
|
||||
# non-shared build because static library is compiled with /Zl
|
||||
# and bares no reference to specific RTL. And it works in
|
||||
# shared build because multiple /MDd options are not prohibited.
|
||||
# But why /MDd in static build? Well, basically this is just a
|
||||
# reference point, which allows to catch eventual errors that
|
||||
# would prevent those who want to wrap OpenSSL into own .DLL.
|
||||
# Why not /MD in release build then? Well, some are likely to
|
||||
# prefer [non-debug] openssl.exe to be free from Micorosoft RTL
|
||||
# redistributable.
|
||||
bin_cflags => add(picker(debug => "/MDd",
|
||||
release => sub { $disabled{shared} ? "/MT" : () },
|
||||
)),
|
||||
bin_lflags => add("/subsystem:console /opt:ref"),
|
||||
ex_libs => sub {
|
||||
my @ex_libs = ();
|
||||
|
Loading…
Reference in New Issue
Block a user