Add the configure option 'no-makedepend'
authorRichard Levitte <levitte@openssl.org>
Wed, 9 Mar 2016 00:14:29 +0000 (01:14 +0100)
committerRichard Levitte <levitte@openssl.org>
Wed, 9 Mar 2016 00:57:52 +0000 (01:57 +0100)
If no makedepend program or equaly capable compiler is present,
'makedepend' gets disabled automatically.

Reviewed-by: Rich Salz <rsalz@openssl.org>
Configure

index cfd8be0e6401d83daa226fa2c60f11e5d4bb8950..17f45b0bd0dede733ef72acc86ac983d54dbc460 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -275,6 +275,7 @@ my @disablables = (
     "hw(-.+)?",
     "idea",
     "locking",
+    "makedepend",
     "md2",
     "md4",
     "md5",
@@ -796,6 +797,8 @@ foreach (sort (keys %disabled))
                { }
        elsif (/^dynamic-engine$/)
                { }
+       elsif (/^makedepend$/)
+               { }
        elsif (/^zlib-dynamic$/)
                { }
        elsif (/^sse2$/)
@@ -1094,11 +1097,11 @@ unless ($disabled{asm}) {
 }
 
 my $ecc = $target{cc};
-if ($^O ne "VMS") {
+if ($^O ne "VMS" && !$disabled{makedepend}) {
     # Is the compiler gcc or clang?  $ecc is used below to see if
     # error-checking can be turned on.
     my $ccpcc = "$config{cross_compile_prefix}$target{cc}";
-    $config{makedepprog} = 'makedepend';
+    $config{makedepprog} = which('makedepend');
     open(PIPE, "$ccpcc --version 2>&1 | head -2 |");
     while ( <PIPE> ) {
         $config{makedepprog} = $ccpcc if /clang|gcc/;
@@ -1106,9 +1109,12 @@ if ($^O ne "VMS") {
         $ecc = "gcc" if /gcc/;
     }
     close(PIPE);
+
+    $disabled{makedepend} = "unavailable" unless $config{makedepprog};
 }
 
 
+
 # Deal with bn_ops ###################################################
 
 $config{bn_ll}                 =0;
@@ -2335,10 +2341,12 @@ sub which
        my $path;
        foreach $path (split /:/, $ENV{PATH})
                {
-               if (-f "$path/$name$target{exe_extension}" and -x _)
+               my $fullpath = "$path/$name$target{exe_extension}";
+               if (-f $fullpath and -x $fullpath)
                        {
-                       return "$path/$name$target{exe_extension}" unless ($name eq "perl" and
-                        system("$path/$name$target{exe_extension} -e " . '\'exit($]<5.0);\''));
+                       return $fullpath
+                           unless ($name eq "perl" and
+                                   system("$fullpath -e " . '\'exit($]<5.0);\''));
                        }
                }
        }