pkgconfig deps: Add all -L args when using -l args

Also don't resolve -lfoo args only when libpaths are defined.
cc.find_library() also searches in the toolchain directories, and the
static library might be there.
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
index 2fbcb2b..bf79bc5 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
@@ -490,10 +490,9 @@
             if self.static:
                 if lib.startswith('-L'):
                     libpaths.append(lib[2:])
-                    print(lib)
                     continue
                 # FIXME: try to handle .la files in static mode too?
-                elif lib.startswith('-l') and libpaths:
+                elif lib.startswith('-l'):
                     args = self.compiler.find_library(lib[2:], self.env, libpaths, libtype='static')
                     if not args or len(args) < 1:
                         if lib in static_libs_notfound:
@@ -501,12 +500,6 @@
                         mlog.warning('Static library {!r} not found for dependency {!r}, may '
                                      'not be statically linked'.format(lib[2:], self.name))
                         static_libs_notfound.append(lib)
-                        # Preserve the -l arg since we couldn't resolve it to
-                        # a static library. Also need all previous -L args now.
-                        for p in libpaths:
-                            lp = '-L' + p
-                            if lp not in self.link_args:
-                                self.link_args.append(lp)
                     else:
                         # Replace -l arg with full path to static library
                         lib = args[0]
@@ -523,6 +516,11 @@
                 lib = shared_lib
                 self.is_libtool = True
             self.link_args.append(lib)
+        # Add all -Lbar args if we have -lfoo args in link_args
+        if static_libs_notfound:
+            # Order of -L flags doesn't matter with ld, but it might with other
+            # linkers such as MSVC, so prepend them.
+            self.link_args = ['-L' + lp for lp in libpaths] + self.link_args
 
     def get_pkgconfig_variable(self, variable_name, kwargs):
         options = ['--variable=' + variable_name, self.name]