summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
authorDavid 'Digit' Turner <digit@google.com>2013-10-22 14:26:53 +0200
committerWerner Koch <wk@gnupg.org>2013-12-09 19:55:37 +0100
commitbf0d67dbfa4161e529781d6dfbfcce7126c3bf22 (patch)
tree22b20e15c184870ba460a948b90c7e46625deff1 /m4
parentb70a430d020e8541f66cca38c00355bab7bb1017 (diff)
downloadlibgpg-error-bf0d67dbfa4161e529781d6dfbfcce7126c3bf22.tar.gz
Update libtool to support Android.
* m4/libtool.m4: Add "linux*android*" case. Taken from the libtool repository. -- The patch, which cleanly applies, is commit 8eeeb00daef8c4f720c9b79a0cdb89225d9909b6 Author: David 'Digit' Turner <digit@google.com> Date: Tue Oct 8 14:37:32 2013 -0700 This patch adds proper Android support to libtool. The main issues are the following: - Versioned libraries are not supported by the platform and its build/packaging tools. - The dynamic linker is not GNU ld, there is no support for DT_RUNPATH. - Similarly, there is no ldconfig. Signed-off-by: Werner Koch <wk@gnupg.org>
Diffstat (limited to 'm4')
-rw-r--r--m4/libtool.m420
1 files changed, 20 insertions, 0 deletions
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index ff871a0..259d597 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -2638,6 +2638,26 @@ linux*oldld* | linux*aout* | linux*coff*)
dynamic_linker=no
;;
+linux*android*)
+ version_type=none # Android doesn't support versioned libraries.
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$shared_ext'
+ soname_spec='$libname$release$shared_ext'
+ finish_cmds=
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ hardcode_into_libs=yes
+
+ dynamic_linker='Android linker'
+ # Don't embed -rpath directories since the linker doesn't support them.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ ;;
+
# This must be glibc/ELF.
linux* | k*bsd*-gnu | kopensolaris*-gnu)
version_type=linux # correct to gnu/linux during the next big refactor