| @@ -163,7 +163,7 @@ void copy_headers(const fs::path& source, const fs::path& dest, const source_lis | |||
| void generate_export(const build_params& params, | |||
| fs::path archive_file, | |||
| const source_list& sources) { | |||
| const auto export_root = params.out_root / (params.export_name + ".export-root"); | |||
| const auto export_root = params.out_root / fmt::format("{}.export-root", params.export_name); | |||
| spdlog::info("Generating library export: {}", export_root.string()); | |||
| fs::remove_all(export_root); | |||
| fs::create_directories(export_root); | |||
| @@ -296,8 +296,8 @@ void dds::build(const build_params& params, const library_manifest& man) { | |||
| archive_spec arc; | |||
| arc.input_files = compile_sources(sources, params, man); | |||
| arc.out_path | |||
| = params.out_root / ("lib" + params.export_name + params.toolchain.archive_suffix()); | |||
| arc.out_path = params.out_root | |||
| / (fmt::format("lib{}{}", params.export_name, params.toolchain.archive_suffix())); | |||
| spdlog::info("Create archive {}", arc.out_path.string()); | |||
| auto ar_cmd = params.toolchain.create_archive_command(arc); | |||
| @@ -2,6 +2,8 @@ | |||
| #include <dds/util.hpp> | |||
| #include <spdlog/fmt/fmt.h> | |||
| #include <cctype> | |||
| #include <fstream> | |||
| @@ -44,8 +46,7 @@ void parse_line(std::vector<lm_pair>& pairs, const std::string_view whole_line) | |||
| while (true) { | |||
| if (iter == end) { | |||
| throw std::runtime_error("Invalid line in config file: '"s + std::string(whole_line) | |||
| + "'"); | |||
| throw std::runtime_error(fmt::format("Invalid line in config file: '{}'", whole_line)); | |||
| } | |||
| if (*iter == ':') { | |||
| if (++iter == end) { | |||
| @@ -2,6 +2,8 @@ | |||
| #include <dds/lm_parse.hpp> | |||
| #include <spdlog/fmt/fmt.h> | |||
| using namespace dds; | |||
| library_manifest library_manifest::load_from_file(const fs::path& fpath) { | |||
| @@ -13,7 +15,8 @@ library_manifest library_manifest::load_from_file(const fs::path& fpath) { | |||
| } else if (pair.key() == "Private-Defines") { | |||
| ret.private_defines.emplace_back(pair.value()); | |||
| } else { | |||
| throw std::runtime_error("Unknown key in " + fpath.string() + ": " + pair.key()); | |||
| throw std::runtime_error( | |||
| fmt::format("Unknown key in file '{}': {}", fpath.string(), pair.key())); | |||
| } | |||
| } | |||
| return ret; | |||
| @@ -38,7 +38,8 @@ toolchain toolchain::load_from_file(fs::path p) { | |||
| auto require_key = [](auto k, auto& opt) { | |||
| if (!opt.has_value()) { | |||
| throw invalid_toolchain("Toolchain file is missing a required key: " + string(k)); | |||
| throw invalid_toolchain( | |||
| fmt::format("Toolchain file is missing a required key '{}'", k)); | |||
| } | |||
| }; | |||
| @@ -50,7 +51,7 @@ toolchain toolchain::load_from_file(fs::path p) { | |||
| auto try_single = [&](auto k, auto& opt) { | |||
| if (key == k) { | |||
| if (opt.has_value()) { | |||
| throw invalid_toolchain("Duplicate key: " + key); | |||
| throw invalid_toolchain(fmt::format("Duplicated key '{}'", key)); | |||
| } | |||
| opt = value; | |||
| return true; | |||
| @@ -74,7 +75,7 @@ toolchain toolchain::load_from_file(fs::path p) { | |||
| // clang-format on | |||
| if (!found_single) { | |||
| throw invalid_toolchain("Unknown toolchain file key: " + key); | |||
| throw invalid_toolchain(fmt::format("Unknown toolchain file key '{}'", key)); | |||
| } | |||
| } | |||