public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: Build of egcs-971105 on m68k-next-nextstep3 successful
@ 1997-11-13 18:07 Hermann Lauer
  0 siblings, 0 replies; 7+ messages in thread
From: Hermann Lauer @ 1997-11-13 18:07 UTC (permalink / raw)
  To: egcs, toon@moene.indiv.nluug.nl

Hello Toon,

I'd like to tell you some experiences with nextstep3.3:

> This is probably an error in the autoconfed -Defines because
> NextStep does define those constants, e.g. in
> /usr/include/bsd/sys/stat.h

No, this constants aren't defined in /usr/include/bsd/sys/stat.h:

...
#ifdef _POSIX_SOURCE
        #define S_IRUSR _S_IRUSR        /* read permission, owner */
        #define S_IRGRP 0000040         /* read permission, group */
        #define S_IROTH 0000004         /* read permission, other */
        #define S_IWUSR _S_IWUSR        /* write permission, owner */
        #define S_IWGRP 0000020         /* write permission, group */
        #define S_IWOTH 0000002         /* write permission, other */
        #define S_IXUSR _S_IXUSR        /* execute/search permission, */
                                        /* owner */
        #define S_IXGRP 0000010         /* execute/search permission, */
                                        /* group */
        #define S_IXOTH 0000001         /* execute/search permission, */
                                        /* other */
        #define S_IRWXU 0000700         /* read, write, execute */
                                        /* permissions, owner */
        #define S_IRWXG 0000070         /* read, write, execute */
                                        /* permissions, group */
        #define S_IRWXO 0000007         /* read, write, execute */
                                        /* permissions, other */

        #define S_ISBLK(mode)   (((mode) & (_S_IFMT)) == (_S_IFBLK))
        #define S_ISCHR(mode)   (((mode) & (_S_IFMT)) == (_S_IFCHR))
        #define S_ISDIR(mode)   (((mode) & (_S_IFMT)) == (_S_IFDIR))
        #define S_ISFIFO(mode)  (((mode) & (_S_IFMT)) == (_S_IFIFO))
        #define S_ISREG(mode)   (((mode) & (_S_IFMT)) == (_S_IFREG))
#endif /* _POSIX_SOURCE */
....

The point is the #ifdef _POSIX_SOURCE.
NeXTStep has no posix support - yes, it claims to have it but the libposix.a is
heavily broken ! (look at deja news for NeXTStep & posix if you like to hear
some opinions...)

So every serious program (as gcc etc.) must avoid the -posix option to cc
(=gcc2.5.8 or so), which in turn defines _POSIX_SOURCE while compiling.

So forget all part's of the NeXTStep headers in the #ifdef _POSIX_SOURCE -
of course, some of them are nevertheless correct and can give you hints how to
implement them.

