FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
chips/src/clientversion.cpp at master · https-github-com-goodman-ops/chips · GitHub
Uh oh!
There was an error while loading.
Please reload this page
.
https-github-com-goodman-ops
/
chips
Public
forked from
chips-blockchain/chips
Notifications
You must be signed in to change notification settings
Fork
0
Star
0
Code
Pull requests
0
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
chips
/
src
/
clientversion.cpp
Copy path
More file actions
More file actions
Latest commit
History
History
History
102 lines (85 loc) · 3.7 KB
Breadcrumbs
chips
/
src
/
clientversion.cpp
Copy path
File metadata and controls
102 lines (85 loc) · 3.7 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
//
Copyright (c) 2012-2017 The Bitcoin Core developers
//
Distributed under the MIT software license, see the accompanying
//
file COPYING or http://www.opensource.org/licenses/mit-license.php.
#
include
<
clientversion.h
>
#
include
<
tinyformat.h
>
/*
*
* Name of client reported in the 'version' message. Report the same name
* for both bitcoind and bitcoin-qt, to make it harder for attackers to
* target servers or GUI users specifically.
*/
const
std::string
CLIENT_NAME
(
"
Satoshi
"
);
/*
*
* Client version number
*/
#
define
CLIENT_VERSION_SUFFIX
"
"
/*
*
* The following part of the code determines the CLIENT_BUILD variable.
* Several mechanisms are used for this:
* * first, if HAVE_BUILD_INFO is defined, include build.h, a file that is
* generated by the build environment, possibly containing the output
* of git-describe in a macro called BUILD_DESC
* * secondly, if this is an exported version of the code, GIT_ARCHIVE will
* be defined (automatically using the export-subst git attribute), and
* GIT_COMMIT will contain the commit id.
* * then, three options exist for determining CLIENT_BUILD:
* * if BUILD_DESC is defined, use that literally (output of git-describe)
* * if not, but GIT_COMMIT is defined, use v[maj].[min].[rev].[build]-g[commit]
* * otherwise, use v[maj].[min].[rev].[build]-unk
* finally CLIENT_VERSION_SUFFIX is added
*/
//
! First, include build.h if requested
#
ifdef
HAVE_BUILD_INFO
#
include
<
obj/build.h
>
#
endif
//
! git will put "#define GIT_ARCHIVE 1" on the next line inside archives. $Format:%n#define GIT_ARCHIVE 1$
#
ifdef
GIT_ARCHIVE
#
define
GIT_COMMIT_ID
"
$Format:%H$
"
#
define
GIT_COMMIT_DATE
"
$Format:%cD$
"
#
endif
#
define
BUILD_DESC_WITH_SUFFIX
(
maj, min, rev, build, suffix
) \
"
v
"
DO_STRINGIZE
(maj)
"
.
"
DO_STRINGIZE
(min)
"
.
"
DO_STRINGIZE
(rev)
"
.
"
DO_STRINGIZE
(build)
"
-
"
DO_STRINGIZE
(suffix)
#
define
BUILD_DESC_FROM_COMMIT
(
maj, min, rev, build, commit
) \
"
v
"
DO_STRINGIZE
(maj)
"
.
"
DO_STRINGIZE
(min)
"
.
"
DO_STRINGIZE
(rev)
"
.
"
DO_STRINGIZE
(build)
"
-g
"
commit
#
define
BUILD_DESC_FROM_UNKNOWN
(
maj, min, rev, build
) \
"
v
"
DO_STRINGIZE
(maj)
"
.
"
DO_STRINGIZE
(min)
"
.
"
DO_STRINGIZE
(rev)
"
.
"
DO_STRINGIZE
(build)
"
-unk
"
#
ifndef
BUILD_DESC
#
ifdef
BUILD_SUFFIX
#
define
BUILD_DESC
BUILD_DESC_WITH_SUFFIX
(
CLIENT_VERSION_MAJOR
,
CLIENT_VERSION_MINOR
,
CLIENT_VERSION_REVISION
,
CLIENT_VERSION_BUILD
,
BUILD_SUFFIX
)
#
elif
defined(GIT_COMMIT_ID)
#
define
BUILD_DESC
BUILD_DESC_FROM_COMMIT
(
CLIENT_VERSION_MAJOR
,
CLIENT_VERSION_MINOR
,
CLIENT_VERSION_REVISION
,
CLIENT_VERSION_BUILD
,
GIT_COMMIT_ID
)
#
else
#
define
BUILD_DESC
BUILD_DESC_FROM_UNKNOWN
(
CLIENT_VERSION_MAJOR
,
CLIENT_VERSION_MINOR
,
CLIENT_VERSION_REVISION
,
CLIENT_VERSION_BUILD
)
#endif
#
endif
const
std::string
CLIENT_BUILD
(
BUILD_DESC
CLIENT_VERSION_SUFFIX
);
static
std::string
FormatVersion
(
int
nVersion)
{
if
(nVersion %
100
==
0
)
return
strprintf
(
"
%d.%d.%d
"
, nVersion /
1000000
, (nVersion /
10000
) %
100
, (nVersion /
100
) %
100
);
else
return
strprintf
(
"
%d.%d.%d.%d
"
, nVersion /
1000000
, (nVersion /
10000
) %
100
, (nVersion /
100
) %
100
, nVersion %
100
);
}
std::string
FormatFullVersion
()
{
return
CLIENT_BUILD
;
}
/*
*
* Format the subversion field according to BIP 14 spec (https://github.com/bitcoin/bips/blob/master/bip-0014.mediawiki)
*/
std::string
FormatSubVersion
(
const
std::string& name,
int
nClientVersion,
const
std::vector<std::string>& comments)
{
std::ostringstream ss;
ss <<
"
/
"
;
ss << name <<
"
:
"
<<
FormatVersion
(nClientVersion);
if
(!comments.
empty
())
{
std::vector<std::string>::const_iterator
it
(comments.
begin
());
ss <<
"
(
"
<< *it;
for
(++it; it != comments.
end
(); ++it)
ss <<
"
;
"
<< *it;
ss <<
"
)
"
;
}
ss <<
"
/
"
;
return
ss.
str
();
}
Back
|
FazBrowse Home
|
New Git URL