diff --git a/expat/Changes b/expat/Changes index 9540ec1a..060bcd2f 100644 --- a/expat/Changes +++ b/expat/Changes @@ -41,6 +41,7 @@ Release x.x.x xxx xxx xx xxxx --without-getrandom --with-sys-getrandom --without-sys-getrandom + #312 #343 Autotools: Fix linking issues with "./configure LD=clang" Autotools: Fix "make run-xmltest" for out-of-source builds #329 #336 CMake: Pull all options from Expat <=2.2.7 into namespace prefix EXPAT_ with the exception of DOCBOOK_TO_MAN: diff --git a/expat/configure.ac b/expat/configure.ac index b429281d..20fe69e1 100644 --- a/expat/configure.ac +++ b/expat/configure.ac @@ -94,6 +94,11 @@ AC_LANG_POP([C++]) AS_IF([test "$GCC" = yes], [AX_APPEND_LINK_FLAGS([-fno-strict-aliasing],[LDFLAGS])]) +dnl patching ${archive_cmds} to affect generation of file "libtool" to fix linking with clang (issue #312) +AS_CASE(["$LD"],[*clang*], + [AS_CASE(["${host_os}"], + [*linux*],[archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'])]) + EXPATCFG_COMPILER_SUPPORTS_VISIBILITY([ AX_APPEND_FLAG([-fvisibility=hidden], [CFLAGS]) AX_APPEND_FLAG([-DXML_ENABLE_VISIBILITY=1], [CFLAGS])])