diff --git a/Rakefile b/Rakefile index f471ad24d..dfed33108 100644 --- a/Rakefile +++ b/Rakefile @@ -138,6 +138,7 @@ def setup_globals cxxflags += " #{c(:QT_CFLAGS)} #{c(:BOOST_CPPFLAGS)} #{c(:USER_CXXFLAGS)}" ldflags = "" + ldflags += " -fuse-ld=lld" if c?(:USE_CLANG) && !c(:LLVM_LLD).empty? ldflags += " -Llib/libebml/src -Llib/libmatroska/src" if c?(:EBML_MATROSKA_INTERNAL) ldflags += " #{c(:EXTRA_LDFLAGS)} #{c(:PROFILING_LIBS)} #{c(:USER_LDFLAGS)} #{c(:LDFLAGS_RPATHS)} #{c(:BOOST_LDFLAGS)}" ldflags += " -Wl,--dynamicbase,--nxcompat" if $building_for[:windows] diff --git a/ac/clang.m4 b/ac/clang.m4 index d096f4a3c..8765db4e1 100644 --- a/ac/clang.m4 +++ b/ac/clang.m4 @@ -6,6 +6,11 @@ AC_DEFUN([AX_COMPILER_IS_CLANG],[ ac_cv_compiler_is_clang=no fi ]) + + if test "x$ac_cv_compiler_is_clang" = xyes; then + AC_PATH_PROG(LLVM_LLD, "lld") + fi + AC_SUBST(LLVM_LLD) ]) AX_COMPILER_IS_CLANG diff --git a/build-config.in b/build-config.in index 26963657c..7a9e79553 100644 --- a/build-config.in +++ b/build-config.in @@ -93,6 +93,7 @@ LDFLAGS_RPATHS = @LDFLAGS_RPATHS@ FLAC_LIBS = @FLAC_LIBS@ ICONV_LIBS = @ICONV_LIBS@ LIBINTL_LIBS = @LIBINTL_LIBS@ +LLVM_LLD = @LLVM_LLD@ MAGIC_LIBS = @MAGIC_LIBS@ MINGW_GUIAPP = @MINGW_GUIAPP@ MINGW_LIBS = @MINGW_LIBS@