[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: porting stdioext to HP-NonStop
From: |
Joachim Schmitz |
Subject: |
RE: porting stdioext to HP-NonStop |
Date: |
Wed, 22 Dec 2010 16:47:50 +0100 |
Hi Bruno
Yes it does look similar to HP-UX, OSF/1, so wherever I could I copied that
code.
$ ./stdioext-flags
#define _IOERR 0x40
#define _IOREAD 0x80
#define _IOWRT 0x4
#define _IORW 0x100
#define _IORW 0x100
Very nice.
Downloaded, unpacked, modified gllib/stdio-impl.h as per above, configured,
compiled, checked, all 33 tests passed!
Time for checking I guess?
I once tried, but failed, can you give me a full testdir with all gnulib
features to run and check?
So that we can get this 'strange' platform sorted once and forever?
Bye, Jojo
-----Original Message-----
From: Bruno Haible [mailto:address@hidden
Sent: Wednesday, December 22, 2010 3:37 PM
To: Joachim Schmitz
Cc: address@hidden; 'Eric Blake'; 'Chet Ramey'
Subject: Re: porting stdioext to HP-NonStop
Hi Joachim,
> I believe I did this earlier and sent you some patches, back in early
> October this year and from my company email account (address@hidden),
> in connection with getting ACL support to work for HP-NonStop.
Yes, but there were too many TODOs in these patches, and you didn't use a
testdir with test suite at that time.
> I'm not sure how to go forward. 'make check' reports 4 failures, due to
> failed assertions:
> /usr/local/Floss/testdir-stdioext/gltests/test-freadable.c:52:
> assertion failed
> /usr/local/Floss/testdir-stdioext/gltests/test-freading.c:48:
> assertion failed
> /usr/local/Floss/testdir-stdioext/gltests/test-fwritable.c:41:
> assertion failed
> /usr/local/Floss/testdir-stdioext/gltests/test-fwriting.c:41:
> assertion failed
But it's interesting to see that your at some tests work.
> I found no hints in stdio.h about these (attached too, in the hope you
> can see something there)
Thanks for this attachment. The 'FILE' structure looks quite similar to the one
of AIX, HP-UX, and OSF/1. So there's a good chance that the code that we use
for AIX, HP-UX, IRIX, OSF/1, Solaris, OpenServer, mingw will also work on
NonStop Kernel.
> The Problem is I don't know that the proper values for _IORW, _IOREAD,
> _IOWRT are, for _IOERR I believe to have found it to be 64 on our
> platform by experiment.
Please run this program and send us the result:
=========================== stdioext-flags.c ===========================
#include <stdio.h>
int main()
{
FILE *fp;
int flags1, flags2, flags3, flags4, flags5, flags6, flags7;
int i;
char buf[80];
fp = fopen ("test1234", "w");
flags1 = fp->_flag;
fwrite ("foo", 1, 3, fp);
flags2 = fp->_flag;
for (i = 0; i < 10000; i++)
fwrite ("x", 1, 1, fp);
fclose (fp);
fp = fopen ("test1234", "r");
flags3 = fp->_flag;
fgetc (fp);
flags4 = fp->_flag;
close (fp->_file);
for (i = 0; i < 10000; i++)
fread (buf, 1, 1, fp);
flags5 = fp->_flag;
fclose (fp);
fp = fopen ("test1234", "r+w");
flags6 = fp->_flag;
fgetc (fp);
flags7 = fp->_flag;
printf ("#define _IOERR 0x%X\n", flags5 & ~flags4);
printf ("#define _IOREAD 0x%X\n", flags3);
printf ("#define _IOWRT 0x%X\n", flags1);
printf ("#define _IORW 0x%X\n", flags6);
printf ("#define _IORW 0x%X\n", flags7 & ~flags4);
return 0;
}
=======================================================================
For comparison, the output on AIX, Solaris, mingw:
#define _IOERR 0x20
#define _IOREAD 0x1
#define _IOWRT 0x2
#define _IORW 0x80
#define _IORW 0x80
On HP-UX:
#define _IOERR 0x20
#define _IOREAD 0x1
#define _IOWRT 0x2
#define _IORW 0x100
#define _IORW 0x100
On OSF/1:
#define _IOERR 0x0 /* this one is not correct */ #define _IOREAD 0x1 #define
_IOWRT 0x2 #define _IORW 0x100 #define _IORW 0x100
Then, please unpack the new tarball at
http://www.haible.de/bruno/gnu/testdir-stdioext.tar.gz
Replace the values in gllib/stdio-impl.h lines 80..83 with the values the
program produced, then configure, build, and "make check" this testdir.
Thanks!
Bruno
- Re: [bash-testers] Bash-4.2-beta available for FTP, Eric Blake, 2010/12/21
- Re: [bash-testers] Bash-4.2-beta available for FTP, Bruno Haible, 2010/12/21
- RE: [bash-testers] Bash-4.2-beta available for FTP, Joachim Schmitz, 2010/12/22
- Re: porting stdioext to HP-NonStop, Bruno Haible, 2010/12/22
- RE: porting stdioext to HP-NonStop,
Joachim Schmitz <=
- Re: porting stdioext to HP-NonStop, Bruno Haible, 2010/12/22
- RE: porting stdioext to HP-NonStop, Joachim Schmitz, 2010/12/23
- Re: <signal.h> on HP-NonStop, Bruno Haible, 2010/12/23
- RE: <signal.h> on HP-NonStop, Joachim Schmitz, 2010/12/23
- Re: <signal.h> on HP-NonStop, Bruno Haible, 2010/12/24
- Re: <signal.h> on HP-NonStop, Bruno Haible, 2010/12/24
- RE: <signal.h> on HP-NonStop, Joachim Schmitz, 2010/12/23
- list protocol [was: <signal.h> on HP-NonStop], Eric Blake, 2010/12/23
- Re: porting alignof to HP-NonStop, Bruno Haible, 2010/12/23
- RE: porting alignof to HP-NonStop, Joachim Schmitz, 2010/12/23