aboutsummaryrefslogtreecommitdiff
path: root/include/clang/Basic/Version.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/clang/Basic/Version.h')
-rw-r--r--include/clang/Basic/Version.h30
1 files changed, 27 insertions, 3 deletions
diff --git a/include/clang/Basic/Version.h b/include/clang/Basic/Version.h
index f0e1aa7db233..120d5a4210d0 100644
--- a/include/clang/Basic/Version.h
+++ b/include/clang/Basic/Version.h
@@ -7,7 +7,8 @@
//
//===----------------------------------------------------------------------===//
//
-// This header defines version macros for Clang.
+// This header defines version macros and version-related utility functions
+// for Clang.
//
//===----------------------------------------------------------------------===//
@@ -17,12 +18,25 @@
/// \brief Clang major version
#define CLANG_VERSION_MAJOR 1
+// FIXME: Updates to this file must also update CMakeLists.txt and VER.
/// \brief Clang minor version
-#define CLANG_VERSION_MINOR 0
+#define CLANG_VERSION_MINOR 1
+
+/// \brief Clang patchlevel version
+// #define CLANG_VERSION_PATCHLEVEL 1
/// \brief Helper macro for CLANG_VERSION_STRING.
#define CLANG_MAKE_VERSION_STRING2(X) #X
+#ifdef CLANG_VERSION_PATCHLEVEL
+/// \brief Helper macro for CLANG_VERSION_STRING.
+#define CLANG_MAKE_VERSION_STRING(X,Y,Z) CLANG_MAKE_VERSION_STRING2(X.Y.Z)
+
+/// \brief A string that describes the Clang version number, e.g.,
+/// "1.0".
+#define CLANG_VERSION_STRING \
+ CLANG_MAKE_VERSION_STRING(CLANG_VERSION_MAJOR,CLANG_VERSION_MINOR,CLANG_VERSION_PATCHLEVEL)
+#else
/// \brief Helper macro for CLANG_VERSION_STRING.
#define CLANG_MAKE_VERSION_STRING(X,Y) CLANG_MAKE_VERSION_STRING2(X.Y)
@@ -30,6 +44,16 @@
/// "1.0".
#define CLANG_VERSION_STRING \
CLANG_MAKE_VERSION_STRING(CLANG_VERSION_MAJOR,CLANG_VERSION_MINOR)
-
+#endif
+
+namespace clang {
+ /// \brief Retrieves the Subversion path that identifies the particular
+ /// Clang branch, tag, or trunk from which this Clang was built.
+ const char *getClangSubversionPath();
+
+ /// \brief Retrieves the Subversion revision number from which this Clang
+ /// was built.
+ unsigned getClangSubversionRevision();
+}
#endif // LLVM_CLANG_BASIC_VERSION_H