Index: src/getpagesize.h
===================================================================
RCS file: /sources/grep/grep/src/getpagesize.h,v
retrieving revision 1.6
diff -u -r1.6 getpagesize.h
--- src/getpagesize.h	8 Feb 2001 15:56:55 -0000	1.6
+++ src/getpagesize.h	30 Dec 2006 20:40:18 -0000
@@ -25,6 +25,10 @@
 # endif
 #endif
 
+#if !defined getpagesize && defined __amigaos4__
+# define getpagesize() 2048
+#endif
+
 #ifndef getpagesize
 # include <sys/param.h>
 # ifdef EXEC_PAGESIZE
Index: src/grep.c
===================================================================
RCS file: /sources/grep/grep/src/grep.c,v
retrieving revision 1.121
diff -u -r1.121 grep.c
--- src/grep.c	18 Aug 2006 22:00:31 -0000	1.121
+++ src/grep.c	30 Dec 2006 21:06:55 -0000
@@ -1231,7 +1231,7 @@
         }
       if (directories == SKIP_DIRECTORIES && S_ISDIR (stats->stat.st_mode))
         return 1;
-#ifndef DJGPP
+#if !defined DJGPP && !defined __amigaos4__
       if (devices == SKIP_DEVICES && (S_ISCHR(stats->stat.st_mode) || S_ISBLK(stats->stat.st_mode) || S_ISSOCK(stats->stat.st_mode) || S_ISFIFO(stats->stat.st_mode)))
 #else
       if (devices == SKIP_DEVICES && (S_ISCHR(stats->stat.st_mode) || S_ISBLK(stats->stat.st_mode)))
@@ -1707,6 +1707,7 @@
 	    break;
 	/* If name unknown, go on for forward compatibility.  */
 	if (cap->name)
+	  {
 	  if (cap->var)
 	    {
 	      if (val)
@@ -1719,6 +1720,7 @@
 	    error(0, 0, _("In GREP_COLORS=\"%s\", the \"%s\" capacity "
 			  "is boolean and cannot take a value (\"=%s\"); "
 			  "skipped."), p, name, val);
+	  }
 	if (cap->fct)
 	  {
 	    const char *err_str = cap->fct();
