File indexing completed on 2024-05-05 04:40:08

0001 /*
0002     SPDX-FileCopyrightText: 2018 Daniel Mensinger <daniel@mensinger-ka.de>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include <outputview/outputjob.h>
0010 #include <util/path.h>
0011 
0012 namespace Meson
0013 {
0014 struct BuildDir;
0015 }
0016 
0017 // "Inspired" by the CMake prune job
0018 class MesonJobPrune : public KDevelop::OutputJob
0019 {
0020     Q_OBJECT
0021 public:
0022     explicit MesonJobPrune(const Meson::BuildDir& buildDir, QObject* parent);
0023     void start() override;
0024     bool doKill() override;
0025 
0026 private:
0027     KDevelop::Path m_buildDir;
0028     QString m_backend;
0029     KJob* m_job = nullptr;
0030 };