Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Apr 2002 16:54:21 +0300
From:      Ruslan Ermilov <ru@FreeBSD.ORG>
To:        Dag-Erling Smorgrav <des@FreeBSD.ORG>
Cc:        current@FreeBSD.ORG, Mike Barcroft <mike@FreeBSD.ORG>, "David O'Brien" <obrien@FreeBSD.ORG>
Subject:   Re: alpha tinderbox failure
Message-ID:  <20020412135421.GC27751@sunbay.com>
In-Reply-To: <200204111654.g3BGsmc9069057@beast.freebsd.org>
References:  <200204111654.g3BGsmc9069057@beast.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--9Ek0hoCL9XbhcSqy
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

I see the same breakage here.

The breakage has nothing to do with -Werror.  Recent commit by
Mike Barcroft to sys/*/endian.h is the culprit.

But the actual problem is with gdb.  After a lot of experimenting
I've found that contrib/gdb.291/gdb/defs.h includes "nm.h"
(gnu/usr.bin/binutils/gdb/${MACHINE_ARCH}/nm.h) which are too
different between i386 and alpha.  In the i386 case, "nm.h"
includes <sys/types.h> which exposes __BSD_VISIBLE (see how
these affect the *_ENDIAN macros in sys/*/endian.h).  But not
in the alpha case.  Applying this patch exposes the same bug
on i386:

%%%
Index: nm.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /home/ncvs/src/gnu/usr.bin/binutils/gdb/i386/nm.h,v
retrieving revision 1.10
diff -u -p -r1.10 nm.h
--- nm.h	17 Aug 2000 16:27:26 -0000	1.10
+++ nm.h	12 Apr 2002 13:36:40 -0000
@@ -133,7 +133,9 @@ extern int kernel_writablecore;
   if (!strcmp(STR, "kgdb")) \
      kernel_debugging =3D 1;
=20
+#if 0
 #include <sys/types.h>
+#endif
 #include <sys/ptrace.h>
=20
 #ifdef PT_GETDBREGS
%%%

The solution is to fix defs.h:

%%%
Index: defs.h
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /home/ncvs/src/contrib/gdb.291/gdb/defs.h,v
retrieving revision 1.3
diff -u -p -r1.3 defs.h
--- defs.h	11 Apr 2001 16:15:19 -0000	1.3
+++ defs.h	12 Apr 2002 13:53:37 -0000
@@ -841,6 +841,8 @@ extern void free ();
=20
 #ifdef HAVE_ENDIAN_H
 #include <endian.h>
+#else
+#include <sys/types.h>
 #endif
=20
 #if !defined (BIG_ENDIAN)
%%%

