Configure: add mechanism to specify uplink target architecture
[openssl.git] / Configurations / 10-main.conf
index 27e587fb357f1f8c481e5d5eecd7291e8a8b1354..6a8d839713e353a5309ef9e8e3b41754e2551417 100644 (file)
@@ -1097,7 +1097,7 @@ my %targets = (
         thread_scheme    => "pthreads",
         dso_scheme       => "dlfcn",
         shared_target    => "aix",
-        module_ldflags   => "-Wl,-G,-bsymbolic,-bexpall",
+        module_ldflags   => "-Wl,-G,-bsymbolic,-bnoentry",
         shared_ldflag    => "-Wl,-G,-bsymbolic,-bnoentry",
         shared_defflag   => "-Wl,-bE:",
         perl_platform    => 'AIX',
@@ -1273,19 +1273,20 @@ my %targets = (
     },
     "VC-WIN64I" => {
         inherit_from     => [ "VC-WIN64-common", asm("ia64_asm"),
-                              sub { $disabled{shared} ? () : "ia64_uplink" } ],
+                              sub { $disabled{uplink} ? () : "ia64_uplink" } ],
         AS               => "ias",
         ASFLAGS          => "-d debug",
         asoutflag        => "-o ",
         sys_id           => "WIN64I",
         bn_asm_src       => sub { return undef unless @_;
                                   my $r=join(" ",@_); $r=~s|bn-ia64.s|bn_asm.c|; $r; },
+        uplink_arch      => 'ia64',
         perlasm_scheme   => "ias",
         multilib         => "-ia64",
     },
     "VC-WIN64A" => {
         inherit_from     => [ "VC-WIN64-common", asm("x86_64_asm"),
-                              sub { $disabled{shared} ? () : "x86_64_uplink" } ],
+                              sub { $disabled{uplink} ? () : "x86_64_uplink" } ],
         AS               => sub { vc_win64a_info()->{AS} },
         ASFLAGS          => sub { vc_win64a_info()->{ASFLAGS} },
         asoutflag        => sub { vc_win64a_info()->{asoutflag} },
@@ -1293,12 +1294,13 @@ my %targets = (
         sys_id           => "WIN64A",
         bn_asm_src       => sub { return undef unless @_;
                                   my $r=join(" ",@_); $r=~s|asm/x86_64-gcc|bn_asm|; $r; },
+        uplink_arch      => 'x86_64',
         perlasm_scheme   => "auto",
         multilib         => "-x64",
     },
     "VC-WIN32" => {
         inherit_from     => [ "VC-noCE-common", asm("x86_asm"),
-                              sub { $disabled{shared} ? () : "uplink_common" } ],
+                              sub { $disabled{uplink} ? () : "uplink_common" } ],
         CFLAGS           => add("/WX"),
         AS               => sub { vc_win32_info()->{AS} },
         ASFLAGS          => sub { vc_win32_info()->{ASFLAGS} },
@@ -1306,6 +1308,7 @@ my %targets = (
         asflags          => sub { vc_win32_info()->{asflags} },
         sys_id           => "WIN32",
         bn_ops           => add("BN_LLONG"),
+        uplink_arch      => 'x86',
         perlasm_scheme   => sub { vc_win32_info()->{perlasm_scheme} },
         # "WOW" stands for "Windows on Windows", and "VC-WOW" engages
         # some installation path heuristics in windows-makefile.tmpl...
@@ -1382,20 +1385,21 @@ my %targets = (
     },
     "mingw" => {
         inherit_from     => [ "mingw-common", asm("x86_asm"),
-                              sub { $disabled{shared} ? () : "x86_uplink" } ],
+                              sub { $disabled{uplink} ? () : "x86_uplink" } ],
         CFLAGS           => add(picker(release => "-fomit-frame-pointer")),
         cflags           => "-m32",
         sys_id           => "MINGW32",
         bn_ops           => add("BN_LLONG"),
+        uplink_arch      => 'x86',
         perlasm_scheme   => "coff",
         shared_rcflag    => "--target=pe-i386",
         multilib         => "",
     },
     "mingw64" => {
-        # As for OPENSSL_USE_APPLINK. Applink makes it possible to use
+        # As for uplink_arch. Applink makes it possible to use
         # .dll compiled with one compiler with application compiled with
         # another compiler. It's possible to engage Applink support in
-        # mingw64 build, but it's not done, because till mingw64
+        # mingw64 build, but it's not done, because until mingw64
         # supports structured exception handling, one can't seriously
         # consider its binaries for using with non-mingw64 run-time
         # environment. And as mingw64 is always consistent with itself,
@@ -1404,6 +1408,7 @@ my %targets = (
         cflags           => "-m64",
         sys_id           => "MINGW64",
         bn_ops           => add("SIXTY_FOUR_BIT"),
+        uplink_arch      => undef,
         perlasm_scheme   => "mingw64",
         shared_rcflag    => "--target=pe-x86-64",
         multilib         => "64",