MSVC.pm 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package platform::Windows::MSVC;
  2. use strict;
  3. use warnings;
  4. use Carp;
  5. use vars qw(@ISA);
  6. require platform::Windows;
  7. @ISA = qw(platform::Windows);
  8. # Assume someone set @INC right before loading this module
  9. use configdata;
  10. sub pdbext { '.pdb' }
  11. # It's possible that this variant of |sharedname| should be in Windows.pm.
  12. # However, this variant was VC only in 1.1.1, so we maintain that here until
  13. # further notice.
  14. sub sharedname {
  15. return platform::BASE::__concat(platform::BASE->sharedname($_[1]),
  16. "-",
  17. $_[0]->shlib_version_as_filename(),
  18. ($target{multilib} // '' ),
  19. ($_[0]->shlibvariant() // ''));
  20. }
  21. sub staticlibpdb {
  22. return platform::BASE::__concat($_[0]->staticname($_[1]), $_[0]->pdbext());
  23. }
  24. sub sharedlibpdb {
  25. return platform::BASE::__concat($_[0]->sharedname($_[1]), $_[0]->pdbext());
  26. }
  27. sub dsopdb {
  28. return platform::BASE::__concat($_[0]->dsoname($_[1]), $_[0]->pdbext());
  29. }
  30. sub binpdb {
  31. return platform::BASE::__concat($_[0]->binname($_[1]), $_[0]->pdbext());
  32. }
  33. 1;