summaryrefslogtreecommitdiffstats
path: root/Configurations
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2016-09-03 22:03:55 +0200
committerAndy Polyakov <appro@openssl.org>2016-09-08 09:11:29 +0200
commitf780eaad5be140cf192191b8d79dc3671443e0b2 (patch)
tree5e5d5f68635b2c2aa3d77a6a8da6436bf68cf868 /Configurations
parentabcbf7ed7ea249609d225e43e1bce3af1fa1028c (diff)
Configurations/10-main.cf: AIX "facelift".
Improve interchangeability of aix*-gcc targets by linking shared libraries with -static-libgcc, and address linking problems with vendor compiler. Reviewed-by: Richard Levitte <levitte@openssl.org>
Diffstat (limited to 'Configurations')
-rw-r--r--Configurations/10-main.conf14
1 files changed, 9 insertions, 5 deletions
diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf
index f32ccbb2c8..463365deb0 100644
--- a/Configurations/10-main.conf
+++ b/Configurations/10-main.conf
@@ -1159,6 +1159,11 @@ sub vms_info {
},
#### IBM's AIX.
+ # Below targets assume AIX >=5. Caveat lector. If you are accustomed
+ # to control compilation "bitness" by setting $OBJECT_MODE environment
+ # variable, then you should know that in OpenSSL case it's considered
+ # only in ./config. Once configured, build procedure remains "deaf" to
+ # current value of $OBJECT_MODE.
"aix-gcc" => {
inherit_from => [ "BASE_unix", asm("ppc32_asm") ],
cc => "gcc",
@@ -1172,7 +1177,7 @@ sub vms_info {
perlasm_scheme => "aix32",
dso_scheme => "dlfcn",
shared_target => "aix-shared",
- shared_ldflag => "-shared -Wl,-G",
+ shared_ldflag => "-shared -static-libgcc -Wl,-G",
shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
arflags => "-X32",
},
@@ -1189,13 +1194,10 @@ sub vms_info {
perlasm_scheme => "aix64",
dso_scheme => "dlfcn",
shared_target => "aix-shared",
- shared_ldflag => "-maix64 -shared -Wl,-G",
+ shared_ldflag => "-maix64 -shared -static-libgcc -Wl,-G",
shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
arflags => "-X64",
},
- # Below targets assume AIX 5. Idea is to effectively disregard
- # $OBJECT_MODE at build time. $OBJECT_MODE is respected at
- # ./config stage!
"aix-cc" => {
inherit_from => [ "BASE_unix", asm("ppc32_asm") ],
cc => "cc",
@@ -1206,6 +1208,7 @@ sub vms_info {
sys_id => "AIX",
bn_ops => "BN_LLONG RC4_CHAR",
thread_scheme => "pthreads",
+ ex_libs => threads("-lpthreads"),
perlasm_scheme => "aix32",
dso_scheme => "dlfcn",
shared_target => "aix-shared",
@@ -1223,6 +1226,7 @@ sub vms_info {
sys_id => "AIX",
bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR",
thread_scheme => "pthreads",
+ ex_libs => threads("-lpthreads"),
perlasm_scheme => "aix64",
dso_scheme => "dlfcn",
shared_target => "aix-shared",