OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 18 matching lines...) Expand all Loading... |
29 | 29 |
30 #include "version.h" | 30 #include "version.h" |
31 | 31 |
32 // These macros define the version number for the current version. | 32 // These macros define the version number for the current version. |
33 // NOTE these macros are used by the SCons build script so their names | 33 // NOTE these macros are used by the SCons build script so their names |
34 // cannot be changed without changing the SCons build script. | 34 // cannot be changed without changing the SCons build script. |
35 #define MAJOR_VERSION 3 | 35 #define MAJOR_VERSION 3 |
36 #define MINOR_VERSION 2 | 36 #define MINOR_VERSION 2 |
37 #define BUILD_NUMBER 4 | 37 #define BUILD_NUMBER 4 |
38 #define PATCH_LEVEL 0 | 38 #define PATCH_LEVEL 0 |
39 #define CANDIDATE_VERSION true | 39 // Use 1 for candidates and 0 otherwise. |
| 40 // (Boolean macro values are not supported by all preprocessors.) |
| 41 #define IS_CANDIDATE_VERSION 0 |
40 | 42 |
41 // Define SONAME to have the SCons build the put a specific SONAME into the | 43 // Define SONAME to have the SCons build the put a specific SONAME into the |
42 // shared library instead the generic SONAME generated from the V8 version | 44 // shared library instead the generic SONAME generated from the V8 version |
43 // number. This define is mainly used by the SCons build script. | 45 // number. This define is mainly used by the SCons build script. |
44 #define SONAME "" | 46 #define SONAME "" |
45 | 47 |
| 48 #if IS_CANDIDATE_VERSION |
| 49 #define CANDIDATE_STRING " (candidate)" |
| 50 #else |
| 51 #define CANDIDATE_STRING "" |
| 52 #endif |
| 53 |
| 54 #define SX(x) #x |
| 55 #define S(x) SX(x) |
| 56 |
| 57 #if PATCH_LEVEL > 0 |
| 58 #define VERSION_STRING \ |
| 59 S(MAJOR_VERSION) "." S(MINOR_VERSION) "." S(BUILD_NUMBER) "." \ |
| 60 S(PATCH_LEVEL) CANDIDATE_STRING |
| 61 #else |
| 62 #define VERSION_STRING \ |
| 63 S(MAJOR_VERSION) "." S(MINOR_VERSION) "." S(BUILD_NUMBER) \ |
| 64 CANDIDATE_STRING |
| 65 #endif |
| 66 |
46 namespace v8 { | 67 namespace v8 { |
47 namespace internal { | 68 namespace internal { |
48 | 69 |
49 int Version::major_ = MAJOR_VERSION; | 70 int Version::major_ = MAJOR_VERSION; |
50 int Version::minor_ = MINOR_VERSION; | 71 int Version::minor_ = MINOR_VERSION; |
51 int Version::build_ = BUILD_NUMBER; | 72 int Version::build_ = BUILD_NUMBER; |
52 int Version::patch_ = PATCH_LEVEL; | 73 int Version::patch_ = PATCH_LEVEL; |
53 bool Version::candidate_ = CANDIDATE_VERSION; | 74 bool Version::candidate_ = (IS_CANDIDATE_VERSION != 0); |
54 const char* Version::soname_ = SONAME; | 75 const char* Version::soname_ = SONAME; |
55 | 76 const char* Version::version_string_ = VERSION_STRING; |
56 | 77 |
57 // Calculate the V8 version string. | 78 // Calculate the V8 version string. |
58 void Version::GetString(Vector<char> str) { | 79 void Version::GetString(Vector<char> str) { |
59 const char* candidate = IsCandidate() ? " (candidate)" : ""; | 80 const char* candidate = IsCandidate() ? " (candidate)" : ""; |
60 #ifdef USE_SIMULATOR | 81 #ifdef USE_SIMULATOR |
61 const char* is_simulator = " SIMULATOR"; | 82 const char* is_simulator = " SIMULATOR"; |
62 #else | 83 #else |
63 const char* is_simulator = ""; | 84 const char* is_simulator = ""; |
64 #endif // USE_SIMULATOR | 85 #endif // USE_SIMULATOR |
65 if (GetPatch() > 0) { | 86 if (GetPatch() > 0) { |
(...skipping 20 matching lines...) Expand all Loading... |
86 OS::SNPrintF(str, "libv8-%d.%d.%d%s.so", | 107 OS::SNPrintF(str, "libv8-%d.%d.%d%s.so", |
87 GetMajor(), GetMinor(), GetBuild(), candidate); | 108 GetMajor(), GetMinor(), GetBuild(), candidate); |
88 } | 109 } |
89 } else { | 110 } else { |
90 // Use specific SONAME. | 111 // Use specific SONAME. |
91 OS::SNPrintF(str, "%s", soname_); | 112 OS::SNPrintF(str, "%s", soname_); |
92 } | 113 } |
93 } | 114 } |
94 | 115 |
95 } } // namespace v8::internal | 116 } } // namespace v8::internal |
OLD | NEW |