Date: Mon, 8 Apr 2002 21:01:51 -0700 From: Kris Kennaway <kris@obsecurity.org> To: John Baldwin <jhb@FreeBSD.org> Cc: Kris Kennaway <kris@obsecurity.org>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org, "David E. O'Brien" <obrien@FreeBSD.org> Subject: Re: cvs commit: src/sys/sys ioccom.h Message-ID: <20020408210151.B18407@xor.obsecurity.org> In-Reply-To: <XFMail.20020408235150.jhb@FreeBSD.org>; from jhb@FreeBSD.org on Mon, Apr 08, 2002 at 11:51:50PM -0400 References: <20020408205017.A18187@xor.obsecurity.org> <XFMail.20020408235150.jhb@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] On Mon, Apr 08, 2002 at 11:51:50PM -0400, John Baldwin wrote: > > On 09-Apr-2002 Kris Kennaway wrote: > > On Mon, Apr 08, 2002 at 11:39:52PM -0400, John Baldwin wrote: > >> > >> On 09-Apr-2002 David E. O'Brien wrote: > >> > obrien 2002/04/08 19:22:14 PDT > >> > > >> > Modified files: > >> > sys/sys ioccom.h > >> > Log: > >> > Back out revision 1.11 which wrapped the ioctl prototype w/()'s. > >> > While it may have allowed the XFree86 4 port to build; it killed TONS > >> > of other ports. The XFree86 4 can be patched to not use its macro a lot > >> > easier than figuring how to deal with 1000 other now-broken ports. > >> > >> Actually, that isn't correct. For example, when compiling screen on my > >> ultra60, it whined because the auto* tools in their infinite wisdom (or lack > >> thereof) define ioctl as so in osdef.h: > >> > >> extern int ioctl __P((int, int, char *)); > > > > That's a hardcoded prototype in the screen source code, not something > > auto-generated by autoconf. Furthermore, screen seems to hard-code > > prototypes for *every* standard function instead of using the system > > headers. I fixed up these to use #includes, but screen also tries to > > redefine structures defined in the system headers so it's still badly > > broken. > > screen used to compile. :-P Was this broken in a recent upgrade that no one > bothered to check or something? It was broken by r1.11 of ioccom.h as stated, AFAICT. gcc apparently treats ioctl() and (ioctl)() as different prototypes. Kris [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (FreeBSD) Comment: For info see http://www.gnupg.org iD8DBQE8smeuWry0BWjoQKURAhqDAKCvu68FwmhmZpJGDN6C7doq6r0W8wCg480G 6XvOjgj8bpzW3IZfmW63cHQ= =1Unw -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020408210151.B18407>
