summaryrefslogtreecommitdiffhomepage
path: root/src/lib/TOMLManifestBuilder.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/TOMLManifestBuilder.cc')
-rw-r--r--src/lib/TOMLManifestBuilder.cc17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/lib/TOMLManifestBuilder.cc b/src/lib/TOMLManifestBuilder.cc
index 5b759fc..257c4a3 100644
--- a/src/lib/TOMLManifestBuilder.cc
+++ b/src/lib/TOMLManifestBuilder.cc
@@ -100,6 +100,23 @@ bool TOMLManifestBuilder::BuildTarget(BuildConfig& config) {
config.has_failed_ = true;
return false;
}
+
+ if (!config.dry_run_) {
+ auto run_after_build = toml_file["run_after_build"].as_boolean();
+ if (!run_after_build) return true;
+
+ auto val = run_after_build->get();
+ if (val) {
+ ret_exec = std::system(target.c_str());
+
+ if (ret_exec > 0) {
+ NeBuild::Logger::info() << "error: exit with message: " << std::strerror(ret_exec) << ""
+ << std::endl;
+ config.has_failed_ = true;
+ return false;
+ }
+ }
+ }
} catch (std::runtime_error& err) {
NeBuild::Logger::info() << "error: exit with message: " << err.what() << "" << std::endl;
config.has_failed_ = true;