diff options
Diffstat (limited to 'clang/lib/Basic/Version.cpp')
-rw-r--r-- | clang/lib/Basic/Version.cpp | 51 |
1 files changed, 17 insertions, 34 deletions
diff --git a/clang/lib/Basic/Version.cpp b/clang/lib/Basic/Version.cpp index c69d13b2f689b..286107cab9d7b 100644 --- a/clang/lib/Basic/Version.cpp +++ b/clang/lib/Basic/Version.cpp @@ -28,46 +28,19 @@ std::string getClangRepositoryPath() { return CLANG_REPOSITORY_STRING; #else #ifdef CLANG_REPOSITORY - StringRef URL(CLANG_REPOSITORY); + return CLANG_REPOSITORY; #else - StringRef URL(""); + return ""; #endif - - // If the CLANG_REPOSITORY is empty, try to use the SVN keyword. This helps us - // pick up a tag in an SVN export, for example. - StringRef SVNRepository("$URL$"); - if (URL.empty()) { - URL = SVNRepository.slice(SVNRepository.find(':'), - SVNRepository.find("/lib/Basic")); - } - - // Strip off version from a build from an integration branch. - URL = URL.slice(0, URL.find("/src/tools/clang")); - - // Trim path prefix off, assuming path came from standard cfe path. - size_t Start = URL.find("cfe/"); - if (Start != StringRef::npos) - URL = URL.substr(Start + 4); - - return URL; #endif } std::string getLLVMRepositoryPath() { #ifdef LLVM_REPOSITORY - StringRef URL(LLVM_REPOSITORY); + return LLVM_REPOSITORY; #else - StringRef URL(""); + return ""; #endif - - // Trim path prefix off, assuming path came from standard llvm path. - // Leave "llvm/" prefix to distinguish the following llvm revision from the - // clang revision. - size_t Start = URL.find("llvm/"); - if (Start != StringRef::npos) - URL = URL.substr(Start); - - return URL; } std::string getClangRevision() { @@ -124,8 +97,12 @@ std::string getClangToolFullVersion(StringRef ToolName) { #ifdef CLANG_VENDOR OS << CLANG_VENDOR; #endif - OS << ToolName << " version " CLANG_VERSION_STRING " " - << getClangFullRepositoryVersion(); + OS << ToolName << " version " CLANG_VERSION_STRING; + + std::string repo = getClangFullRepositoryVersion(); + if (!repo.empty()) { + OS << " " << repo; + } return OS.str(); } @@ -138,7 +115,13 @@ std::string getClangFullCPPVersion() { #ifdef CLANG_VENDOR OS << CLANG_VENDOR; #endif - OS << "Clang " CLANG_VERSION_STRING " " << getClangFullRepositoryVersion(); + OS << "Clang " CLANG_VERSION_STRING; + + std::string repo = getClangFullRepositoryVersion(); + if (!repo.empty()) { + OS << " " << repo; + } + return OS.str(); } |