Glenn, I've attached a small cleanup patch to make it easier to
integrate grep.c into libcmd and I added a dummy --color option to
avoid trouble with Suse Linux which sets a alias grep='grep
--color=auto' in interactive shells.

Irek
--- ./src/cmd/kshlib/cmdtst/grep.c      2012-05-01 01:08:23.716529659 +0200
+++ ./src/cmd/kshlib/cmdtst/grep.c      2012-05-03 06:34:57.371505023 +0200
@@ -90,6 +90,7 @@
 "[T:test?Enable implementation specific tests.]: [test]"
 "[w:word-match|word-regexp?Force \apatterns\a to match complete words.]"
 "[a?Ignored for GNU compatibility.]"
+"[Y:color|colour?Ignored for GNU compatibility.]:[when]"
 "\n"
 "\n[ pattern ] [ file ... ]\n"
 "\n"
@@ -455,7 +456,7 @@
 }
 
 static int
-execute(State_t* state, Sfio_t* input, char* name, void* context)
+execute(State_t* state, Sfio_t* input, char* name, Shbltin_t* context)
 {
        register char*  s;
        char*           file;
@@ -675,7 +676,7 @@
 }
 
 static int
-grep(char* id, int options, int argc, char** argv, void* context)
+grep(char* id, int options, int argc, char** argv, Shbltin_t* context)
 {
        int     c;
        char*   s;
@@ -786,6 +787,8 @@
                                break;
                        }
                        break;
+               case 'Y':
+                       break;
                case 'X':
                        state.options |= REG_AUGMENTED;
                        break;
@@ -967,7 +970,7 @@
 }
 
 int
-b_grep(int argc, char** argv, void* context)
+b_grep(int argc, char** argv, Shbltin_t* context)
 {
        char*   s;
        int     options;
@@ -1008,28 +1011,28 @@
 }
 
 int
-b_egrep(int argc, char** argv, void* context)
+b_egrep(int argc, char** argv, Shbltin_t* context)
 {
        NoP(argc);
        return grep("egrep", REG_EXTENDED, argc, argv, context);
 }
 
 int
-b_fgrep(int argc, char** argv, void* context)
+b_fgrep(int argc, char** argv, Shbltin_t* context)
 {
        NoP(argc);
        return grep("fgrep", REG_LITERAL, argc, argv, context);
 }
 
 int
-b_pgrep(int argc, char** argv, void* context)
+b_pgrep(int argc, char** argv, Shbltin_t* context)
 {
        NoP(argc);
        return grep("pgrep", REG_EXTENDED|REG_LENIENT, argc, argv, context);
 }
 
 int
-b_xgrep(int argc, char** argv, void* context)
+b_xgrep(int argc, char** argv, Shbltin_t* context)
 {
        NoP(argc);
        return grep("xgrep", REG_AUGMENTED, argc, argv, context);
_______________________________________________
ast-developers mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-developers

Reply via email to