diff --git a/src/plugins/android/androiddevice.cpp b/src/plugins/android/androiddevice.cpp index c3717ed6fdc..23c5716ff21 100644 --- a/src/plugins/android/androiddevice.cpp +++ b/src/plugins/android/androiddevice.cpp @@ -94,6 +94,11 @@ DeviceProcessSignalOperation::Ptr AndroidDevice::signalOperation() const return DeviceProcessSignalOperation::Ptr(new AndroidSignalOperation()); } +Utils::OsType AndroidDevice::osType() const +{ + return Utils::OsTypeOtherUnix; +} + IDevice::Ptr AndroidDevice::clone() const { return IDevice::Ptr(new AndroidDevice(*this)); diff --git a/src/plugins/android/androiddevice.h b/src/plugins/android/androiddevice.h index f050b445373..3a59e297981 100644 --- a/src/plugins/android/androiddevice.h +++ b/src/plugins/android/androiddevice.h @@ -44,6 +44,7 @@ public: void executeAction(Core::Id actionId, QWidget *parent = 0) override; bool canAutoDetectPorts() const override; ProjectExplorer::DeviceProcessSignalOperation::Ptr signalOperation() const override; + Utils::OsType osType() const override; ProjectExplorer::IDevice::Ptr clone() const override; ProjectExplorer::Connection toolControlChannel(const ControlChannelHint &) const override; diff --git a/src/plugins/baremetal/baremetaldevice.cpp b/src/plugins/baremetal/baremetaldevice.cpp index b0e2c20db35..7852011fb5e 100644 --- a/src/plugins/baremetal/baremetaldevice.cpp +++ b/src/plugins/baremetal/baremetaldevice.cpp @@ -176,6 +176,11 @@ void BareMetalDevice::executeAction(Core::Id actionId, QWidget *parent) Q_UNUSED(parent); } +Utils::OsType BareMetalDevice::osType() const +{ + return Utils::OsTypeOther; +} + DeviceProcess *BareMetalDevice::createProcess(QObject *parent) const { return new GdbServerProviderProcess(sharedFromThis(), parent); diff --git a/src/plugins/baremetal/baremetaldevice.h b/src/plugins/baremetal/baremetaldevice.h index a82cdfea0e6..1a2fdbe8c5d 100644 --- a/src/plugins/baremetal/baremetaldevice.h +++ b/src/plugins/baremetal/baremetaldevice.h @@ -50,6 +50,7 @@ public: QList actionIds() const override; QString displayNameForActionId(Core::Id actionId) const override; void executeAction(Core::Id actionId, QWidget *parent) override; + Utils::OsType osType() const override; ProjectExplorer::IDevice::Ptr clone() const override; ProjectExplorer::DeviceProcessSignalOperation::Ptr signalOperation() const override; diff --git a/src/plugins/ios/iosdevice.cpp b/src/plugins/ios/iosdevice.cpp index 4945b4cd0a7..00dd86b64c3 100644 --- a/src/plugins/ios/iosdevice.cpp +++ b/src/plugins/ios/iosdevice.cpp @@ -213,6 +213,11 @@ bool IosDevice::canAutoDetectPorts() const return true; } +Utils::OsType IosDevice::osType() const +{ + return Utils::OsTypeMac; +} + // IosDeviceManager diff --git a/src/plugins/ios/iosdevice.h b/src/plugins/ios/iosdevice.h index e2dd5cafd56..e0b7b4024bd 100644 --- a/src/plugins/ios/iosdevice.h +++ b/src/plugins/ios/iosdevice.h @@ -68,6 +68,7 @@ public: QString osVersion() const; Utils::Port nextPort() const; bool canAutoDetectPorts() const override; + Utils::OsType osType() const override; static QString name(); diff --git a/src/plugins/ios/iossimulator.cpp b/src/plugins/ios/iossimulator.cpp index 3f41bd84c13..681fe27f55d 100644 --- a/src/plugins/ios/iossimulator.cpp +++ b/src/plugins/ios/iossimulator.cpp @@ -154,6 +154,11 @@ bool IosSimulator::canAutoDetectPorts() const return true; } +Utils::OsType IosSimulator::osType() const +{ + return Utils::OsTypeMac; +} + IosSimulator::ConstPtr IosKitInformation::simulator(Kit *kit) { if (!kit) diff --git a/src/plugins/ios/iossimulator.h b/src/plugins/ios/iossimulator.h index b661821a3d0..ecbf2de776b 100644 --- a/src/plugins/ios/iossimulator.h +++ b/src/plugins/ios/iossimulator.h @@ -77,6 +77,7 @@ public: QVariantMap toMap() const override; Utils::Port nextPort() const; bool canAutoDetectPorts() const override; + Utils::OsType osType() const override; ProjectExplorer::IDevice::Ptr clone() const override; protected: diff --git a/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp b/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp index 400548bd12b..3c494afd7d9 100644 --- a/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp +++ b/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp @@ -142,6 +142,11 @@ Connection DesktopDevice::toolControlChannel(const ControlChannelHint &) const return HostName("localhost"); } +Utils::OsType DesktopDevice::osType() const +{ + return Utils::HostOsInfo::hostOs(); +} + IDevice::Ptr DesktopDevice::clone() const { return Ptr(new DesktopDevice(*this)); diff --git a/src/plugins/projectexplorer/devicesupport/desktopdevice.h b/src/plugins/projectexplorer/devicesupport/desktopdevice.h index 752bd20075f..80731edad31 100644 --- a/src/plugins/projectexplorer/devicesupport/desktopdevice.h +++ b/src/plugins/projectexplorer/devicesupport/desktopdevice.h @@ -53,6 +53,7 @@ public: DeviceProcessSignalOperation::Ptr signalOperation() const override; DeviceEnvironmentFetcher::Ptr environmentFetcher() const override; Connection toolControlChannel(const ControlChannelHint &) const override; + Utils::OsType osType() const override; IDevice::Ptr clone() const override; diff --git a/src/plugins/projectexplorer/devicesupport/devicemanager.cpp b/src/plugins/projectexplorer/devicesupport/devicemanager.cpp index 39b17a6444d..2d1e161d2cc 100644 --- a/src/plugins/projectexplorer/devicesupport/devicemanager.cpp +++ b/src/plugins/projectexplorer/devicesupport/devicemanager.cpp @@ -441,6 +441,7 @@ private: { return DeviceProcessSignalOperation::Ptr(); } + Utils::OsType osType() const override { return Utils::HostOsInfo::hostOs(); } }; void ProjectExplorerPlugin::testDeviceManager() diff --git a/src/plugins/projectexplorer/devicesupport/idevice.cpp b/src/plugins/projectexplorer/devicesupport/idevice.cpp index e4cc56c4278..d4f0f87576a 100644 --- a/src/plugins/projectexplorer/devicesupport/idevice.cpp +++ b/src/plugins/projectexplorer/devicesupport/idevice.cpp @@ -278,6 +278,11 @@ DeviceTester *IDevice::createDeviceTester() const return 0; } +Utils::OsType IDevice::osType() const +{ + return Utils::OsTypeOther; +} + DeviceProcess *IDevice::createProcess(QObject * /* parent */) const { QTC_CHECK(false); diff --git a/src/plugins/projectexplorer/devicesupport/idevice.h b/src/plugins/projectexplorer/devicesupport/idevice.h index a93a0298213..2f5270b7ea0 100644 --- a/src/plugins/projectexplorer/devicesupport/idevice.h +++ b/src/plugins/projectexplorer/devicesupport/idevice.h @@ -28,6 +28,7 @@ #include "../projectexplorer_export.h" #include +#include #include #include @@ -160,6 +161,7 @@ public: virtual DeviceProcessList *createProcessListModel(QObject *parent = 0) const; virtual bool hasDeviceTester() const { return false; } virtual DeviceTester *createDeviceTester() const; + virtual Utils::OsType osType() const; virtual bool canCreateProcess() const { return false; } virtual DeviceProcess *createProcess(QObject *parent) const; diff --git a/src/plugins/qnx/qnxdevice.cpp b/src/plugins/qnx/qnxdevice.cpp index 26275bb3b88..994f74a8392 100644 --- a/src/plugins/qnx/qnxdevice.cpp +++ b/src/plugins/qnx/qnxdevice.cpp @@ -122,6 +122,11 @@ QString QnxDevice::displayType() const return tr("QNX"); } +OsType QnxDevice::osType() const +{ + return OsTypeOtherUnix; +} + int QnxDevice::qnxVersion() const { if (m_versionNumber == 0) diff --git a/src/plugins/qnx/qnxdevice.h b/src/plugins/qnx/qnxdevice.h index eac1802a80f..3c5ae0965b2 100644 --- a/src/plugins/qnx/qnxdevice.h +++ b/src/plugins/qnx/qnxdevice.h @@ -56,6 +56,7 @@ public: void executeAction(Core::Id actionId, QWidget *parent) override; QString displayType() const override; + Utils::OsType osType() const override; int qnxVersion() const; diff --git a/src/plugins/remotelinux/linuxdevice.cpp b/src/plugins/remotelinux/linuxdevice.cpp index c3ad42f3b27..1e6fe89993a 100644 --- a/src/plugins/remotelinux/linuxdevice.cpp +++ b/src/plugins/remotelinux/linuxdevice.cpp @@ -203,6 +203,11 @@ void LinuxDevice::executeAction(Core::Id actionId, QWidget *parent) delete d; } +Utils::OsType LinuxDevice::osType() const +{ + return Utils::OsTypeLinux; +} + LinuxDevice::LinuxDevice(const QString &name, Core::Id type, MachineType machineType, Origin origin, Core::Id id) : IDevice(type, origin, machineType, id) diff --git a/src/plugins/remotelinux/linuxdevice.h b/src/plugins/remotelinux/linuxdevice.h index f9469abeb50..5b1a764aef0 100644 --- a/src/plugins/remotelinux/linuxdevice.h +++ b/src/plugins/remotelinux/linuxdevice.h @@ -54,6 +54,7 @@ public: QList actionIds() const; QString displayNameForActionId(Core::Id actionId) const; void executeAction(Core::Id actionId, QWidget *parent); + Utils::OsType osType() const override; ProjectExplorer::IDevice::Ptr clone() const; bool canCreateProcess() const { return true; } diff --git a/src/plugins/winrt/winrtdevice.cpp b/src/plugins/winrt/winrtdevice.cpp index 2f5ef04ae55..f6519bf94ab 100644 --- a/src/plugins/winrt/winrtdevice.cpp +++ b/src/plugins/winrt/winrtdevice.cpp @@ -119,6 +119,11 @@ QVariantMap WinRtDevice::toMap() const return map; } +Utils::OsType WinRtDevice::osType() const +{ + return Utils::OsTypeWindows; +} + IDevice::Ptr WinRtDevice::clone() const { return IDevice::Ptr(new WinRtDevice(*this)); diff --git a/src/plugins/winrt/winrtdevice.h b/src/plugins/winrt/winrtdevice.h index 5915ac73f70..694badf32a8 100644 --- a/src/plugins/winrt/winrtdevice.h +++ b/src/plugins/winrt/winrtdevice.h @@ -45,6 +45,7 @@ public: ProjectExplorer::DeviceProcessSignalOperation::Ptr signalOperation() const override; void fromMap(const QVariantMap &map) override; QVariantMap toMap() const override; + Utils::OsType osType() const override; ProjectExplorer::IDevice::Ptr clone() const override; static QString displayNameForType(Core::Id type);