File indexing completed on 2024-12-15 03:45:03
0001 /* 0002 SPDX-FileCopyrightText: 2017 Volker Krause <vkrause@kde.org> 0003 0004 SPDX-License-Identifier: MIT 0005 */ 0006 0007 #include "compilerinfosource.h" 0008 0009 #include <QVariant> 0010 0011 using namespace KUserFeedback; 0012 0013 CompilerInfoSource::CompilerInfoSource() 0014 : AbstractDataSource(QStringLiteral("compiler"), Provider::BasicSystemInformation) 0015 { 0016 } 0017 0018 QString CompilerInfoSource::description() const 0019 { 0020 return tr("The compiler used to build this application."); 0021 } 0022 0023 #define STRINGIFY(x) #x 0024 #define INT2STR(x) STRINGIFY(x) 0025 0026 QVariant CompilerInfoSource::data() 0027 { 0028 QVariantMap m; 0029 0030 #ifdef Q_CC_GNU 0031 m.insert(QStringLiteral("type"), QStringLiteral("GCC")); 0032 m.insert(QStringLiteral("version"), QString::fromLatin1( "" INT2STR(__GNUC__) "." INT2STR(__GNUC_MINOR__))); 0033 #endif 0034 0035 #ifdef Q_CC_CLANG 0036 m.insert(QStringLiteral("type"), QStringLiteral("Clang")); 0037 m.insert(QStringLiteral("version"), QString::fromLatin1( "" INT2STR(__clang_major__) "." INT2STR(__clang_minor__))); 0038 #endif 0039 0040 #ifdef Q_CC_MSVC 0041 m.insert(QStringLiteral("type"), QStringLiteral("MSVC")); 0042 m.insert(QStringLiteral("version"), QString::fromLatin1( "" INT2STR(_MSC_VER))); 0043 #endif 0044 0045 if (m.isEmpty()) 0046 m.insert(QStringLiteral("type"), QStringLiteral("unknown")); 0047 0048 return m; 0049 } 0050 0051 QString CompilerInfoSource::name() const 0052 { 0053 return tr("Compiler information"); 0054 } 0055 0056 #undef STRINGIFY 0057 #undef INT2STR