On Cygwin, use the "cyg" prefix, and accept also the normal "lib".
authorTor Lillqvist <tml@iki.fi>
Wed, 31 Mar 2004 02:02:02 +0000 (02:02 +0000)
committerTor Lillqvist <tml@src.gnome.org>
Wed, 31 Mar 2004 02:02:02 +0000 (02:02 +0000)
2004-03-31  Tor Lillqvist  <tml@iki.fi>

* gmodule-win32.c (_g_module_build_path): On Cygwin, use the "cyg"
prefix, and accept also the normal "lib". (#138403, Roger Leigh)

gmodule/ChangeLog
gmodule/gmodule-win32.c

index 0adfea5..a4dd1ac 100644 (file)
@@ -1,3 +1,8 @@
+2004-03-31  Tor Lillqvist  <tml@iki.fi>
+
+       * gmodule-win32.c (_g_module_build_path): On Cygwin, use the "cyg"
+       prefix, and accept also the normal "lib". (#138403, Roger Leigh)
+
 Tue Feb 24 14:09:21 2004  Owen Taylor  <otaylor@redhat.com>
 
        * === Released 2.3.3 ===
index 882ee7b..97b3363 100644 (file)
@@ -230,14 +230,28 @@ _g_module_build_path (const gchar *directory,
   if (directory && *directory)
     if (k > 4 && g_ascii_strcasecmp (module_name + k - 4, ".dll") == 0)
       return g_strconcat (directory, G_DIR_SEPARATOR_S, module_name, NULL);
+#ifdef G_WITH_CYGWIN
+    else if (strncmp (module_name, "lib", 3) == 0 || strncmp (module_name, "cyg", 3) == 0)
+      return g_strconcat (directory, G_DIR_SEPARATOR_S, module_name, ".dll", NULL);
+    else
+      return g_strconcat (directory, G_DIR_SEPARATOR_S, "cyg", module_name, ".dll", NULL);
+#else
     else if (strncmp (module_name, "lib", 3) == 0)
       return g_strconcat (directory, G_DIR_SEPARATOR_S, module_name, ".dll", NULL);
     else
       return g_strconcat (directory, G_DIR_SEPARATOR_S, "lib", module_name, ".dll", NULL);
+#endif
   else if (k > 4 && g_ascii_strcasecmp (module_name + k - 4, ".dll") == 0)
     return g_strdup (module_name);
+#ifdef G_WITH_CYGWIN
+  else if (strncmp (module_name, "lib", 3) == 0 || strncmp (module_name, "cyg", 3) == 0)
+    return g_strconcat (module_name, ".dll", NULL);
+  else
+    return g_strconcat ("cyg", module_name, ".dll", NULL);
+#else
   else if (strncmp (module_name, "lib", 3) == 0)
     return g_strconcat (module_name, ".dll", NULL);
   else
     return g_strconcat ("lib", module_name, ".dll", NULL);
+#endif
 }