Docker: Map build directory to device in cmake calls

Change-Id: Ibcd2e1aebac337e880a28a2a22b35d8ca60b6dcf
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
David Schulz
2021-10-18 10:23:35 +02:00
parent 2316f07db5
commit 665285b981
3 changed files with 18 additions and 14 deletions

View File

@@ -72,7 +72,11 @@ void CMakeProcess::run(const BuildDirParameters &parameters, const QStringList &
CMakeTool *cmake = parameters.cmakeTool();
QTC_ASSERT(parameters.isValid() && cmake, return);
const FilePath buildDirectory = parameters.buildDirectory;
const FilePath cmakeExecutable = cmake->cmakeExecutable();
const FilePath sourceDirectory = parameters.sourceDirectory.onDevice(cmakeExecutable);
const FilePath buildDirectory = parameters.buildDirectory.onDevice(cmakeExecutable);
if (!buildDirectory.exists()) {
QString msg = tr("The build directory \"%1\" does not exist")
.arg(buildDirectory.toUserOutput());
@@ -119,12 +123,8 @@ void CMakeProcess::run(const BuildDirParameters &parameters, const QStringList &
connect(process.get(), &QtcProcess::finished,
this, &CMakeProcess::handleProcessFinished);
const FilePath cmakeExecutable = cmake->cmakeExecutable();
const FilePath sourceDirectory = parameters.sourceDirectory.onDevice(cmakeExecutable);
CommandLine commandLine(cmakeExecutable);
commandLine.addArgs({"-S", sourceDirectory.mapToDevicePath(),
"-B", buildDirectory.mapToDevicePath()});
commandLine.addArgs({"-S", sourceDirectory.path(), "-B", buildDirectory.path()});
commandLine.addArgs(arguments);
TaskHub::clearTasks(ProjectExplorer::Constants::TASK_CATEGORY_BUILDSYSTEM);