diff options
Diffstat (limited to 'task_ar.cc')
-rw-r--r-- | task_ar.cc | 16 |
1 files changed, 13 insertions, 3 deletions
@@ -65,13 +65,13 @@ TaskAR::TaskAR(const BuildConfiguration& config, flagsFile += ".flags"; target_type = TargetType::StaticLibrary; - _language = Language::C; + source_language = Language::C; for(const auto& source : config.sources) { std::filesystem::path sourceFile(source); if(sourceFile.extension().string() != ".c") { - _language = Language::Cpp; + source_language = Language::Cpp; } } } @@ -143,7 +143,17 @@ int TaskAR::runInner() std::cout << "AR => " << targetFile.string() << "\n"; } - auto tool = getConfiguration("host-ar", "/usr/bin/ar"); + std::string tool; + switch(outputSystem()) + { + case OutputSystem::Target: + tool = getConfiguration(cfg::target_ar, "/usr/bin/ar"); + break; + case OutputSystem::BuildHost: + tool = getConfiguration(cfg::host_ar, "/usr/bin/ar"); + break; + } + return execute(tool, args, settings.verbose > 0); } |