Fix WIN32 build system to correctly link ENGINE DLLs contained in a
directory: currently the GOST ENGINE is the only case.
This commit is contained in:
parent
160f9b5bf6
commit
f6c29ba3dc
4
CHANGES
4
CHANGES
@ -24,7 +24,9 @@
|
|||||||
|
|
||||||
Changes between 1.0.0a and 1.0.0b [xx XXX xxxx]
|
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 [01 Jun 2010]
|
Changes between 1.0.0 and 1.0.0a [01 Jun 2010]
|
||||||
|
|
||||||
|
@ -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 (;;)
|
|||||||
$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))
|
|||||||
$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))
|
|||||||
$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;
|
||||||
|
Loading…
Reference in New Issue
Block a user