From owner-cvs-all Mon Apr 8 21:13:20 2002 Delivered-To: cvs-all@freebsd.org Received: from mail.speakeasy.net (mail16.speakeasy.net [216.254.0.216]) by hub.freebsd.org (Postfix) with ESMTP id EB0F237B405 for ; Mon, 8 Apr 2002 21:13:13 -0700 (PDT) Received: (qmail 26218 invoked from network); 9 Apr 2002 04:13:12 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender ) by mail16.speakeasy.net (qmail-ldap-1.03) with DES-CBC3-SHA encrypted SMTP for ; 9 Apr 2002 04:13:12 -0000 Received: from laptop.baldwin.cx (john@laptop.baldwin.cx [192.168.0.4]) by server.baldwin.cx (8.11.6/8.11.6) with ESMTP id g394Dxv47436; Tue, 9 Apr 2002 00:13:59 -0400 (EDT) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.2 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <20020408210151.B18407@xor.obsecurity.org> Date: Tue, 09 Apr 2002 00:13:10 -0400 (EDT) From: John Baldwin To: Kris Kennaway Subject: Re: cvs commit: src/sys/sys ioccom.h Cc: "David E. O'Brien" , cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On 09-Apr-2002 Kris Kennaway wrote: > 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. No, I already said that I reverted the ()'s locally and it still failed to compile. Yes, I was editing /usr/include/sys/ioccom.h and not /sys/sys/ioccom.h. I also tried putting __P() back in, but it didn't build then either. I'm wondering if the pollution in screen's osdef.h is new? > Kris -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message