Coverage Report

Created: 2022-07-08 09:39

/home/mdboom/Work/builds/cpython/Modules/getbuildinfo.c
Line
Count
Source (jump to first uncovered line)
1
#include "Python.h"
2
3
#ifndef DONT_HAVE_STDIO_H
4
#include <stdio.h>
5
#endif
6
7
#ifndef DATE
8
#ifdef __DATE__
9
#define DATE __DATE__
10
#else
11
#define DATE "xx/xx/xx"
12
#endif
13
#endif
14
15
#ifndef TIME
16
#ifdef __TIME__
17
#define TIME __TIME__
18
#else
19
#define TIME "xx:xx:xx"
20
#endif
21
#endif
22
23
/* XXX Only unix build process has been tested */
24
#ifndef GITVERSION
25
#define GITVERSION ""
26
#endif
27
#ifndef GITTAG
28
#define GITTAG ""
29
#endif
30
#ifndef GITBRANCH
31
#define GITBRANCH ""
32
#endif
33
34
const char *
35
Py_GetBuildInfo(void)
36
{
37
    static char buildinfo[50 + sizeof(GITVERSION) +
38
                          ((sizeof(GITTAG) > sizeof(GITBRANCH)) ?
39
                           sizeof(GITTAG) : sizeof(GITBRANCH))];
40
    const char *revision = _Py_gitversion();
41
    const char *sep = *revision ? ":" : 
""0
;
  Branch (41:23): [True: 278, False: 0]
42
    const char *gitid = _Py_gitidentifier();
43
    if (!(*gitid)) {
  Branch (43:9): [True: 0, False: 278]
44
        gitid = "main";
45
    }
46
    PyOS_snprintf(buildinfo, sizeof(buildinfo),
47
                  "%s%s%s, %.20s, %.9s", gitid, sep, revision,
48
                  DATE, TIME);
49
    return buildinfo;
50
}
51
52
const char *
53
_Py_gitversion(void)
54
{
55
    return GITVERSION;
56
}
57
58
const char *
59
_Py_gitidentifier(void)
60
{
61
    const char *gittag, *gitid;
62
    gittag = GITTAG;
63
    if ((*gittag) && strcmp(gittag, "undefined") != 0)
  Branch (63:9): [True: 556, False: 0]
  Branch (63:22): [True: 556, False: 0]
64
        gitid = gittag;
65
    else
66
        gitid = GITBRANCH;
67
    return gitid;
68
}