First cut at -shared support.

diff --git a/tools/winegcc/utils.c b/tools/winegcc/utils.c
index 3929ebc..ee404d5 100644
--- a/tools/winegcc/utils.c
+++ b/tools/winegcc/utils.c
@@ -221,7 +221,8 @@
     if (strendswith(filename, ".res")) return file_res;
     if (strendswith(filename, ".so")) return file_so;
     if (strendswith(filename, ".dylib")) return file_so;
-    if (strendswith(filename, ".def")) return file_dll;
+    if (strendswith(filename, ".def")) return file_def;
+    if (strendswith(filename, ".spec")) return file_spec;
     if (strendswith(filename, ".rc")) return file_rc;
 
     return file_other;
@@ -254,9 +255,9 @@
 	return file_so;
 
     /* Windows DLL */
-    if ((*file = try_lib_path(dir, "lib", library, ".def", file_dll)))
+    if ((*file = try_lib_path(dir, "lib", library, ".def", file_def)))
 	return file_dll;
-    if ((*file = try_lib_path(dir, "", library, ".def", file_dll)))
+    if ((*file = try_lib_path(dir, "", library, ".def", file_def)))
 	return file_dll;
 
     /* Unix static archives */