--- environ.cc.orig	Sat Oct 28 01:41:43 2000
+++ environ.cc	Fri Nov  3 16:59:44 2000
@@ -26,6 +26,7 @@
 #include "environ.h"
 
 extern BOOL allow_glob;
+extern int ignore_case_with_glob;
 extern BOOL allow_ntea;
 extern BOOL strip_title_path;
 extern DWORD chunksize;
@@ -374,6 +375,26 @@
     set_process_state,
   };
 
+static void
+glob_init (const char * buf)
+{
+  if (!buf || !*buf)
+    {
+      allow_glob = FALSE;
+      ignore_case_with_glob = 0;
+    }
+  else if (strncasematch (buf, "ignorecase", 10))
+    {
+      allow_glob = TRUE;
+      ignore_case_with_glob = 1;
+    }
+  else
+    {
+      allow_glob = TRUE;
+      ignore_case_with_glob = 0;
+    }
+}
+
 /* The structure below is used to set up an array which is used to
  * parse the CYGWIN environment variable or, if enabled, options from
  * the registry.
@@ -403,7 +424,7 @@
   {"error_start", {func: &error_start_init}, isfunc, NULL, {{0}, {0}}},
   {"export", {&export_settings}, justset, NULL, {{FALSE}, {TRUE}}},
   {"forkchunk", {x: &chunksize}, justset, NULL, {{8192}, {0}}},
-  {"glob", {&allow_glob}, justset, NULL, {{FALSE}, {TRUE}}},
+  {"glob", {func: &glob_init}, isfunc, NULL, {{0}, {s: "normal"}}},
   {"ntea", {&allow_ntea}, justset, NULL, {{FALSE}, {TRUE}}},
   {"ntsec", {&allow_ntsec}, justset, NULL, {{FALSE}, {TRUE}}},
   {"reset_com", {&reset_com}, justset, NULL, {{FALSE}, {TRUE}}},
