diff options
author | Alex Ameen <alex.ameen.tx@gmail.com> | 2022-05-08 21:46:30 -0500 |
---|---|---|
committer | Alex Ameen <alex.ameen.tx@gmail.com> | 2022-05-08 21:46:30 -0500 |
commit | 1d2577357ee704da2d6d7c7da119ad82ba8ca172 (patch) | |
tree | 387f5e800997f780940ec9df581dc0b1809a0117 | |
parent | b9ba1b3f0bfe8fec6d197f7260cb95659354ccbd (diff) | |
download | libtool-1d2577357ee704da2d6d7c7da119ad82ba8ca172.tar.gz |
libtool: permit compiler libs in shlibs
-rw-r--r-- | build-aux/ltmain.in | 9 | ||||
-rw-r--r-- | m4/libtool.m4 | 2 |
2 files changed, 10 insertions, 1 deletions
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in index a5f21a1d..22500a9d 100644 --- a/build-aux/ltmain.in +++ b/build-aux/ltmain.in @@ -5900,6 +5900,15 @@ func_mode_link () lib) # Linking convenience modules into shared libraries is allowed, # but linking other static libraries is non-portable. + case "$deplib" in + # Linking certain compiler provided static libraries, while + # non-portable, is reasonable safe and practically necessary on + # certain platforms. + */libgcc*.$libext | */libclang_rt*.$libext) + deplibs="$deplib $deplibs" + continue + ;; + esac case " $dlpreconveniencelibs " in *" $deplib "*) ;; *) diff --git a/m4/libtool.m4 b/m4/libtool.m4 index 79a2451e..ab5af335 100644 --- a/m4/libtool.m4 +++ b/m4/libtool.m4 @@ -7554,7 +7554,7 @@ if AC_TRY_EVAL(ac_compile); then for p in `eval "$output_verbose_link_cmd"`; do case $prev$p in - -L* | -R* | -l*) + -L* | -R* | -l* | */clang_rt*.a) # Some compilers place space between "-{L,R}" and the path. # Remove the space. if test x-L = "$p" || |