Ask for tests in CONTRIBUTING
[openssl.git] / util / mk1mf.pl
index 490df2891daed80b940c36597ba94323d8c33a46..98e44b05ced75b96b0961fb2e7bc77c1f5376d89 100755 (executable)
@@ -9,7 +9,7 @@
 
 use Cwd;
 
-$INSTALLTOP="/usr/local/ssl";
+$INSTALLTOP="/usr/local";
 $OPENSSLDIR="/usr/local/ssl";
 $OPTIONS="";
 $ssl_version="";
@@ -751,9 +751,10 @@ headers: \$(HEADER)
 
 lib: \$(LIBS_DEP) \$(E_SHLIB)
 
-exe: apps testapps
-apps: \$(BIN_D)$o\$(E_EXE)$exep
+exe: apps tools testapps
+apps: \$(BIN_D)$o\$(E_EXE)$exep \$(BIN_D)${o}CA.pl
 testapps: \$(T_EXE)
+tools: \$(BIN_D)${o}c_rehash
 
 install: all
        \$(MKDIR) \"\$(INSTALLTOP)\"
@@ -778,7 +779,7 @@ reallyclean:
 
 EOF
 
-$rules .= &do_rehash_rule("rehash.time", "certs apps");
+$rules .= &do_rehash_rule("rehash.time", "certs/demo apps tools");
 $rules .= &do_test_rule("test", "rehash.time", "run_tests.pl");
 
 my $platform_cpp_symbol = "MK1MF_PLATFORM_$platform";
@@ -807,7 +808,7 @@ if (open(IN,"crypto/buildinf.h"))
        }
 
 open (OUT,">>crypto/buildinf.h") || die "Can't open buildinf.h";
-printf OUT <<EOF;
+printf OUT <<"EOF";
 #ifdef $platform_cpp_symbol
   /* auto-generated/updated by util/mk1mf.pl for crypto/cversion.c */
   #define CFLAGS "compiler: $cc $cflags"
@@ -998,6 +999,9 @@ if ($fips)
 
 $rules.=&do_link_rule("\$(BIN_D)$o\$(E_EXE)$exep","\$(E_OBJ)","\$(LIBS_DEP)","\$(L_LIBS) \$(EX_LIBS)", ($fips && !$shlib) ? 2 : 0);
 
+$rules.=&do_dofile_rule("\$(BIN_D)","c_rehash","tools/c_rehash.in");
+$rules.=&do_dofile_rule("\$(BIN_D)","CA.pl","apps/CA.pl.in");
+
 print $defs;
 
 if ($platform eq "linux-elf") {
@@ -1327,6 +1331,7 @@ sub do_copy_rule
        local($to,$files,$p)=@_;
        local($ret,$_,$n,$pp);
        
+
        $files =~ s/\//$o/g if $o ne '/';
        foreach (split(/\s+/,$files))
                {
@@ -1339,6 +1344,18 @@ sub do_copy_rule
        return($ret);
        }
 
+sub do_dofile_rule
+       {
+       (my $to, my $file, my $tmpl) = @_;
+
+       $file =~ s|/|$o|g if $o ne '/';
+       return <<"EOF";
+$to${o}$file: $tmpl
+       \$(PERL) "-I." "-Mconfigdata" util/dofile.pl "$tmpl" > "$to${o}$file.new"
+       mv "$to${o}$file.new" "$to${o}$file"
+EOF
+       }
+
 # Options picked up from the OPTIONS line in the top level Makefile
 # generated by Configure.