- string filename = pattern.apply(component->get_name());
- string base = FS::basepart(filename);
- string ext = FS::extpart(filename);
- soname = format("%s.%s%s", base, version, ext);
- }
- else
- soname = format("%s.%s", pattern.apply(component->get_name()), version);
+ const Architecture &arch = builder.get_current_arch();
+ if(arch.get_system()=="windows")
+ soname = arch.create_filename<SharedLibrary>(format("%s-%s", libname, version));
+ else if(arch.get_system()=="darwin")
+ soname = arch.create_filename<SharedLibrary>(format("%s.%s", libname, version));
+ else
+ soname = format("%s.%s", arch.create_filename<SharedLibrary>(libname), version);