--- /gettext-tools/m4/orig-getline.m4	2003-07-18 18:11:37.000000000 +0300
+++ /gettext-tools/m4/getline.m4	2007-02-03 13:33:41.000000000 +0200
@@ -42,12 +42,23 @@
 	return 1;
       len = getline (&line, &siz, in);
       exit ((len == 4 && line && strcmp (line, "foo\n") == 0) ? 0 : 1);
-    }
-    ], am_cv_func_working_getline=yes dnl The library version works.
-    , am_cv_func_working_getline=no dnl The library version does NOT work.
-    , am_cv_func_working_getline=no dnl We're cross compiling.
-    )])
-  fi
+     }
+      ], am_cv_func_working_getline=yes dnl The library version works.
+      , am_cv_func_working_getline=no dnl The library version does NOT work.
+!     , dnl We're cross compiling. Assume ir works on glibc2 systems.
+!       [AC_EGREP_CPP([Lucky GNU user],
+!          [
+! #include <features.h>
+! #ifdef __GNU_LIBRARY__
+!  #if (__GLIBC__ >= 2)
+!   Lucky GNU user
+!  #endif
+! #endif
+!          ],
+!          [am_cv_func_working_getline=yes],
+!          [am_cv_func_working_getline=no])]
+      )])
+    fi 
 
   if test $am_cv_func_working_getline = no; then
     dnl We must choose a different name for our function, since on ELF systems
