[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 07/12] Declare enable/disable aix-soname options.
From: |
Michael Haubenwallner |
Subject: |
[PATCH 07/12] Declare enable/disable aix-soname options. |
Date: |
Tue, 2 Oct 2012 17:34:48 +0200 |
Declare filename based shared library versioning on AIX.
* m4/ltoptions.m4: (_LT_ENABLE_AIX_SONAME) New. Provides
--enable-aix-soname commandline option. Declares the
'shared_archive_member_spec' libtool variable.
(_LT_SET_OPTIONS) Add LT_INIT options "aix-soname",
"disable-aix-soname". Default is disabled.
* m4/ltdl.m4: (LT_SHARED_LIB_MEMBER) Define, based on the value of
the shared_archive_member_spec libtool variable.
---
m4/ltdl.m4 | 5 +++++
m4/ltoptions.m4 | 32 ++++++++++++++++++++++++++++++++
2 files changed, 37 insertions(+), 0 deletions(-)
diff --git a/m4/ltdl.m4 b/m4/ltdl.m4
index 28c39a9..c4a3171 100644
--- a/m4/ltdl.m4
+++ b/m4/ltdl.m4
@@ -566,6 +566,11 @@ if test "$libltdl_cv_shrext" != "$libltdl_cv_shlibext";
then
AC_DEFINE_UNQUOTED([LT_SHARED_EXT], ["$libltdl_cv_shrext"],
[Define to the shared library suffix, say, ".dylib".])
fi
+if test -n "$shared_archive_member_spec"; then
+ m4_pattern_allow([LT_SHARED_LIB_MEMBER])dnl
+ AC_DEFINE_UNQUOTED([LT_SHARED_LIB_MEMBER],
["($shared_archive_member_spec.o)"],
+ [Define to the shared archive member specification, say "(shr.o)".])
+fi
])# LT_SYS_MODULE_EXT
# Old name:
diff --git a/m4/ltoptions.m4 b/m4/ltoptions.m4
index 13da361..6f53562 100644
--- a/m4/ltoptions.m4
+++ b/m4/ltoptions.m4
@@ -82,6 +82,8 @@ m4_if([$1],[LT_INIT],[
_LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
_LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
[_LT_ENABLE_FAST_INSTALL])
+ _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname disable-aix-soname],
+ [_LT_ENABLE_AIX_SONAME(no)])
])
])# _LT_SET_OPTIONS
@@ -319,6 +321,36 @@ dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
+# _LT_ENABLE_AIX_SONAME([DEFAULT])
+# ----------------------------------
+# implement the --enable-aix-soname flag, and support the `aix-soname'
+# and `disable-aix-soname' LT_INIT options.
+# DEFAULT is either `yes' or `no'. If omitted, it defaults to `no'.
+m4_define([_LT_ENABLE_AIX_SONAME],
+[m4_define([_LT_ENABLE_AIX_SONAME_DEFAULT], [m4_if($1, yes, yes, no)])dnl
+AC_ARG_ENABLE([aix-soname],
+ [AS_HELP_STRING([--enable-aix-soname],
+ [On AIX, do filename based shared library versioning (using Import Files),
+ for use with runtime linking only.
@<:@default=]_LT_ENABLE_AIX_SONAME_DEFAULT[@:>@.])],
+ [case $enableval in
+ yes) enable_aix_soname=yes ;;
+ no) enable_aix_soname=no ;;
+ *) AC_MSG_ERROR([invalid value for 'aix-soname']) ;;
+ esac],
+ [enable_aix_soname=]_LT_ENABLE_AIX_SONAME_DEFAULT)
+ case $host_cpu-$host_os in
+ powerpc*-aix*) ;;
+ *) enable_aix_soname=no ;;
+ esac
+
+_LT_DECL([], [shared_archive_member_spec], [0],
+ [Shared archive member basename, for filename based shared library
versioning on AIX])dnl
+])# _LT_ENABLE_AIX_SONAME
+
+LT_OPTION_DEFINE([LT_INIT], [aix-soname], [_LT_ENABLE_AIX_SONAME([yes])])
+LT_OPTION_DEFINE([LT_INIT], [disable-aix-soname],
[_LT_ENABLE_AIX_SONAME([no])])
+
+
# _LT_WITH_PIC([MODE])
# --------------------
# implement the --with-pic flag, and support the `pic-only' and `no-pic'
--
1.7.3.4
- [PATCH 00/12] Improve AIX support: libltdl, filename-based versioning., Michael Haubenwallner, 2012/10/02
- [PATCH 01/12] Support loading shared library archive members., Michael Haubenwallner, 2012/10/02
- [PATCH 04/12] Specify shared member in soname_spec on AIX., Michael Haubenwallner, 2012/10/02
- [PATCH 11/12] No cross-library undefined symbols test on AIX., Michael Haubenwallner, 2012/10/02
- [PATCH 06/12] Drop useless symlinks with AIX runtime linking., Michael Haubenwallner, 2012/10/02
- [PATCH 08/12] Implement enable/disable aix-soname options., Michael Haubenwallner, 2012/10/02
- [PATCH 05/12] AIX runtime linking allows undef syms by default., Michael Haubenwallner, 2012/10/02
- [PATCH 03/12] Do not remove shared archive member in mode clean., Michael Haubenwallner, 2012/10/02
- [PATCH 07/12] Declare enable/disable aix-soname options.,
Michael Haubenwallner <=
- [PATCH 10/12] Detect XFAIL based on hardcode configuration., Michael Haubenwallner, 2012/10/02
- [PATCH 02/12] Prepare -dlopen option for shared archive members., Michael Haubenwallner, 2012/10/02
- [PATCH 12/12] Set aix-soname=yes as default., Michael Haubenwallner, 2012/10/02
- [PATCH 09/12] Run versioning checks on aix with 'aix-soname'., Michael Haubenwallner, 2012/10/02
- Re: [PATCH 00/12] Improve AIX support: libltdl, filename-based versioning., Michael Haubenwallner, 2012/10/17