Files
build-script/src/app.h
2026-06-28 09:37:09 -04:00

47 lines
1.0 KiB
C++

#ifndef BUILD_SCRIPT_APP
#define BUILD_SCRIPT_APP
#include <filesystem>
#include <taskflow/taskflow.hpp>
#include "args.h"
#include "logging.h"
#include "taskflow/core/executor.hpp"
#include "taskflow/core/taskflow.hpp"
#include "types.h"
class Application {
public:
Application(Options options);
void assemble();
void save_graph(std::string filename);
void run();
private:
bool m_DryRun;
bool m_Verbose;
BuildType m_BuildType;
Command m_Command;
tf::Taskflow m_Taskflow;
void createAllLoggers();
void buildProject();
void configureProject();
void cleanProject();
void deleteProject();
void rebuildProject();
void deleteDir(const std::filesystem::path& path);
void createDir(const std::filesystem::path& path);
void checkBuildDirs();
int runCmd(std::string cmd);
void buildDir(const std::filesystem::path& path);
void configureDir(const std::filesystem::path& path, std::string buildStr);
void cleanDir(const std::filesystem::path& path);
};
#endif // !BUILD_SCRIPT_APP