Version.cpp revision 198092
1//===- Version.cpp - Clang Version Number -----------------------*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// This file defines several version-related utility functions for Clang. 11// 12//===----------------------------------------------------------------------===// 13#include <cstring> 14#include <cstdlib> 15using namespace std; 16 17namespace clang { 18 19const char *getClangSubversionPath() { 20 static const char *Path = 0; 21 if (Path) 22 return Path; 23 24 static char URL[] = "$URL: http://llvm.org/svn/llvm-project/cfe/trunk/lib/Basic/Version.cpp $"; 25 char *End = strstr(URL, "/lib/Basic"); 26 if (End) 27 *End = 0; 28 29 char *Begin = strstr(URL, "cfe/"); 30 if (Begin) { 31 Path = Begin + 4; 32 return Path; 33 } 34 35 Path = URL; 36 return Path; 37} 38 39 40unsigned getClangSubversionRevision() { 41#ifndef SVN_REVISION 42 // Subversion was not available at build time? 43 return 0; 44#else 45 return strtol(SVN_REVISION, 0, 10); 46#endif 47} 48 49} // end namespace clang 50