Loading Configurations/10-main.conf +19 −7 Original line number Diff line number Diff line Loading @@ -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", Loading @@ -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 Loading
Configurations/10-main.conf +19 −7 Original line number Diff line number Diff line Loading @@ -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", Loading @@ -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