diff options
Diffstat (limited to 'task_so.cc')
-rw-r--r-- | task_so.cc | 19 |
1 files changed, 5 insertions, 14 deletions
@@ -64,13 +64,13 @@ TaskSO::TaskSO(const BuildConfiguration& config, flagsFile += ".flags"; target_type = TargetType::DynamicLibrary; - _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; } } } @@ -153,12 +153,7 @@ int TaskSO::runInner() std::cout << "LD => " << targetFile.string() << "\n"; } - auto tool = getConfiguration("host-cpp", "/usr/bin/g++"); - if(language() == Language::C) - { - tool = getConfiguration("host-cc", "/usr/bin/gcc"); - } - + auto tool = compiler(); return execute(tool, args, settings.verbose > 0); } @@ -202,14 +197,10 @@ std::string TaskSO::target() const std::string TaskSO::flagsString() const { - std::string flagsStr; + std::string flagsStr = compiler(); for(const auto& flag : config.ldflags) { - if(flag != config.ldflags[0]) - { - flagsStr += " "; - } - flagsStr += flag; + flagsStr += " " + flag; } flagsStr += "\n"; |