From owner-freebsd-current Wed Jan 24 10:35:33 2001 Delivered-To: freebsd-current@freebsd.org Received: from fw.wintelcom.net (ns1.wintelcom.net [209.1.153.20]) by hub.freebsd.org (Postfix) with ESMTP id C721237B400; Wed, 24 Jan 2001 10:35:11 -0800 (PST) Received: (from bright@localhost) by fw.wintelcom.net (8.10.0/8.10.0) id f0OIZ6f14723; Wed, 24 Jan 2001 10:35:06 -0800 (PST) Date: Wed, 24 Jan 2001 10:35:06 -0800 From: Alfred Perlstein To: Dan Nelson Cc: Daniel Eischen , current@FreeBSD.ORG, ports@FreeBSD.ORG Subject: Re: HEADS UP: libc/libc_r changes require rebuild of threaded apps Message-ID: <20010124103505.C26076@fw.wintelcom.net> References: <20010124084058.S26076@fw.wintelcom.net> <20010124123147.A2215@dan.emsphone.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010124123147.A2215@dan.emsphone.com>; from dnelson@emsphone.com on Wed, Jan 24, 2001 at 12:31:48PM -0600 Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG * Dan Nelson [010124 10:32] wrote: > In the last episode (Jan 24), Daniel Eischen said: > > On Wed, 24 Jan 2001, Alfred Perlstein wrote: > > > * Daniel M. Eischen [010124 05:26] wrote: > > > > As discussed a few days ago, I've just committed the changes to libc > > > > and libc_r to allow them to be linked together via -lc_r. If you're > > > > running -current and have any threaded apps built using libc_r.so.5, > > > > you'll need to rebuild them without the -pthread option using -lc_r. > > > > > > > > For porters, the __FreeBSD_version has been bumped to 500016 to > > > > reflect the above change. > > > > > > This is ambiguous, can you provide old/new examples of how to > > > compile/link a single C source file? > > > > What's not clear ;-) Use -lc_r instead of -pthread. > > > > gcc -Wall -o foo foo.c -lc_r > > > > The old way was: > > > > gcc -Wall -D_THREAD_SAFE -o foo foo.c -pthread > > I thought the old way was just -pthread, and it would handle > everything. I did a quick scan of the devel/ and net/ branches of our > ports tree, and of 43 thread-using ports, 36 of the ports simply add > -pthread. Only 7 also add -D_THREAD_SAFE. > > The only usage of _THREAD_SAFE in /usr/include is redefinition of > feof, ferror, clearerr, and fileno to *_unlocked. -D_THREAD_SAFE used to (or still does) make various foo_r function prototypes available. -- -Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org] "I have the heart of a child; I keep it in a jar on my desk." To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message