From b7f4e6154fa3c07ad3472bbd7c871df28d440a64 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 23 Nov 2020 10:22:48 +0200 Subject: Suppress duplicates when extracting library options (GitHub issue #114) --- libbuild2/cc/compile-rule.hxx | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'libbuild2/cc/compile-rule.hxx') diff --git a/libbuild2/cc/compile-rule.hxx b/libbuild2/cc/compile-rule.hxx index cbbb142..e52fed9 100644 --- a/libbuild2/cc/compile-rule.hxx +++ b/libbuild2/cc/compile-rule.hxx @@ -54,10 +54,12 @@ namespace build2 perform_clean (action, const target&) const; public: + using appended_libraries = small_vector; + void - append_lib_options (strings&, - const scope&, - action, const file&, bool, linfo) const; + append_library_options (appended_libraries&, strings&, + const scope&, + action, const file&, bool, linfo) const; protected: static void functions (function_family&, const char*); // functions.cxx @@ -72,15 +74,15 @@ namespace build2 template void - append_lib_options (T&, - const scope&, - action, const file&, bool, linfo) const; + append_library_options (appended_libraries&, T&, + const scope&, + action, const file&, bool, linfo) const; template void - append_lib_options (T&, - const scope&, - action, const target&, linfo) const; + append_library_options (T&, + const scope&, + action, const target&, linfo) const; // Mapping of include prefixes (e.g., foo in ) for auto- // generated headers to directories where they will be generated. @@ -107,9 +109,9 @@ namespace build2 append_prefixes (prefix_map&, const target&, const variable&) const; void - append_lib_prefixes (prefix_map&, - const scope&, - action, target&, linfo) const; + append_library_prefixes (prefix_map&, + const scope&, + action, target&, linfo) const; prefix_map build_prefix_map (const scope&, action, target&, linfo) const; -- cgit v1.1