bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Minix support, part 5


From: Bruno Haible
Subject: Minix support, part 5
Date: Sun, 31 Jul 2011 21:17:52 +0200
User-agent: KMail/1.13.6 (Linux/2.6.37.6-0.5-desktop; KDE/4.6.0; x86_64; ; )

There are some compilation errors also in the stdioext modules:

gcc -DHAVE_CONFIG_H -I. -I..  -DGNULIB_STRICT_CHECKING=1  -Wall  -g -O2 -MT 
fbufmode.o -MD -MP -MF .deps/fbufmode.Tpo -c -o fbufmode.o fbufmode.c
fbufmode.c: In function 'fbufmode':
fbufmode.c:58: error: 'FILE' has no member named '_flag'
fbufmode.c:61: error: 'FILE' has no member named '_flag'
*** Error code 1 (continuing)

gcc -DHAVE_CONFIG_H -I. -I..  -DGNULIB_STRICT_CHECKING=1  -Wall  -g -O2 -MT 
freadahead.o -MD -MP -MF .deps/freadahead.Tpo -c -o freadahead.o freadahead.c
freadahead.c: In function 'freadahead':
freadahead.c:52: error: 'FILE' has no member named '_flag'
freadahead.c:52: error: '_IOWRT' undeclared (first use in this function)
freadahead.c:52: error: (Each undeclared identifier is reported only once
freadahead.c:52: error: for each function it appears in.)
freadahead.c:54: error: 'FILE' has no member named '_cnt'
*** Error code 1 (continuing)

gcc -DHAVE_CONFIG_H -I. -I..  -DGNULIB_STRICT_CHECKING=1  -Wall  -g -O2 -MT 
freading.o -MD -MP -MF .deps/freading.Tpo -c -o freading.o freading.c
freading.c: In function 'freading':
freading.c:46: error: 'FILE' has no member named '_flag'
*** Error code 1 (continuing)

gcc -DHAVE_CONFIG_H -I. -I..  -DGNULIB_STRICT_CHECKING=1  -Wall  -g -O2 -MT 
freadptr.o -MD -MP -MF .deps/freadptr.Tpo -c -o freadptr.o freadptr.c
freadptr.c: In function 'freadptr':
freadptr.c:60: error: 'FILE' has no member named '_flag'
freadptr.c:60: error: '_IOWRT' undeclared (first use in this function)
freadptr.c:60: error: (Each undeclared identifier is reported only once
freadptr.c:60: error: for each function it appears in.)
freadptr.c:62: error: 'FILE' has no member named '_cnt'
*** Error code 1 (continuing)

gcc -DHAVE_CONFIG_H -I. -I..  -DGNULIB_STRICT_CHECKING=1  -Wall  -g -O2 -MT 
freadseek.o -MD -MP -MF .deps/freadseek.Tpo -c -o freadseek.o freadseek.c
freadseek.c: In function 'freadptrinc':
freadseek.c:47: error: 'FILE' has no member named '_cnt'
*** Error code 1 (continuing)

gcc -DHAVE_CONFIG_H -I. -I..  -DGNULIB_STRICT_CHECKING=1  -Wall  -g -O2 -MT 
fseterr.o -MD -MP -MF .deps/fseterr.Tpo -c -o fseterr.o fseterr.c
fseterr.c: In function 'fseterr':
fseterr.c:39: error: 'FILE' has no member named '_flag'
*** Error code 1 (continuing)

gcc -DHAVE_CONFIG_H -I. -I..  -DGNULIB_STRICT_CHECKING=1  -Wall  -g -O2 -MT 
fpurge.o -MD -MP -MF .deps/fpurge.Tpo -c -o fpurge.o fpurge.c
fpurge.c: In function 'fpurge':
fpurge.c:95: error: 'FILE' has no member named '_base'
fpurge.c:97: error: 'FILE' has no member named '_cnt'
*** Error code 1 (continuing)

gcc -DHAVE_CONFIG_H -I. -I..  -DGNULIB_STRICT_CHECKING=1  -Wall  -g -O2 -MT 
freadable.o -MD -MP -MF .deps/freadable.Tpo -c -o freadable.o freadable.c
freadable.c: In function 'freadable':
freadable.c:37: error: 'FILE' has no member named '_flag'
freadable.c:37: error: '_IORW' undeclared (first use in this function)
freadable.c:37: error: (Each undeclared identifier is reported only once
freadable.c:37: error: for each function it appears in.)
*** Error code 1 (continuing)

gcc -DHAVE_CONFIG_H -I. -I..  -DGNULIB_STRICT_CHECKING=1  -Wall  -g -O2 -MT 
fwritable.o -MD -MP -MF .deps/fwritable.Tpo -c -o fwritable.o fwritable.c
fwritable.c: In function 'fwritable':
fwritable.c:37: error: 'FILE' has no member named '_flag'
fwritable.c:37: error: '_IORW' undeclared (first use in this function)
fwritable.c:37: error: (Each undeclared identifier is reported only once
fwritable.c:37: error: for each function it appears in.)
fwritable.c:37: error: '_IOWRT' undeclared (first use in this function)
*** Error code 1 (continuing)