BTW: NeXT seems to know about the broken posix support - in OpenStep the
libposix.a is omitted - but the headers still includes that parts ! :-(

Best is to treat NeXTStep as a 4.3 BSD System.

Hope this helps you a little bit.

Greetings

   Hermann


^ permalink raw reply	[flat|nested] 7+ messages in thread
* Re: Build of egcs-971105 on m68k-next-nextstep3 successful
@ 1997-11-13 17:04 Hermann Lauer
  1997-11-14  4:02 ` Toon Moene
  0 siblings, 1 reply; 7+ messages in thread
From: Hermann Lauer @ 1997-11-13 17:04 UTC (permalink / raw)
  To: egcs, toon@moene.indiv.nluug.nl

Hello Toon,

I'd like to tell you some experiences with nextstep3.3:

> This is probably an error in the autoconfed -Defines because
> NextStep does define those constants, e.g. in
> /usr/include/bsd/sys/stat.h

No, this constants aren't defined in /usr/include/bsd/sys/stat.h:

...
#ifdef _POSIX_SOURCE
        #define S_IRUSR _S_IRUSR        /* read permission, owner */
        #define S_IRGRP 0000040         /* read permission, group */
        #define S_IROTH 0000004         /* read permission, other */
        #define S_IWUSR _S_IWUSR        /* write permission, owner */
        #define S_IWGRP 0000020         /* write permission, group */
        #define S_IWOTH 0000002         /* write permission, other */
        #define S_IXUSR _S_IXUSR        /* execute/search permission, */
                                        /* owner */
        #define S_IXGRP 0000010         /* execute/search permission, */
                                        /* group */
        #define S_IXOTH 0000001         /* execute/search permission, */
                                        /* other */
        #define S_IRWXU 0000700         /* read, write, execute */
                                        /* permissions, owner */
        #define S_IRWXG 0000070         /* read, write, execute */
                                        /* permissions, group */
        #define S_IRWXO 0000007         /* read, write, execute */
                                        /* permissions, other */

        #define S_ISBLK(mode)   (((mode) & (_S_IFMT)) == (_S_IFBLK))
        #define S_ISCHR(mode)   (((mode) & (_S_IFMT)) == (_S_IFCHR))
        #define S_ISDIR(mode)   (((mode) & (_S_IFMT)) == (_S_IFDIR))
        #define S_ISFIFO(mode)  (((mode) & (_S_IFMT)) == (_S_IFIFO))
        #define S_ISREG(mode)   (((mode) & (_S_IFMT)) == (_S_IFREG))
#endif /* _POSIX_SOURCE */
....

The point is the #ifdef _POSIX_SOURCE.
NeXTStep has no posix support - yes, it claims to have it but the libposix.a is
heavily broken ! (look at deja news for NeXTStep & posix if you like to hear
some opinions...)

So every serious program (as gcc etc.) must avoid the -posix option to cc
(=gcc2.5.8 or so), which in turn defines _POSIX_SOURCE while compiling.

So forget all part's of the NeXTStep headers in the #ifdef _POSIX_SOURCE -
of course, some of them are nevertheless correct and can give you hints how to
implement them.

BTW: NeXT seems to know about the broken posix support - in OpenStep the
libposix.a is omitted - but the headers still includes that parts ! :-(

Best is to treat NeXTStep as a 4.3 BSD System.

Hope this helps you a little bit.

Greetings

   Hermann


^ permalink raw reply	[flat|nested] 7+ messages in thread
* Build of egcs-971105 on m68k-next-nextstep3 successful
@ 1997-11-11 23:05 Toon Moene
  1997-11-12 10:17 ` Jeffrey A Law
  0 siblings, 1 reply; 7+ messages in thread
From: Toon Moene @ 1997-11-11 23:05 UTC (permalink / raw)
  To: egcs

Hi,

I finally managed to completely build egcs-971105 (core, g77 and  
g++) on m68k-next-nextstep3.

Problem 1 is that fixincludes is not run on the directory  
/NextDeveloper/Headers, which is one of the first directories  
searched for header files on NextStep.

Problem 2 was that my version of patch didn't remove the now  
obsolete files in libstdc++, but created empty ones (as correctly  
diagnosed by Jeff and Kriang).

Unfortunately, I still can't really *test* the compilers, as  
dejagnu doesn't build on my system:

make[1]: Entering directory  
`/Users/toon/Unix/compilers/dejagnu-971028/tcl'
make[2]: Entering directory  
`/Users/toon/Unix/compilers/dejagnu-971028/tcl/unix'
gcc -c -g -O2  -I./../generic -I. -DUSEGETWD=1 -DHAVE_OPENDIR=1  
-DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_TMPNAM=1 -DNO_UNAME=1  
-DNO_DIRENT_H=1 -DNO_VALUES_H=1 -DNO_DLFCN_H=1 -DHAVE_UNISTD_H=1  
-DUSE_SGTTY=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1  
-DHAVE_TM_ZONE=1 -DHAVE_TM_GMTOFF=1 -DHAVE_TIMEZONE_VAR=1  
-DSTDC_HEADERS=1 -Dmode_t=int -Dpid_t=int -DHAVE_ST_BLKSIZE=1  
-DHAVE_SIGNED_CHAR=1 -DHAVE_SYS_IOCTL_H=1         
-DTCL_SHLIB_EXT=\".so\" ./tclUnixFCmd.c
./tclUnixFCmd.c: In function `TclpCreateDirectory':
./tclUnixFCmd.c:475: `S_IRUSR' undeclared (first use this function)
./tclUnixFCmd.c:475: (Each undeclared identifier is reported only once
./tclUnixFCmd.c:475: for each function it appears in.)
./tclUnixFCmd.c:475: `S_IWUSR' undeclared (first use this function)
./tclUnixFCmd.c:475: `S_IXUSR' undeclared (first use this function)
./tclUnixFCmd.c: In function `CopyFileAtts':
./tclUnixFCmd.c:877: storage size of `tval' isn't known
./tclUnixFCmd.c:881: `S_IRWXU' undeclared (first use this function)
./tclUnixFCmd.c:881: `S_IRWXG' undeclared (first use this function)
./tclUnixFCmd.c:881: `S_IRWXO' undeclared (first use this function)
make[2]: *** [tclUnixFCmd.o] Error 1

This is probably an error in the autoconfed -Defines because  
NextStep does define those constants, e.g. in  
/usr/include/bsd/sys/stat.h

HTH,
Toon.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~1997-11-14  4:02 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1997-11-13 18:07 Build of egcs-971105 on m68k-next-nextstep3 successful Hermann Lauer
  -- strict thread matches above, loose matches on Subject: below --
1997-11-13 17:04 Hermann Lauer
1997-11-14  4:02 ` Toon Moene
1997-11-11 23:05 Toon Moene
1997-11-12 10:17 ` Jeffrey A Law
1997-11-12 22:40   ` Toon Moene
1997-11-13 10:53     ` Jeffrey A Law

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).