Always build library object files with shared library cflags
[openssl.git] / Configure
index 8fb2969a96d8402be8952bce6c5a1869bc165346..e8786b020a1ae2ea0d1b258d4e4db55e0447e875 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -406,7 +406,8 @@ while ((my $first, my $second) = (shift @list, shift @list)) {
 
 my @generated_headers = (
     "include/openssl/opensslconf.h",
-    "crypto/include/internal/bn_conf.h"
+    "crypto/include/internal/bn_conf.h",
+    "crypto/include/internal/dso_conf.h"
     );
 
 my @generated_by_make_headers = (
@@ -809,10 +810,18 @@ my %target = ( %{$table{$base_target}}, resolve_config($target) );
 &usage if (!%target || $target{template});
 
 $target{exe_extension}="";
-$target{exe_extension}=".exe" if ($config{target} eq "Cygwin" || $config{target} eq "DJGPP" || $config{target} =~ /^mingw/);
+$target{exe_extension}=".exe" if ($config{target} eq "DJGPP"
+                                  || $config{target} =~ /^(?:Cygwin|mingw)/);
 $target{exe_extension}=".nlm" if ($config{target} =~ /netware/);
 $target{exe_extension}=".pm"  if ($config{target} =~ /vos/);
 
+($target{shared_extension_simple}=$target{shared_extension})
+    =~ s|\.\$\(SHLIB_MAJOR\)\.\$\(SHLIB_MINOR\)||;
+$target{dso_extension}=$target{shared_extension_simple};
+($target{shared_import_extension}=$target{shared_extension_simple}.".a")
+    if ($config{target} =~ /^(?:Cygwin|mingw)/);
+
+
 $default_ranlib        = which("ranlib") || "true";
 $config{perl}  = $ENV{'PERL'} || which("perl5") || which("perl") || "perl";
 my $make       = $ENV{'MAKE'} || "make";
@@ -974,14 +983,6 @@ if ($target{shared_target} eq "")
        $no_shared_warn = 1 if !$config{no_shared} && !$config{fips};
        $config{no_shared} = 1;
        }
-if (!$config{no_shared})
-       {
-       if ($target{shared_cflag} ne "")
-               {
-               push @{$config{defines}}, "OPENSSL_PIC";
-               $config{cflags} = "$target{shared_cflag} $config{cflags}";
-               }
-       }
 
 if ($builder ne "mk1mf")
        {
@@ -2167,6 +2168,9 @@ sub print_table_entry
        "shared_ldflag",
        "shared_rcflag",
        "shared_extension",
+       "shared_extension_simple",
+       "shared_import_extension",
+       "dso_extension",
        "obj_extension",
        "exe_extension",
        "ranlib",