diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
index f7b643e6f21..63f099f1dac 100644
--- a/tools/llvm-config/llvm-config.cpp
+++ b/tools/llvm-config/llvm-config.cpp
@@ -278,8 +278,7 @@ int main(int argc, char **argv) {
       } else if (Arg == "--cxxflags") {
         OS << ActiveIncludeOption << ' ' << LLVM_CXXFLAGS << '\n';
       } else if (Arg == "--ldflags") {
-        OS << "-L" << ActiveLibDir << ' ' << LLVM_LDFLAGS
-           << ' ' << LLVM_SYSTEM_LIBS << '\n';
+        OS << "-L" << ActiveLibDir << ' ' << LLVM_LDFLAGS << '\n';
       } else if (Arg == "--libs") {
         PrintLibs = true;
       } else if (Arg == "--libnames") {
@@ -358,6 +357,13 @@ int main(int argc, char **argv) {
         OS << ActiveLibDir << '/' << Lib;
       }
     }
+
+    // Print system libs in the next line.
+    // Assume LLVMSupport depends on system_libs.
+    // FIXME: LLVMBuild may take care of dependencies to system_libs.
+    if (PrintLibs)
+      OS << '\n' << LLVM_SYSTEM_LIBS;
+
     OS << '\n';
   } else if (!Components.empty()) {
     errs() << "llvm-config: error: components given, but unused\n\n";