gcc -DHAVE_CONFIG_H -I. -I..  -DGNULIB_STRICT_CHECKING=1  -Wall  -g -O2 -MT 
fwriting.o -MD -MP -MF .deps/fwriting.Tpo -c -o fwriting.o fwriting.c
fwriting.c: In function 'fwriting':
fwriting.c:37: error: 'FILE' has no member named '_flag'
fwriting.c:37: error: '_IOWRT' undeclared (first use in this function)
fwriting.c:37: error: (Each undeclared identifier is reported only once
fwriting.c:37: error: for each function it appears in.)
*** Error code 1 (continuing)

This fixes it; all stdioext tests pass.


2011-07-31  Bruno Haible  <address@hidden>

        stdioext: Add support for Minix.
        * lib/fbufmode.c (fbufmode) [__minix]: Add conditional code.
        * lib/fpurge.c (fpurge): Likewise.
        * lib/freadahead.c (freadahead): Likewise.
        * lib/freadable.c (freadable): Likewise.
        * lib/freading.c (freading): Likewise.
        * lib/freadptr.c (freadptr): Likewise.
        * lib/freadseek.c (freadptrinc): Likewise.
        * lib/fseeko.c (rpl_fseeko): Likewise.
        * lib/fseterr.c (fseterr): Likewise.
        * lib/fwritable.c (fwritable): Likewise.
        * lib/fwriting.c (fwriting): Likewise.
        * lib/fflush.c (clear_ungetc_buffer): Update comment.
        * m4/fpending.m4 (gl_PREREQ_FPENDING): Add a variant for Minix.

--- lib/fbufmode.c.orig Sun Jul 31 21:10:11 2011
+++ lib/fbufmode.c      Sun Jul 31 19:36:43 2011
@@ -50,6 +50,8 @@
   return _IOFBF;
 #elif defined __EMX__               /* emx+gcc */
   return fp->_flags & (_IOLBF | _IONBF | _IOFBF);
+#elif defined __minix               /* Minix */
+  return fp->_flags & (_IOLBF | _IONBF | _IOFBF);
 #elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
 # if HAVE___FLBF                    /* Solaris >= 7 */
   if (__flbf (fp))
--- lib/fflush.c.orig   Sun Jul 31 21:10:11 2011
+++ lib/fflush.c        Sun Jul 31 21:08:54 2011
@@ -60,7 +60,7 @@
       fp->_ungetc_count = 0;
       fp->_rcount = - fp->_rcount;
     }
-# elif defined _IOERR               /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
+# elif defined _IOERR               /* Minix, AIX, HP-UX, IRIX, OSF/1, 
Solaris, OpenServer, mingw, NonStop Kernel */
   /* Nothing to do.  */
 # else                              /* other implementations */
   fseeko (fp, 0, SEEK_CUR);
--- lib/fpurge.c.orig   Sun Jul 31 21:10:11 2011
+++ lib/fpurge.c        Sun Jul 31 20:56:31 2011
@@ -91,6 +91,11 @@
   fp->_wcount = 0;
   fp->_ungetc_count = 0;
   return 0;
+# elif defined __minix              /* Minix */
+  fp->_ptr = fp->_buf;
+  if (fp->_ptr != NULL)
+    fp->_count = 0;
+  return 0;
 # elif defined _IOERR               /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
   fp->_ptr = fp->_base;
   if (fp->_ptr != NULL)
--- lib/freadable.c.orig        Sun Jul 31 21:10:11 2011
+++ lib/freadable.c     Sun Jul 31 20:12:43 2011
@@ -33,6 +33,8 @@
   return (fp_->_flags & (__SRW | __SRD)) != 0;
 #elif defined __EMX__               /* emx+gcc */
   return (fp->_flags & (_IORW | _IOREAD)) != 0;
+#elif defined __minix               /* Minix */
+  return (fp->_flags & _IOREAD) != 0;
 #elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
   return (fp->_flag & (_IORW | _IOREAD)) != 0;
 #elif defined __QNX__               /* QNX */
--- lib/freadahead.c.orig       Sun Jul 31 21:10:11 2011
+++ lib/freadahead.c    Sun Jul 31 21:05:34 2011
@@ -48,6 +48,10 @@
   /* equivalent to
      (fp->_ungetc_count == 0 ? fp->_rcount : fp->_ungetc_count - fp->_rcount) 
*/
   return (fp->_rcount > 0 ? fp->_rcount : fp->_ungetc_count - fp->_rcount);
+#elif defined __minix               /* Minix */
+  if ((fp_->_flags & _IOWRITING) != 0)
+    return 0;
+  return fp_->_count;
 #elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
   if ((fp_->_flag & _IOWRT) != 0)
     return 0;
