Subject: toolchain/24481: Failed building 1.6.2 on Linux
To: None <gnats-bugs@gnats.netbsd.org>
From: None <syn@sceen.net>
List: netbsd-bugs
Date: 02/18/2004 20:44:59
>Number:         24481
>Category:       toolchain
>Synopsis:       Failed building 1.6.2 on Linux
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    toolchain-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Feb 18 19:46:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator:     
>Release:        NetBSD 1.6.2
>Organization:
Richard Braun
>Environment:
Linux trinity 2.6.3-mm1 #1 Wed Feb 18 13:31:03 UTC 2004 i686 GNU/Linux
Architecture: i386
Machine: i386
>Description:

When trying to build NetBSD 1.6.2 on Linux using gcc 3.3.3, the compilation
process fails with this error :
cc -O -I/tmp/obj/tools/compat -I/tmp/obj/tools/compat/include  -I/home/fred/src/
tools/cat/../compat -DHAVE_CONFIG_H  -D_FILE_OFFSET_BITS=64  -c -o cat.lo.o /hom
e/fred/src/bin/cat/cat.c
/home/fred/src/bin/cat/cat.c:42: error: erreur d'analyse syntaxique before strin
g constant          
/home/fred/src/bin/cat/cat.c:42: attention : data definition has no type or stor
age class           
/home/fred/src/bin/cat/cat.c:50: error: erreur d'analyse syntaxique before strin
g constant          
/home/fred/src/bin/cat/cat.c:50: attention : data definition has no type or stor
age class           
/home/fred/src/bin/cat/cat.c: Dans la fonction  raw_args :
/home/fred/src/bin/cat/cat.c:263: error: `EFTYPE' undeclared (first use in this 
function)           
/home/fred/src/bin/cat/cat.c:263: error: (Each undeclared identifier is reported
 only once          
/home/fred/src/bin/cat/cat.c:263: error: for each function it appears in.)
*** Error code 1    

Sorry for the localized messages :-/.

Here is the code involved :
#ifndef lint
__COPYRIGHT(
"@(#) Copyright (c) 1989, 1993\n\
        The Regents of the University of California.  All rights reserved.\n");
#endif /* not lint */

I thought the escaped newline was the origin of the problem, but it seems that
the macro __COPYRIGHT isn't there, because cdefs.h hasn't been included. Using
gcc -E, it seems that the native cdefs.h is included (/usr/include/sys/cdefs.h).
This native header file has of course no such macro on Linux. I couldn't find
any sys/cdefs.h in the included directories.

>How-To-Repeat:
Build NetBSD 1.6.2 on Linux with gcc 3.3.
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: