From owner-freebsd-current Fri Jan 14 10:10:49 2000 Delivered-To: freebsd-current@freebsd.org Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by hub.freebsd.org (Postfix) with ESMTP id B10E715891 for ; Fri, 14 Jan 2000 10:05:08 -0800 (PST) (envelope-from bde@zeta.org.au) Received: from bde.zeta.org.au (beefcake.zeta.org.au [203.26.10.12]) by mailman.zeta.org.au (8.8.7/8.8.7) with ESMTP id FAA06360; Sat, 15 Jan 2000 05:04:58 +1100 Date: Sat, 15 Jan 2000 05:04:53 +1100 (EST) From: Bruce Evans X-Sender: bde@alphplex.bde.org To: John Polstra Cc: current@FreeBSD.ORG Subject: Re: RFC: buildworld breakage due to cross-tools/libc/mktemp. In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Wed, 12 Jan 2000, John Polstra wrote: > Jason Evans wrote: > > > 2) Make a separate copy of mktemp.c to remove the internal dependency. > > I think this is the best approach -- likewise for getobjformat.c, I agree. egcs provided "mkstemp.c" to handle the problem, but this didn't work on Warner's system because he had mkstemps() in libc (mkstemp.c actually implements mkstemps()) and there is a linker bug that breaks elf static linkage (library functions can only be replaced by functions of the same size?). The "fix" was to add mkstemps() to the -current libc and not use the egcs version. Three or four subsequent "fixes" led to the current evil one. gcc has complicated things a little by moving mkstemp.c to a version of libiberty which we don't have. Reaching out to the libiberty tree is only slightly better than reaching out to the libc tree. Anyway, the main problem is yours to fix in ld :-). Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message