Junio C Hamano wrote: > I noticed that the first "grep -C1" test in t7002 does not pass on my > SunOS-5.11-i86pc, and that is not because our way to spawn external > grep is broken, but because the native grep does not understand -C<n>. > > Is it just me and my installation (i.e. I might have failed to install > saner grep from the distribution that everybody uses), or everybody on > SunOS is using this option himself because our Makefile doesn't do that > automatically for them? Hmm. I have _not_ been setting NO_EXTERNAL_GREP and the tests have _not_ been failing. The system grep does not seem to have the -C option: # /usr/xpg4/bin/grep -C1 include ws.c /usr/xpg4/bin/grep: illegal option -- C Usage: grep [-E|-F] [-c|-l|-q] [-bhinsvwx] [file ...] grep [-E|-F] [-c|-l|-q] [-bhinsvwx] -e pattern... [-f pattern_file]...[file...] grep [-E|-F] [-c|-l|-q] [-bhinsvwx] [-e pattern]... -f pattern_file [file...] but git grep -C1 works fine # git grep -C1 include ws.c ws.c- ws.c:#include "cache.h" ws.c:#include "attr.h" ws.c- I have been compiling with the SUNWspro compiler suite though, and I see these statements in builtin-grep.c: #ifndef NO_EXTERNAL_GREP #ifdef __unix__ #define NO_EXTERNAL_GREP 0 #else #define NO_EXTERNAL_GREP 1 #endif #endif So possibly, the SUNWspro compiler does not set the __unix__ macro. A quick compile of a test program confirms it. #include <stdio.h> int main (int argc, char* argv[]) { #ifdef __unix__ puts("__unix__ is set"); #else puts("__unix__ is not set"); #endif return 0; } # /opt/SUNWspro/bin/cc -o test.out test.c ./test.out __unix__ is not set # gcc -o test.out test.c __unix__ is set So, I have been getting NO_EXTERNAL_GREP all along without knowing it. -brandon -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html