X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fvirtualfilesystem.cpp;h=f1a0adb7b633c78a6b16896be775a65ba5f497fd;hb=b58e16b078df97d8aabf64a8e4d0d8ce37ad3877;hp=19bc8db6fe2e4cf0ef24255ccd02bef5b5d7fbca;hpb=f76c063eb9b792088e034ffb4c2f173b843e8c57;p=builder.git diff --git a/source/virtualfilesystem.cpp b/source/virtualfilesystem.cpp index 19bc8db..f1a0adb 100644 --- a/source/virtualfilesystem.cpp +++ b/source/virtualfilesystem.cpp @@ -96,17 +96,19 @@ FileTarget *VirtualFileSystem::find_library(const string &lib, const SearchPath FS::Path filename = *i / *j; if(FileTarget *tgt = get_target(filename)) { - if(cur_names!=&shared_names || mode==BuildInfo::DYNAMIC) - { - builder.get_logger().log("vfs", format("Library %s (%s) found in %s as existing %s", lib, *j, i->str(), tgt->get_type())); - return tgt; - } + builder.get_logger().log("vfs", format("Library %s (%s) found in %s as existing %s", lib, *j, i->str(), tgt->get_type())); + return tgt; } else if(file_exists(filename)) { builder.get_logger().log("vfs", format("Library %s (%s) found in %s", lib, *j, i->str())); if(cur_names==&shared_names) + { + // XXX Hack: create StaticLibrary targets for import libraries + if(FS::extpart(*j)==".a") + return new StaticLibrary(builder, filename); return new SharedLibrary(builder, filename); + } else return new StaticLibrary(builder, filename); }