diff options
| author | djm <> | 2012-10-13 21:23:58 +0000 |
|---|---|---|
| committer | djm <> | 2012-10-13 21:23:58 +0000 |
| commit | adb31f466163d59ad933cf9d299ce6c610f1cff3 (patch) | |
| tree | cfb338ea736543eb88bd6c3f56f007ecb05dce51 /src/lib/libcrypto/util/pl | |
| parent | 767ddad28eb81a703656eed39ed362c83ac9e20a (diff) | |
| download | openbsd-adb31f466163d59ad933cf9d299ce6c610f1cff3.tar.gz openbsd-adb31f466163d59ad933cf9d299ce6c610f1cff3.tar.bz2 openbsd-adb31f466163d59ad933cf9d299ce6c610f1cff3.zip | |
import OpenSSL-1.0.1c
Diffstat (limited to 'src/lib/libcrypto/util/pl')
| -rw-r--r-- | src/lib/libcrypto/util/pl/VC-32.pl | 79 |
1 files changed, 69 insertions, 10 deletions
diff --git a/src/lib/libcrypto/util/pl/VC-32.pl b/src/lib/libcrypto/util/pl/VC-32.pl index 5f25fc41bf..c503bd52b9 100644 --- a/src/lib/libcrypto/util/pl/VC-32.pl +++ b/src/lib/libcrypto/util/pl/VC-32.pl | |||
| @@ -6,6 +6,16 @@ | |||
| 6 | $ssl= "ssleay32"; | 6 | $ssl= "ssleay32"; |
| 7 | $crypto="libeay32"; | 7 | $crypto="libeay32"; |
| 8 | 8 | ||
| 9 | if ($fips && !$shlib) | ||
| 10 | { | ||
| 11 | $crypto="libeayfips32"; | ||
| 12 | $crypto_compat = "libeaycompat32.lib"; | ||
| 13 | } | ||
| 14 | else | ||
| 15 | { | ||
| 16 | $crypto="libeay32"; | ||
| 17 | } | ||
| 18 | |||
| 9 | $o='\\'; | 19 | $o='\\'; |
| 10 | $cp='$(PERL) util/copy.pl'; | 20 | $cp='$(PERL) util/copy.pl'; |
| 11 | $mkdir='$(PERL) util/mkdir-p.pl'; | 21 | $mkdir='$(PERL) util/mkdir-p.pl'; |
| @@ -33,7 +43,7 @@ if ($FLAVOR =~ /WIN64/) | |||
| 33 | # considered safe to ignore. | 43 | # considered safe to ignore. |
| 34 | # | 44 | # |
| 35 | $base_cflags= " $mf_cflag"; | 45 | $base_cflags= " $mf_cflag"; |
| 36 | my $f = $shlib?' /MD':' /MT'; | 46 | my $f = $shlib || $fips ?' /MD':' /MT'; |
| 37 | $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib | 47 | $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib |
| 38 | $opt_cflags=$f.' /Ox'; | 48 | $opt_cflags=$f.' /Ox'; |
| 39 | $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG'; | 49 | $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG'; |
| @@ -114,7 +124,7 @@ elsif ($FLAVOR =~ /CE/) | |||
| 114 | else # Win32 | 124 | else # Win32 |
| 115 | { | 125 | { |
| 116 | $base_cflags= " $mf_cflag"; | 126 | $base_cflags= " $mf_cflag"; |
| 117 | my $f = $shlib?' /MD':' /MT'; | 127 | my $f = $shlib || $fips ?' /MD':' /MT'; |
| 118 | $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib | 128 | $lib_cflag='/Zl' if (!$shlib); # remove /DEFAULTLIBs from static lib |
| 119 | $opt_cflags=$f.' /Ox /O2 /Ob2'; | 129 | $opt_cflags=$f.' /Ox /O2 /Ob2'; |
| 120 | $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG'; | 130 | $dbg_cflags=$f.'d /Od -DDEBUG -D_DEBUG'; |
| @@ -266,10 +276,19 @@ elsif ($shlib && $FLAVOR =~ /CE/) | |||
| 266 | 276 | ||
| 267 | sub do_lib_rule | 277 | sub do_lib_rule |
| 268 | { | 278 | { |
| 269 | local($objs,$target,$name,$shlib)=@_; | 279 | my($objs,$target,$name,$shlib,$ign,$base_addr) = @_; |
| 270 | local($ret); | 280 | local($ret); |
| 271 | 281 | ||
| 272 | $taget =~ s/\//$o/g if $o ne '/'; | 282 | $taget =~ s/\//$o/g if $o ne '/'; |
| 283 | my $base_arg; | ||
| 284 | if ($base_addr ne "") | ||
| 285 | { | ||
| 286 | $base_arg= " /base:$base_addr"; | ||
| 287 | } | ||
| 288 | else | ||
| 289 | { | ||
| 290 | $base_arg = ""; | ||
| 291 | } | ||
| 273 | if ($name ne "") | 292 | if ($name ne "") |
| 274 | { | 293 | { |
| 275 | $name =~ tr/a-z/A-Z/; | 294 | $name =~ tr/a-z/A-Z/; |
| @@ -277,17 +296,37 @@ sub do_lib_rule | |||
| 277 | } | 296 | } |
| 278 | 297 | ||
| 279 | # $target="\$(LIB_D)$o$target"; | 298 | # $target="\$(LIB_D)$o$target"; |
| 280 | $ret.="$target: $objs\n"; | 299 | # $ret.="$target: $objs\n"; |
| 281 | if (!$shlib) | 300 | if (!$shlib) |
| 282 | { | 301 | { |
| 283 | # $ret.="\t\$(RM) \$(O_$Name)\n"; | 302 | # $ret.="\t\$(RM) \$(O_$Name)\n"; |
| 303 | $ret.="$target: $objs\n"; | ||
| 284 | $ret.="\t\$(MKLIB) $lfile$target @<<\n $objs\n<<\n"; | 304 | $ret.="\t\$(MKLIB) $lfile$target @<<\n $objs\n<<\n"; |
| 285 | } | 305 | } |
| 286 | else | 306 | else |
| 287 | { | 307 | { |
| 288 | local($ex)=($target =~ /O_CRYPTO/)?'':' $(L_CRYPTO)'; | 308 | local($ex)=($target =~ /O_CRYPTO/)?'':' $(L_CRYPTO)'; |
| 289 | $ex.=" $zlib_lib" if $zlib_opt == 1 && $target =~ /O_CRYPTO/; | 309 | $ex.=" $zlib_lib" if $zlib_opt == 1 && $target =~ /O_CRYPTO/; |
| 290 | $ret.="\t\$(LINK) \$(MLFLAGS) $efile$target $name @<<\n \$(SHLIB_EX_OBJ) $objs $ex \$(EX_LIBS)\n<<\n"; | 310 | |
| 311 | if ($fips && $target =~ /O_CRYPTO/) | ||
| 312 | { | ||
| 313 | $ret.="$target: $objs \$(PREMAIN_DSO_EXE)"; | ||
| 314 | $ret.="\n\tSET FIPS_LINK=\$(LINK)\n"; | ||
| 315 | $ret.="\tSET FIPS_CC=\$(CC)\n"; | ||
| 316 | $ret.="\tSET FIPS_CC_ARGS=/Fo\$(OBJ_D)${o}fips_premain.obj \$(SHLIB_CFLAGS) -c\n"; | ||
| 317 | $ret.="\tSET PREMAIN_DSO_EXE=\$(PREMAIN_DSO_EXE)\n"; | ||
| 318 | $ret.="\tSET FIPS_SHA1_EXE=\$(FIPS_SHA1_EXE)\n"; | ||
| 319 | $ret.="\tSET FIPS_TARGET=$target\n"; | ||
| 320 | $ret.="\tSET FIPSLIB_D=\$(FIPSLIB_D)\n"; | ||
| 321 | $ret.="\t\$(FIPSLINK) \$(MLFLAGS) /map $base_arg $efile$target "; | ||
| 322 | $ret.="$name @<<\n \$(SHLIB_EX_OBJ) $objs \$(EX_LIBS) "; | ||
| 323 | $ret.="\$(OBJ_D)${o}fips_premain.obj $ex\n<<\n"; | ||
| 324 | } | ||
| 325 | else | ||
| 326 | { | ||
| 327 | $ret.="$target: $objs"; | ||
| 328 | $ret.="\n\t\$(LINK) \$(MLFLAGS) $efile$target $name @<<\n \$(SHLIB_EX_OBJ) $objs $ex \$(EX_LIBS)\n<<\n"; | ||
| 329 | } | ||
| 291 | $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;2\n\n"; | 330 | $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;2\n\n"; |
| 292 | } | 331 | } |
| 293 | $ret.="\n"; | 332 | $ret.="\n"; |
| @@ -296,15 +335,35 @@ sub do_lib_rule | |||
| 296 | 335 | ||
| 297 | sub do_link_rule | 336 | sub do_link_rule |
| 298 | { | 337 | { |
| 299 | local($target,$files,$dep_libs,$libs)=@_; | 338 | my($target,$files,$dep_libs,$libs,$standalone)=@_; |
| 300 | local($ret,$_); | 339 | local($ret,$_); |
| 301 | |||
| 302 | $file =~ s/\//$o/g if $o ne '/'; | 340 | $file =~ s/\//$o/g if $o ne '/'; |
| 303 | $n=&bname($targer); | 341 | $n=&bname($targer); |
| 304 | $ret.="$target: $files $dep_libs\n"; | 342 | $ret.="$target: $files $dep_libs\n"; |
| 305 | $ret.="\t\$(LINK) \$(LFLAGS) $efile$target @<<\n"; | 343 | if ($standalone == 1) |
| 306 | $ret.=" \$(APP_EX_OBJ) $files $libs\n<<\n"; | 344 | { |
| 307 | $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;1\n\n"; | 345 | $ret.=" \$(LINK) \$(LFLAGS) $efile$target @<<\n\t"; |
| 346 | $ret.= "\$(EX_LIBS) " if ($files =~ /O_FIPSCANISTER/ && !$fipscanisterbuild); | ||
| 347 | $ret.="$files $libs\n<<\n"; | ||
| 348 | } | ||
| 349 | elsif ($standalone == 2) | ||
| 350 | { | ||
| 351 | $ret.="\tSET FIPS_LINK=\$(LINK)\n"; | ||
| 352 | $ret.="\tSET FIPS_CC=\$(CC)\n"; | ||
| 353 | $ret.="\tSET FIPS_CC_ARGS=/Fo\$(OBJ_D)${o}fips_premain.obj \$(SHLIB_CFLAGS) -c\n"; | ||
| 354 | $ret.="\tSET PREMAIN_DSO_EXE=\n"; | ||
| 355 | $ret.="\tSET FIPS_TARGET=$target\n"; | ||
| 356 | $ret.="\tSET FIPS_SHA1_EXE=\$(FIPS_SHA1_EXE)\n"; | ||
| 357 | $ret.="\tSET FIPSLIB_D=\$(FIPSLIB_D)\n"; | ||
| 358 | $ret.="\t\$(FIPSLINK) \$(LFLAGS) /map $efile$target @<<\n"; | ||
| 359 | $ret.="\t\$(APP_EX_OBJ) $files \$(OBJ_D)${o}fips_premain.obj $libs\n<<\n"; | ||
| 360 | } | ||
| 361 | else | ||
| 362 | { | ||
| 363 | $ret.="\t\$(LINK) \$(LFLAGS) $efile$target @<<\n"; | ||
| 364 | $ret.="\t\$(APP_EX_OBJ) $files $libs\n<<\n"; | ||
| 365 | } | ||
| 366 | $ret.="\tIF EXIST \$@.manifest mt -nologo -manifest \$@.manifest -outputresource:\$@;1\n\n"; | ||
| 308 | return($ret); | 367 | return($ret); |
| 309 | } | 368 | } |
| 310 | 369 | ||
