Ignore zero length constructed segments.
[openssl.git] / util / mk1mf.pl
index 25a3801123c6869a588108da9e3622fa2ed10253..a0ec39e5f06a35b29cd16822425f9cfc9bce20de 100755 (executable)
@@ -292,7 +292,7 @@ for (;;)
                { $cflags .= " $val";}
 
        if ($key eq "ZLIB_INCLUDE")
-               { $cflags .= " -I$val";}
+               { $cflags .= " $val" if $val ne "";}
 
        if ($key eq "LIBZLIB")
                { $zlib_lib = "$val" if $val ne "";}
@@ -339,8 +339,8 @@ EOF
        if ($no_static_engine)
                {
                $extra_install .= <<"EOF"
-       \$(MKDIR) \$(INSTALLTOP)${o}engines
-       \$(CP) \$(E_SHLIB) \$(INSTALLTOP)${o}engines
+       \$(MKDIR) \$(INSTALLTOP)${o}lib${o}engines
+       \$(CP) \$(E_SHLIB) \$(INSTALLTOP)${o}lib${o}engines
 EOF
                }
        }
@@ -414,6 +414,10 @@ SHA1_ASM_OBJ=$sha1_asm_obj
 SHA1_ASM_SRC=$sha1_asm_src
 RMD160_ASM_OBJ=$rmd160_asm_obj
 RMD160_ASM_SRC=$rmd160_asm_src
+WHIRLPOOL_ASM_OBJ=$whirlpool_asm_obj
+WHIRLPOOL_ASM_SRC=$whirlpool_asm_src
+CPUID_ASM_OBJ=$cpuid_asm_obj
+CPUID_ASM_SRC=$cpuid_asm_src
 
 # The output directory for everything intersting
 OUT_D=$out_dir
@@ -657,6 +661,16 @@ foreach (values %lib_nam)
                $lib_obj =~ s/\s(\S*\/rmd_dgst\S*)/ $1 \$(RMD160_ASM_OBJ)/;
                $rules.=&do_asm_rule($rmd160_asm_obj,$rmd160_asm_src);
                }
+       if (($whirlpool_asm_obj ne "") && ($_ eq "CRYPTO"))
+               {
+               $lib_obj =~ s/\s(\S*\/wp_dgst\S*)/ $1 \$(WHIRLPOOL_ASM_OBJ)/;
+               $rules.=&do_asm_rule($whirlpool_asm_obj,$whirlpool_asm_src);
+               }
+       if (($cpuid_asm_obj ne "") && ($_ eq "CRYPTO"))
+               {
+               $lib_obj =~ s/\s(\S*\/cversion\S*)/ $1 \$(CPUID_ASM_OBJ)/;
+               $rules.=&do_asm_rule($cpuid_asm_obj,$cpuid_asm_src);
+               }
        $defs.=&do_defs(${_}."OBJ",$lib_obj,"\$(OBJ_D)",$obj);
        $lib=($slib)?" \$(SHLIB_CFLAGS)".$shlib_ex_cflags{$_}:" \$(LIB_CFLAGS)";
        $rules.=&do_compile_rule("\$(OBJ_D)",$lib_obj{$_},$lib);
@@ -840,6 +854,8 @@ sub do_defs
                elsif ($_ =~ /MD5_ASM/) { $t="$_ "; }
                elsif ($_ =~ /SHA1_ASM/){ $t="$_ "; }
                elsif ($_ =~ /RMD160_ASM/){ $t="$_ "; }
+               elsif ($_ =~ /WHIRLPOOL_ASM/){ $t="$_ "; }
+               elsif ($_ =~ /CPUID_ASM/){ $t="$_ "; }
                else    { $t="$location${o}$_$pf "; }
 
                $Vars{$var}.="$t ";