Catch up with changes in 'gen_lib_options()':
  - change how we call it
  - added methods 'library_dir_option()', 'library_option()', and
    'find_library_file()' that it calls
Added 'force' flag; it's automatically "respected", because this class
  always rebuilds everything!  (Which it to say, "force=0" is not respected.)
diff --git a/Lib/distutils/msvccompiler.py b/Lib/distutils/msvccompiler.py
index 64b2730..5ac60b2 100644
--- a/Lib/distutils/msvccompiler.py
+++ b/Lib/distutils/msvccompiler.py
@@ -23,9 +23,10 @@
 
     def __init__ (self,
                   verbose=0,
-                  dry_run=0):
+                  dry_run=0,
+                  force=0):
 
-        CCompiler.__init__ (self, verbose, dry_run)
+        CCompiler.__init__ (self, verbose, dry_run, force)
 
         # XXX This is a nasty dependency to add on something otherwise
         # pretty clean.  move it to build_ext under an nt specific part.
@@ -164,9 +165,9 @@
         if library_dirs is None:
             library_dirs = []
         
-        lib_opts = gen_lib_options (self.library_dirs + library_dirs,
-                                    self.libraries + libraries,
-                                    "/LIBPATH:%s", "%s.lib")
+        lib_opts = gen_lib_options (self,
+                                    self.library_dirs + library_dirs,
+                                    self.libraries + libraries)
 
         ld_args = self.ldflags_shared + lib_opts + \
                   objects + ['/OUT:' + output_filename]
@@ -200,6 +201,9 @@
            specified source filename."""
         return self._change_extensions( source_filenames, self._shared_lib_ext )
 
+    # XXX ummm... these aren't right, are they?  I thought library 'foo' on
+    # DOS/Windows was to be found in "foo.lib", not "libfoo.lib"!
+
     def library_filename (self, libname):
         """Return the static library filename corresponding to the
            specified library name."""
@@ -210,4 +214,25 @@
            specified library name."""
         return "lib%s%s" %( libname, self._shared_lib_ext )
 
+
+    def library_dir_option (self, dir):
+        return "/LIBPATH:" + dir
+
+    def library_option (self, lib):
+        return self.library_filename (lib)
+
+
+    def find_library_file (self, dirs, lib):
+
+        for dir in dirs:
+            libfile = os.path.join (dir, self.library_filename (lib))
+            if os.path.exists (libfile):
+                return libfile
+
+        else:
+            # Oops, didn't find it in *any* of 'dirs'
+            return None
+
+    # find_library_file ()
+
 # class MSVCCompiler