diff --git a/Makefile.config.in b/Makefile.config.in index 6f91bee9300..ad490712138 100644 --- a/Makefile.config.in +++ b/Makefile.config.in @@ -200,6 +200,9 @@ LLVMGCC_LANGS := @LLVMGCC_LANGS@ # object files. OBJ_ROOT := . +# What to pass as rpath flag to g++ +RPATH := @RPATH@ + # These are options that can either be enabled here, or can be enabled on the # make command line (ie, make ENABLE_PROFILING=1): diff --git a/Makefile.rules b/Makefile.rules index 21403e0be16..1dc329d046f 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -428,7 +428,7 @@ ifdef LOADABLE_MODULE endif ifdef SHARED_LIBRARY - LD.Flags += -Wl,-rpath -Wl,$(LibDir) + LD.Flags += $(RPATH) -Wl,$(LibDir) endif ifdef TOOL_VERBOSE @@ -458,9 +458,9 @@ endif ifneq ($(OS),Darwin) ifdef TOOLNAME ifdef EXAMPLE_TOOL - LD.Flags += -Wl,-rpath -Wl,$(ExmplDir) -export-dynamic + LD.Flags += $(RPATH) -Wl,$(ExmplDir) -export-dynamic else - LD.Flags += -Wl,-rpath -Wl,$(ToolDir) -export-dynamic + LD.Flags += $(RPATH) -Wl,$(ToolDir) -export-dynamic endif endif endif diff --git a/autoconf/configure.ac b/autoconf/configure.ac index 9b852d970ff..e58dc66765a 100644 --- a/autoconf/configure.ac +++ b/autoconf/configure.ac @@ -1016,6 +1016,13 @@ fi dnl Determine if the compiler supports -fvisibility-inlines-hidden. AC_CXX_USE_VISIBILITY_INLINES_HIDDEN +dnl Determine linker rpath flag +case $llvm_cv_os_type in + SunOS) RPATH="-Wl,-R" ;; + *) RPATH="-Wl,-rpath" ;; +esac +AC_SUBST(RPATH) + dnl===-----------------------------------------------------------------------=== dnl=== dnl=== SECTION 10: Specify the output files and generate it