1// Copyright 2017 the V8 project authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef V8_VERSION_STRING_H_
6#define V8_VERSION_STRING_H_
7
8#include "v8-version.h" // NOLINT(build/include)
9
10// This is here rather than v8-version.h to keep that file simple and
11// machine-processable.
12
13#if V8_IS_CANDIDATE_VERSION
14#define V8_CANDIDATE_STRING " (candidate)"
15#else
16#define V8_CANDIDATE_STRING ""
17#endif
18
19#ifndef V8_EMBEDDER_STRING
20#define V8_EMBEDDER_STRING ""
21#endif
22
23#define V8_SX(x) #x
24#define V8_S(x) V8_SX(x)
25
26#if V8_PATCH_LEVEL > 0
27#define V8_VERSION_STRING \
28 V8_S(V8_MAJOR_VERSION) \
29 "." V8_S(V8_MINOR_VERSION) "." V8_S(V8_BUILD_NUMBER) "." V8_S( \
30 V8_PATCH_LEVEL) V8_EMBEDDER_STRING V8_CANDIDATE_STRING
31#else
32#define V8_VERSION_STRING \
33 V8_S(V8_MAJOR_VERSION) \
34 "." V8_S(V8_MINOR_VERSION) "." V8_S(V8_BUILD_NUMBER) \
35 V8_EMBEDDER_STRING V8_CANDIDATE_STRING
36#endif
37
38#endif // V8_VERSION_STRING_H_
39