// file : build2/target.txx -*- C++ -*- // copyright : Copyright (c) 2014-2016 Code Synthesis Ltd // license : MIT; see accompanying LICENSE file #include #include // extension_pool #include #include namespace build2 { template const string* target_extension_fix (const target_key&, scope&) { return &extension_pool.find (ext); } template const string* target_extension_var (const target_key& tk, scope& s) { // Include target type/pattern-specific variables. // if (auto l = s.lookup (tk, var)) { // Help the user here and strip leading '.' from the extension. // const string& e (as (*l)); return &extension_pool.find ( !e.empty () && e.front () == '.' ? string (e, 1) : e); } return def != nullptr ? &extension_pool.find (def) : nullptr; } }