2022-08-19 15:59:36 +02:00
|
|
|
// Copyright (C) 2016 The Qt Company Ltd.
|
2022-12-21 10:12:09 +01:00
|
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
2012-04-24 15:49:09 +02:00
|
|
|
|
2016-02-02 18:26:51 +01:00
|
|
|
#pragma once
|
2012-04-24 15:49:09 +02:00
|
|
|
|
2016-07-13 10:40:05 +02:00
|
|
|
#include "abi.h"
|
2022-04-12 21:01:45 +02:00
|
|
|
#include "devicesupport/idevicefwd.h"
|
2012-09-03 18:31:44 +02:00
|
|
|
#include "kitmanager.h"
|
|
|
|
|
#include "kit.h"
|
2012-04-24 15:49:09 +02:00
|
|
|
|
2014-07-22 21:12:34 +02:00
|
|
|
#include <utils/environment.h>
|
2012-04-24 15:49:09 +02:00
|
|
|
|
|
|
|
|
namespace ProjectExplorer {
|
2023-11-24 15:53:31 +01:00
|
|
|
class Toolchain;
|
2024-07-31 13:03:57 +02:00
|
|
|
class ToolchainBundle;
|
2012-04-24 15:49:09 +02:00
|
|
|
|
2023-08-15 12:45:54 +02:00
|
|
|
// SysRootKitAspect
|
2012-04-24 15:49:09 +02:00
|
|
|
|
2023-08-10 15:47:26 +02:00
|
|
|
class PROJECTEXPLORER_EXPORT SysRootKitAspect
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
static Utils::Id id();
|
|
|
|
|
static Utils::FilePath sysRoot(const Kit *k);
|
|
|
|
|
static void setSysRoot(Kit *k, const Utils::FilePath &v);
|
|
|
|
|
};
|
|
|
|
|
|
2023-12-11 11:42:00 +01:00
|
|
|
// ToolchainKitAspect
|
2012-04-24 15:49:09 +02:00
|
|
|
|
2023-11-24 17:55:50 +01:00
|
|
|
class PROJECTEXPLORER_EXPORT ToolchainKitAspect
|
2023-08-10 15:47:26 +02:00
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
static Utils::Id id();
|
2023-12-11 11:42:00 +01:00
|
|
|
static QByteArray toolchainId(const Kit *k, Utils::Id language);
|
|
|
|
|
static Toolchain *toolchain(const Kit *k, Utils::Id language);
|
|
|
|
|
static Toolchain *cToolchain(const Kit *k);
|
|
|
|
|
static Toolchain *cxxToolchain(const Kit *k);
|
2023-11-24 15:53:31 +01:00
|
|
|
static QList<Toolchain *> toolChains(const Kit *k);
|
2023-12-11 11:42:00 +01:00
|
|
|
static void setToolchain(Kit *k, Toolchain *tc);
|
2024-07-31 13:03:57 +02:00
|
|
|
static void setBundle(Kit *k, const ToolchainBundle &bundle);
|
2023-12-11 11:42:00 +01:00
|
|
|
static void clearToolchain(Kit *k, Utils::Id language);
|
2023-08-10 15:47:26 +02:00
|
|
|
static Abi targetAbi(const Kit *k);
|
|
|
|
|
|
2023-12-11 11:42:00 +01:00
|
|
|
static QString msgNoToolchainInTarget();
|
2023-08-10 15:47:26 +02:00
|
|
|
};
|
|
|
|
|
|
2023-08-15 12:45:54 +02:00
|
|
|
// DeviceTypeKitAspect
|
2012-04-24 15:49:09 +02:00
|
|
|
|
2023-08-10 15:47:26 +02:00
|
|
|
class PROJECTEXPLORER_EXPORT DeviceTypeKitAspect
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
static const Utils::Id id();
|
|
|
|
|
static const Utils::Id deviceTypeId(const Kit *k);
|
|
|
|
|
static void setDeviceTypeId(Kit *k, Utils::Id type);
|
|
|
|
|
};
|
|
|
|
|
|
2023-08-15 12:45:54 +02:00
|
|
|
// DeviceKitAspect
|
2012-04-24 15:49:09 +02:00
|
|
|
|
2023-08-10 15:47:26 +02:00
|
|
|
class PROJECTEXPLORER_EXPORT DeviceKitAspect
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
static Utils::Id id();
|
|
|
|
|
static IDeviceConstPtr device(const Kit *k);
|
|
|
|
|
static Utils::Id deviceId(const Kit *k);
|
|
|
|
|
static void setDevice(Kit *k, IDeviceConstPtr dev);
|
|
|
|
|
static void setDeviceId(Kit *k, Utils::Id dataId);
|
|
|
|
|
static Utils::FilePath deviceFilePath(const Kit *k, const QString &pathOnDevice);
|
|
|
|
|
};
|
|
|
|
|
|
2012-04-24 15:49:09 +02:00
|
|
|
|
2023-08-15 12:45:54 +02:00
|
|
|
// BuildDeviceKitAspect
|
2021-04-12 12:09:47 +02:00
|
|
|
|
2023-08-10 15:47:26 +02:00
|
|
|
class PROJECTEXPLORER_EXPORT BuildDeviceKitAspect
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
static Utils::Id id();
|
|
|
|
|
static IDeviceConstPtr device(const Kit *k);
|
|
|
|
|
static Utils::Id deviceId(const Kit *k);
|
|
|
|
|
static void setDevice(Kit *k, IDeviceConstPtr dev);
|
|
|
|
|
static void setDeviceId(Kit *k, Utils::Id dataId);
|
|
|
|
|
};
|
|
|
|
|
|
2023-08-15 12:45:54 +02:00
|
|
|
// EnvironmentKitAspect
|
2014-07-22 21:12:34 +02:00
|
|
|
|
2023-08-10 15:47:26 +02:00
|
|
|
class PROJECTEXPLORER_EXPORT EnvironmentKitAspect
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
static Utils::Id id();
|
|
|
|
|
static Utils::EnvironmentItems environmentChanges(const Kit *k);
|
|
|
|
|
static void setEnvironmentChanges(Kit *k, const Utils::EnvironmentItems &changes);
|
|
|
|
|
};
|
|
|
|
|
|
2012-04-24 15:49:09 +02:00
|
|
|
} // namespace ProjectExplorer
|