1*99a2dd95SBruce Richardson /* SPDX-License-Identifier: BSD-3-Clause
2*99a2dd95SBruce Richardson * Copyright(c) 2021 Intel Corporation
3*99a2dd95SBruce Richardson */
4*99a2dd95SBruce Richardson
5*99a2dd95SBruce Richardson #include <rte_version.h>
6*99a2dd95SBruce Richardson
7*99a2dd95SBruce Richardson const char *
rte_version_prefix(void)8*99a2dd95SBruce Richardson rte_version_prefix(void) { return RTE_VER_PREFIX; }
9*99a2dd95SBruce Richardson
10*99a2dd95SBruce Richardson unsigned int
rte_version_year(void)11*99a2dd95SBruce Richardson rte_version_year(void) { return RTE_VER_YEAR; }
12*99a2dd95SBruce Richardson
13*99a2dd95SBruce Richardson unsigned int
rte_version_month(void)14*99a2dd95SBruce Richardson rte_version_month(void) { return RTE_VER_MONTH; }
15*99a2dd95SBruce Richardson
16*99a2dd95SBruce Richardson unsigned int
rte_version_minor(void)17*99a2dd95SBruce Richardson rte_version_minor(void) { return RTE_VER_MINOR; }
18*99a2dd95SBruce Richardson
19*99a2dd95SBruce Richardson const char *
rte_version_suffix(void)20*99a2dd95SBruce Richardson rte_version_suffix(void) { return RTE_VER_SUFFIX; }
21*99a2dd95SBruce Richardson
22*99a2dd95SBruce Richardson unsigned int
rte_version_release(void)23*99a2dd95SBruce Richardson rte_version_release(void) { return RTE_VER_RELEASE; }
24*99a2dd95SBruce Richardson
25*99a2dd95SBruce Richardson const char *
rte_version(void)26*99a2dd95SBruce Richardson rte_version(void)
27*99a2dd95SBruce Richardson {
28*99a2dd95SBruce Richardson static char version[32];
29*99a2dd95SBruce Richardson if (version[0] != 0)
30*99a2dd95SBruce Richardson return version;
31*99a2dd95SBruce Richardson if (strlen(RTE_VER_SUFFIX) == 0)
32*99a2dd95SBruce Richardson snprintf(version, sizeof(version), "%s %d.%02d.%d",
33*99a2dd95SBruce Richardson RTE_VER_PREFIX,
34*99a2dd95SBruce Richardson RTE_VER_YEAR,
35*99a2dd95SBruce Richardson RTE_VER_MONTH,
36*99a2dd95SBruce Richardson RTE_VER_MINOR);
37*99a2dd95SBruce Richardson else
38*99a2dd95SBruce Richardson snprintf(version, sizeof(version), "%s %d.%02d.%d%s%d",
39*99a2dd95SBruce Richardson RTE_VER_PREFIX,
40*99a2dd95SBruce Richardson RTE_VER_YEAR,
41*99a2dd95SBruce Richardson RTE_VER_MONTH,
42*99a2dd95SBruce Richardson RTE_VER_MINOR,
43*99a2dd95SBruce Richardson RTE_VER_SUFFIX,
44*99a2dd95SBruce Richardson RTE_VER_RELEASE);
45*99a2dd95SBruce Richardson return version;
46*99a2dd95SBruce Richardson }
47