--- lib/freading.c.orig Sun Jul 31 21:10:11 2011
+++ lib/freading.c      Sun Jul 31 20:13:24 2011
@@ -39,6 +39,8 @@
   return (fp_->_flags & __SRD) != 0;
 # elif defined __EMX__               /* emx+gcc */
   return (fp->_flags & _IOREAD) != 0;
+# elif defined __minix               /* Minix */
+  return (fp->_flags & _IOREADING) != 0;
 # elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
 #  if defined __sun                  /* Solaris */
   return (fp->_flag & _IOREAD) != 0 && (fp->_flag & _IOWRT) == 0;
--- lib/freadptr.c.orig Sun Jul 31 21:10:11 2011
+++ lib/freadptr.c      Sun Jul 31 21:06:28 2011
@@ -56,6 +56,14 @@
     abort ();
   *sizep = fp->_rcount;
   return fp->_ptr;
+#elif defined __minix               /* Minix */
+  if ((fp_->_flags & _IOWRITING) != 0)
+    return NULL;
+  size = fp_->_count;
+  if (size == 0)
+    return NULL;
+  *sizep = size;
+  return (const char *) fp_->_ptr;
 #elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
   if ((fp_->_flag & _IOWRT) != 0)
     return NULL;
--- lib/freadseek.c.orig        Sun Jul 31 21:10:11 2011
+++ lib/freadseek.c     Sun Jul 31 20:15:26 2011
@@ -42,6 +42,9 @@
 #elif defined __EMX__               /* emx+gcc */
   fp->_ptr += increment;
   fp->_rcount -= increment;
+#elif defined __minix               /* Minix */
+  fp_->_ptr += increment;
+  fp_->_count -= increment;
 #elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
   fp_->_ptr += increment;
   fp_->_cnt -= increment;
--- lib/fseeko.c.orig   Sun Jul 31 21:10:11 2011
+++ lib/fseeko.c        Sun Jul 31 20:58:41 2011
@@ -69,6 +69,9 @@
       && fp->_rcount == 0
       && fp->_wcount == 0
       && fp->_ungetc_count == 0)
+#elif defined __minix               /* Minix */
+  if (fp_->_ptr == fp_->_buf
+      && (fp_->_ptr == NULL || fp_->_count == 0))
 #elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
   if (fp_->_ptr == fp_->_base
       && (fp_->_ptr == NULL || fp_->_cnt == 0))
--- lib/fseterr.c.orig  Sun Jul 31 21:10:11 2011
+++ lib/fseterr.c       Sun Jul 31 19:44:06 2011
@@ -35,6 +35,8 @@
   fp_->_flags |= __SERR;
 #elif defined __EMX__               /* emx+gcc */
   fp->_flags |= _IOERR;
+#elif defined __minix               /* Minix */
+  fp->_flags |= _IOERR;
 #elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
   fp_->_flag |= _IOERR;
 #elif defined __UCLIBC__            /* uClibc */
--- lib/fwritable.c.orig        Sun Jul 31 21:10:11 2011
+++ lib/fwritable.c     Sun Jul 31 20:12:59 2011
@@ -33,6 +33,8 @@
   return (fp_->_flags & (__SRW | __SWR)) != 0;
 #elif defined __EMX__               /* emx+gcc */
   return (fp->_flags & (_IORW | _IOWRT)) != 0;
+#elif defined __minix               /* Minix */
+  return (fp->_flags & _IOWRITE) != 0;
 #elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
   return (fp->_flag & (_IORW | _IOWRT)) != 0;
 #elif defined __QNX__               /* QNX */
--- lib/fwriting.c.orig Sun Jul 31 21:10:11 2011
+++ lib/fwriting.c      Sun Jul 31 20:13:44 2011
@@ -33,6 +33,8 @@
   return (fp_->_flags & __SWR) != 0;
 #elif defined __EMX__               /* emx+gcc */
   return (fp->_flags & _IOWRT) != 0;
+#elif defined __minix               /* Minix */
+  return (fp->_flags & _IOWRITING) != 0;
 #elif defined _IOERR                /* AIX, HP-UX, IRIX, OSF/1, Solaris, 
OpenServer, mingw, NonStop Kernel */
   return (fp->_flag & _IOWRT) != 0;
 #elif defined __UCLIBC__            /* uClibc */
--- m4/fpending.m4.orig Sun Jul 31 21:10:11 2011
+++ m4/fpending.m4      Sun Jul 31 21:00:07 2011
@@ -1,4 +1,4 @@
-# serial 16
+# serial 17
 
 # Copyright (C) 2000-2001, 2004-2011 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
@@ -58,6 +58,9 @@
           '# emx+gcc'                                                   \
           'fp->_ptr - fp->_buffer'                                      \
                                                                         \
+          '# Minix'                                                     \
+          'fp->_ptr - fp->_buf'                                         \
+                                                                        \
           '# VMS'                                                       \
           '(*fp)->_ptr - (*fp)->_base'                                  \
                                                                         \
-- 
In memoriam Jean Jaurès <http://en.wikipedia.org/wiki/Jean_Jaurès>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]