提交 223c59ea 编写于 作者: D Dr. Stephen Henson

Fix WIN32 build system to correctly link ENGINE DLLs contained in a

directory: currently the GOST ENGINE is the only case.
上级 7bbd0de8
...@@ -114,6 +114,13 @@ ...@@ -114,6 +114,13 @@
Add command line options to s_client/s_server. Add command line options to s_client/s_server.
[Steve Henson] [Steve Henson]
Changes between 1.0.0a and 1.0.0b [xx XXX xxxx]
*) Fix WIN32 build system to correctly link an ENGINE directory into
a DLL.
[Steve Henson]
Changes between 1.0.0 and 1.0.0a [xx XXX xxxx] Changes between 1.0.0 and 1.0.0a [xx XXX xxxx]
*) Check return value of int_rsa_verify in pkey_rsa_verifyrecover *) Check return value of int_rsa_verify in pkey_rsa_verifyrecover
......
...@@ -13,6 +13,7 @@ $banner="\t\@echo Building OpenSSL"; ...@@ -13,6 +13,7 @@ $banner="\t\@echo Building OpenSSL";
my $no_static_engine = 1; my $no_static_engine = 1;
my $engines = ""; my $engines = "";
my $otherlibs = "";
local $zlib_opt = 0; # 0 = no zlib, 1 = static, 2 = dynamic local $zlib_opt = 0; # 0 = no zlib, 1 = static, 2 = dynamic
local $zlib_lib = ""; local $zlib_lib = "";
local $perl_asm = 0; # 1 to autobuild asm files from perl scripts local $perl_asm = 0; # 1 to autobuild asm files from perl scripts
...@@ -356,6 +357,12 @@ for (;;) ...@@ -356,6 +357,12 @@ for (;;)
$lib=$val; $lib=$val;
$lib =~ s/^.*\/([^\/]+)$/$1/; $lib =~ s/^.*\/([^\/]+)$/$1/;
} }
if ($key eq "LIBNAME" && $no_static_engine)
{
$lib=$val;
$lib =~ s/^.*\/([^\/]+)$/$1/;
$otherlibs .= " $lib";
}
if ($key eq "EXHEADER") if ($key eq "EXHEADER")
{ $exheader.=&var_add($dir,$val, 1); } { $exheader.=&var_add($dir,$val, 1); }
...@@ -658,7 +665,7 @@ foreach (split(/\s+/,$test)) ...@@ -658,7 +665,7 @@ foreach (split(/\s+/,$test))
$rules.=&do_link_rule("\$(TEST_D)$o$t$exep",$tt,"\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)"); $rules.=&do_link_rule("\$(TEST_D)$o$t$exep",$tt,"\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)");
} }
$defs.=&do_defs("E_SHLIB",$engines,"\$(ENG_D)",$shlibp); $defs.=&do_defs("E_SHLIB",$engines . $otherlibs,"\$(ENG_D)",$shlibp);
foreach (split(/\s+/,$engines)) foreach (split(/\s+/,$engines))
{ {
...@@ -671,6 +678,14 @@ foreach (split(/\s+/,$engines)) ...@@ -671,6 +678,14 @@ foreach (split(/\s+/,$engines))
$rules.= &do_lib_rule("\$(SSLOBJ)","\$(O_SSL)",$ssl,$shlib,"\$(SO_SSL)"); $rules.= &do_lib_rule("\$(SSLOBJ)","\$(O_SSL)",$ssl,$shlib,"\$(SO_SSL)");
$rules.= &do_lib_rule("\$(CRYPTOOBJ)","\$(O_CRYPTO)",$crypto,$shlib,"\$(SO_CRYPTO)"); $rules.= &do_lib_rule("\$(CRYPTOOBJ)","\$(O_CRYPTO)",$crypto,$shlib,"\$(SO_CRYPTO)");
foreach (split(/\s+/,$otherlibs))
{
my $uc = $_;
$uc =~ tr /a-z/A-Z/;
$rules.= &do_lib_rule("\$(${uc}OBJ)","\$(ENG_D)$o$_$shlibp", "", $shlib, "");
}
$rules.=&do_link_rule("\$(BIN_D)$o\$(E_EXE)$exep","\$(E_OBJ)","\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)"); $rules.=&do_link_rule("\$(BIN_D)$o\$(E_EXE)$exep","\$(E_OBJ)","\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)");
print $defs; print $defs;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册