]> git.tdb.fi Git - builder.git/commitdiff
Use architecture-dependent filename pattern when looking for binaries
authorMikko Rasa <tdb@tdb.fi>
Sun, 3 Sep 2023 23:17:19 +0000 (02:17 +0300)
committerMikko Rasa <tdb@tdb.fi>
Sun, 3 Sep 2023 23:17:19 +0000 (02:17 +0300)
source/lib/virtualfilesystem.cpp

index ecd145b44604ff44f4b036873e88e912346df469..de4fb358b9413bf63694de5b2e69e31551c6dbdb 100644 (file)
@@ -168,9 +168,14 @@ FileTarget *VirtualFileSystem::find_binary(const string &name)
                path.push_back(builder.get_prefix()/"bin");
        }
 
+       string exe_name = name;
+       vector<Pattern> exe_patterns = builder.get_current_arch().get_patterns<Executable>();
+       if(!exe_patterns.empty())
+               exe_name = exe_patterns.front().apply(name);
+
        for(const FS::Path &p: path)
        {
-               FS::Path filename = p/name;
+               FS::Path filename = p/exe_name;
                if(FileTarget *tgt = get_target(filename))
                {
                        builder.get_logger().log("vfs", "Binary %s found in %s as existing %s", name, p, tgt->get_type());