blob: 5aa4025cbe6b71d295c9ddec3009437981caa4f5 (
plain)
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
|
// Copyright (C) 2023 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
#include "appinfo.h"
Q_GLOBAL_STATIC(Utils::AppInfo, sAppInfo)
namespace Utils {
const AppInfo &appInfo()
{
return *sAppInfo;
}
void Internal::setAppInfo(const AppInfo &info)
{
*sAppInfo = info;
}
QString compilerString()
{
#if defined(Q_CC_CLANG) // must be before GNU, because clang claims to be GNU too
QString platformSpecific;
#if defined(__apple_build_version__) // Apple clang has other version numbers
platformSpecific = QLatin1String(" (Apple)");
#elif defined(Q_CC_MSVC)
platformSpecific = QLatin1String(" (clang-cl)");
#endif
return QLatin1String("Clang ") + QString::number(__clang_major__) + QLatin1Char('.')
+ QString::number(__clang_minor__) + platformSpecific;
#elif defined(Q_CC_GNU)
return QLatin1String("GCC ") + QLatin1String(__VERSION__);
#elif defined(Q_CC_MSVC)
if (_MSC_VER > 1999)
return QLatin1String("MSVC <unknown>");
if (_MSC_VER >= 1930)
return QLatin1String("MSVC 2022");
if (_MSC_VER >= 1920)
return QLatin1String("MSVC 2019");
if (_MSC_VER >= 1910)
return QLatin1String("MSVC 2017");
if (_MSC_VER >= 1900)
return QLatin1String("MSVC 2015");
#endif
return QLatin1String("<unknown compiler>");
}
} // namespace Utils
|