- const Architecture &arch = comp.get_package().get_builder().get_current_arch();
- return arch.create_filename<SharedLibrary>(comp.get_name());
+ const SourcePackage &pkg = comp.get_package();
+ const Architecture &arch = pkg.get_builder().get_current_arch();
+ const string &version = pkg.get_interface_version();
+ if(!version.empty())
+ {
+ if(arch.get_system()=="windows")
+ return arch.create_filename<SharedLibrary>(format("%s-%s", comp.get_name(), version));
+ else if(arch.get_system()=="darwin")
+ return arch.create_filename<SharedLibrary>(format("%s.%s", comp.get_name(), version));
+ else
+ return format("%s.%s", arch.create_filename<SharedLibrary>(comp.get_name()), version);
+ }
+ else
+ return arch.create_filename<SharedLibrary>(comp.get_name());