VirtualBox

source: vbox/trunk/include/iprt/buildconfig.h

Last change on this file was 98103, checked in by vboxsync, 16 months ago

Copyright year updates by scm.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.6 KB
Line 
1/** @file
2 * IPRT - Build Configuration Information
3 */
4
5/*
6 * Copyright (C) 2009-2023 Oracle and/or its affiliates.
7 *
8 * This file is part of VirtualBox base platform packages, as
9 * available from https://www.virtualbox.org.
10 *
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License
13 * as published by the Free Software Foundation, in version 3 of the
14 * License.
15 *
16 * This program is distributed in the hope that it will be useful, but
17 * WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, see <https://www.gnu.org/licenses>.
23 *
24 * The contents of this file may alternatively be used under the terms
25 * of the Common Development and Distribution License Version 1.0
26 * (CDDL), a copy of it is provided in the "COPYING.CDDL" file included
27 * in the VirtualBox distribution, in which case the provisions of the
28 * CDDL are applicable instead of those of the GPL.
29 *
30 * You may elect to license modified versions of this file under the
31 * terms and conditions of either the GPL or the CDDL or both.
32 *
33 * SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0
34 */
35
36#ifndef IPRT_INCLUDED_buildconfig_h
37#define IPRT_INCLUDED_buildconfig_h
38#ifndef RT_WITHOUT_PRAGMA_ONCE
39# pragma once
40#endif
41
42#include <iprt/cdefs.h>
43#include <iprt/types.h>
44
45RT_C_DECLS_BEGIN
46
47/** @defgroup grp_rt_buildconfig RTBldCfg - Build Configuration Information
48 * @ingroup grp_rt
49 * @{
50 */
51
52/**
53 * Gets the source code management revision of the IPRT build.
54 * @returns Source code management revision number.
55 */
56RTDECL(uint32_t) RTBldCfgRevision(void);
57
58/**
59 * Gets the source code management revision of the IPRT build.
60 * @returns Read only string containing the revision number.
61 */
62RTDECL(const char *) RTBldCfgRevisionStr(void);
63
64/**
65 * Gets the product version string.
66 *
67 * This will be a string on the form "x.y.z[_string]".
68 *
69 * @returns Read only version string.
70 *
71 * @remarks This is a build time configuration thing that the product using IPRT
72 * will set. It is therefore not any IPRT version, but rather the
73 * version of that product.
74 */
75RTDECL(const char *) RTBldCfgVersion(void);
76
77/**
78 * Gets the major product version number.
79 * @returns Major product version number.
80 * @remarks See RTBldCfgVersion.
81 */
82RTDECL(uint32_t) RTBldCfgVersionMajor(void);
83
84/**
85 * Gets the minor product version number.
86 * @returns Minor product version number.
87 * @remarks See RTBldCfgVersion.
88 */
89RTDECL(uint32_t) RTBldCfgVersionMinor(void);
90
91/**
92 * Gets the product build number.
93 * @returns Product build number.
94 * @remarks See RTBldCfgVersion.
95 */
96RTDECL(uint32_t) RTBldCfgVersionBuild(void);
97
98/**
99 * Gets the build target name.
100 *
101 * @returns Read only build target string.
102 */
103RTDECL(const char *) RTBldCfgTarget(void);
104
105/**
106 * Gets the build target architecture name.
107 *
108 * @returns Read only build target architecture string.
109 */
110RTDECL(const char *) RTBldCfgTargetArch(void);
111
112/**
113 * Gets the build target-dot-architecture name.
114 *
115 * @returns Read only build target-dot-architecture string.
116 */
117RTDECL(const char *) RTBldCfgTargetDotArch(void);
118
119/**
120 * Gets the build type name.
121 *
122 * @returns Read only build type string.
123 */
124RTDECL(const char *) RTBldCfgType(void);
125
126/**
127 * Gets the name of the compiler used for building IPRT.
128 *
129 * @returns Read only compiler name.
130 */
131RTDECL(const char *) RTBldCfgCompiler(void);
132
133/** @} */
134
135RT_C_DECLS_END
136
137#endif /* !IPRT_INCLUDED_buildconfig_h */
138
Note: See TracBrowser for help on using the repository browser.

© 2023 Oracle
ContactPrivacy policyTerms of Use