diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-11-17 10:06:26 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-11-17 10:06:26 +0100 |
| commit | 76cf9156127bf7f082294a0c7e79f86059fe69ab (patch) | |
| tree | 5070f4695b591780f60b728cc14e624c5a31b5d8 /dev/cli/Tool.cc | |
| parent | a8e72e63ee1921d6a85b801d2cdeff3f4872d468 (diff) | |
| parent | c782117221f0b8f0bb018df673f935c1791fee32 (diff) | |
Merge pull request #5 from nekernel-org/dev
release: NeBuild v0.0.7
Diffstat (limited to 'dev/cli/Tool.cc')
| -rw-r--r-- | dev/cli/Tool.cc | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/dev/cli/Tool.cc b/dev/cli/Tool.cc deleted file mode 100644 index 1d49c9f..0000000 --- a/dev/cli/Tool.cc +++ /dev/null @@ -1,76 +0,0 @@ - -// ============================================================= // -// nebuild -// Copyright (C) 2024-2025, Amlal El Mahrouss, all rights reserved. -// ============================================================= // - -#include <BuildKit/JSONManifestBuilder.h> - -static bool kFailed = false; -static bool kDryRun = false; - -int main(int argc, char** argv) { - if (argc <= 1) return EXIT_FAILURE; - - for (size_t index = 1; index < argc; ++index) { - std::string index_path = argv[index]; - - if (index_path == "-v" || index_path == "--version") { - NeBuild::Logger::info() << "Brought to you by Amlal El Mahrouss for NeKernel.org.\n"; - NeBuild::Logger::info() << "© 2024-2025 Amlal El Mahrouss, all rights reserved.\n"; - - NeBuild::Logger::info() - << "Bugs, issues? Check out: https://github.com/nekernel-org/nebuild/issues\n"; - - return EXIT_SUCCESS; - } else if (index_path == "--dry-run") { - kDryRun = true; - continue; - } else if (index_path == "-h" || index_path == "--help") { - NeBuild::Logger::info() << "Usage: nebuild <file>\n"; - - return EXIT_SUCCESS; - } - - if (index_path.starts_with("-")) { - NeBuild::Logger::info() << "error: unknown option '" << index_path << "'\n"; - - return EXIT_FAILURE; - } - - std::thread job_build_thread( - [](std::string index_path) -> void { - NeBuild::IManifestBuilder* builder = nullptr; - - const auto kJsonExtension = ".json"; - - if (index_path.ends_with(kJsonExtension)) { - builder = new NeBuild::JSONManifestBuilder(); - - if (!builder) { - kFailed = true; - return; - } - } else { - NeBuild::Logger::info() - << "error: file '" << index_path << "' is not a JSON file!" << std::endl; - kFailed = true; - return; - } - - NeBuild::Logger::info() << "building manifest: " << index_path << std::endl; - - if (builder && !builder->BuildTarget(index_path, kDryRun)) { - kFailed = true; - } - - delete builder; - builder = nullptr; - }, - index_path); - - job_build_thread.join(); - } - - return kFailed ? EXIT_FAILURE : EXIT_SUCCESS; -} |