On Thu, Apr 11, 2002 at 09:54:48AM -0700, Dag-Erling Smorgrav wrote:
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/symmisc.c: In function `maintenance_print_=
symbols':
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/symmisc.c:540: warning: assignment makes p=
ointer from integer without a cast
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/symmisc.c: In function `maintenance_print_=
psymbols':
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/symmisc.c:777: warning: assignment makes p=
ointer from integer without a cast
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/symmisc.c: In function `maintenance_print_=
msymbols':
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/symmisc.c:925: warning: assignment makes p=
ointer from integer without a cast
> In file included from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/types.h:49,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdb/../../../../contrib/gdb.291/gdb/symtab.c:40:
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:64: warning: `LITTLE_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:851: warning: this is the location =
of the previous definition
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:65: warning: `BIG_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:847: warning: this is the location =
of the previous definition
> In file included from wait.h:93,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdb/../../../../contrib/gdb.291/gdb/target.c:32:
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:64: warning: `LITTLE_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:851: warning: this is the location =
of the previous definition
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:65: warning: `BIG_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:847: warning: this is the location =
of the previous definition
> In file included from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/types.h:49,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdb/../../../../contrib/gdb.291/gdb/thread.c:35:
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:64: warning: `LITTLE_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:851: warning: this is the location =
of the previous definition
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:65: warning: `BIG_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:847: warning: this is the location =
of the previous definition
> In file included from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/types.h:49,
>                  from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/time.h:40,
>                  from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/signal.h:45,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdb/../../../../contrib/gdb.291/gdb/signals.h:27,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdb/../../../../contrib/gdb.291/gdb/top.c:28:
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:64: warning: `LITTLE_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:851: warning: this is the location =
of the previous definition
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:65: warning: `BIG_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:847: warning: this is the location =
of the previous definition
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/top.c: In function `init_main':
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/top.c:3467: warning: assignment from incom=
patible pointer type
> In file included from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/types.h:49,
>                  from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/unistd.h:41,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdb/../../../../contrib/gdb.291/gdb/tracepoint.c:43:
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:64: warning: `LITTLE_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:851: warning: this is the location =
of the previous definition
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:65: warning: `BIG_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:847: warning: this is the location =
of the previous definition
> In file included from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/types.h:49,
>                  from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/unistd.h:41,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdb/../../../../contrib/gdb.291/gdb/utils.c:26:
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:64: warning: `LITTLE_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:851: warning: this is the location =
of the previous definition
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:65: warning: `BIG_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:847: warning: this is the location =
of the previous definition
> In file included from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/types.h:49,
>                  from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/fcntl.h:52,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdb/../../../../contrib/gdb.291/gdb/ser-unix.c:22:
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:64: warning: `LITTLE_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:851: warning: this is the location =
of the previous definition
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:65: warning: `BIG_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:847: warning: this is the location =
of the previous definition
> In file included from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/types.h:49,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdb/../../../../contrib/gdb.291/gdb/ser-tcp.c:22:
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:64: warning: `LITTLE_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:851: warning: this is the location =
of the previous definition
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:65: warning: `BIG_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:847: warning: this is the location =
of the previous definition
> In file included from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/types.h:49,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdb/alpha/freebsd-nat.c:23:
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:64: warning: `LITTLE_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:851: warning: this is the location =
of the previous definition
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:65: warning: `BIG_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/../../../../contrib/gdb.291/gdb/defs.h:847: warning: this is the location =
of the previous definition
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/alpha/kvm-fbsd.c: In function `kcore_open':
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
/alpha/kvm-fbsd.c:218: warning: assignment makes pointer from integer witho=
ut a cast
> =3D=3D=3D> gnu/usr.bin/binutils/gdbserver
> In file included from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/types.h:49,
>                  from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/fcntl.h:52,
>                  from /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/de=
s/tinderbox/src/alpha/usr/include/sys/file.h:41,
>                  from /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gn=
u/usr.bin/binutils/gdbserver/../../../../contrib/gdb.291/gdb/gdbserver/remo=
te-utils.c:25:
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:64: warning: `LITTLE_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
server/../../../../contrib/gdb.291/gdb/defs.h:851: warning: this is the loc=
ation of the previous definition
> /tmp/des/obj/alpha/.amd_mnt/freefall/host/d/home/des/tinderbox/src/alpha/=
usr/include/machine/endian.h:65: warning: `BIG_ENDIAN' redefined
> /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binutils/gdb=
server/../../../../contrib/gdb.291/gdb/defs.h:847: warning: this is the loc=
ation of the previous definition
> *** Error code 1
>=20
> Stop in /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binu=
tils/gdbserver.
> *** Error code 1
>=20
> Stop in /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin/binu=
tils.
> *** Error code 1
>=20
> Stop in /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu/usr.bin.
> *** Error code 1
>=20
> Stop in /.amd_mnt/freefall/host/d/home/des/tinderbox/src/gnu.
> *** Error code 1
>=20
> Stop in /.amd_mnt/freefall/host/d/home/des/tinderbox/src.
> *** Error code 1
>=20
> Stop in /.amd_mnt/freefall/host/d/home/des/tinderbox/src.
> *** Error code 1
>=20
> Stop in /.amd_mnt/freefall/host/d/home/des/tinderbox/src.

--=20
Ruslan Ermilov		Sysadmin and DBA,
ru@sunbay.com		Sunbay Software AG,
ru@FreeBSD.org		FreeBSD committer,
+380.652.512.251	Simferopol, Ukraine

http://www.FreeBSD.org	The Power To Serve
http://www.oracle.com	Enabling The Information Age

--9Ek0hoCL9XbhcSqy
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (FreeBSD)
Comment: For info see http://www.gnupg.org

iD8DBQE8tucNUkv4P6juNwoRAh+1AJ9PSd9XlrU/PKoYmZJwvhFqh5uW4gCfThpP
k4n2QcpqydPac34J+Mc+rbc=
=tBTX
-----END PGP SIGNATURE-----

--9Ek0hoCL9XbhcSqy--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020412135421.GC27751>