Windows doesn't have symlinks so the import library would not be found.
In fact, the import library is kind of like an soname symlink.
return imp;
}
-Target *MingwDllTool::create_install(Target &target) const
-{
- if(ImportLibrary *imp = dynamic_cast<ImportLibrary *>(&target))
- {
- Tool © = builder.get_toolchain().get_tool("CP");
- InstalledFile *inst_tgt = dynamic_cast<InstalledFile *>(copy.create_target(target));
- string link_name = format("lib%s.dll.a", imp->get_shared_library()->get_libname());
- if(link_name!=FS::basename(inst_tgt->get_path()))
- inst_tgt->set_symlink(link_name);
- return inst_tgt;
- }
- else
- return 0;
-}
-
Task *MingwDllTool::_run(const Target &target)
{
const Tool &tool = *target.get_tool();
MingwDllTool(Builder &, const Architecture &);
Target *create_target(const std::vector<Target *> &, const std::string &) override;
- Target *create_install(Target &) const override;
private:
static Task *_run(const Target &);
shared_lib->set_import_library(this);
install_location = "lib";
-
- const string &version = component->get_package().get_interface_version();
- if(!version.empty())
- {
- const Architecture &arch = builder.get_current_arch();
- install_filename = arch.create_filename<ImportLibrary>(format("%s-%s", sl.get_libname(), version));
- }
}
string ImportLibrary::generate_filename(const Component &comp, const SharedLibrary &sl)