From owner-freebsd-threads@FreeBSD.ORG Fri Jun 27 01:52:00 2003 Return-Path: Delivered-To: freebsd-threads@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 74C3737B401; Fri, 27 Jun 2003 01:52:00 -0700 (PDT) Received: from ns1.xcllnt.net (209-128-86-226.BAYAREA.NET [209.128.86.226]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2FE1B43FE3; Fri, 27 Jun 2003 01:51:59 -0700 (PDT) (envelope-from marcel@xcllnt.net) Received: from dhcp01.pn.xcllnt.net (dhcp01.pn.xcllnt.net [192.168.4.201]) by ns1.xcllnt.net (8.12.9/8.12.9) with ESMTP id h5R8pwDZ022586; Fri, 27 Jun 2003 01:51:58 -0700 (PDT) (envelope-from marcel@piii.pn.xcllnt.net) Received: from dhcp01.pn.xcllnt.net (localhost [127.0.0.1]) by dhcp01.pn.xcllnt.net (8.12.9/8.12.9) with ESMTP id h5R8pwhn043070; Fri, 27 Jun 2003 01:51:58 -0700 (PDT) (envelope-from marcel@dhcp01.pn.xcllnt.net) Received: (from marcel@localhost) by dhcp01.pn.xcllnt.net (8.12.9/8.12.9/Submit) id h5R8pwbG043069; Fri, 27 Jun 2003 01:51:58 -0700 (PDT) (envelope-from marcel) Date: Fri, 27 Jun 2003 01:51:58 -0700 From: Marcel Moolenaar To: Ruslan Ermilov Message-ID: <20030627085158.GA42350@dhcp01.pn.xcllnt.net> References: <20030627075607.GA42198@dhcp01.pn.xcllnt.net> <20030627080550.GA48342@sunbay.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20030627080550.GA48342@sunbay.com> User-Agent: Mutt/1.5.4i cc: threads@FreeBSD.org Subject: Re: Obsoleting libc_r: How to create compat links X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Jun 2003 08:52:00 -0000 On Fri, Jun 27, 2003 at 11:05:50AM +0300, Ruslan Ermilov wrote: > Funny thing: reading your commit mail, and right after that > receiving this message. :-) > > On Fri, Jun 27, 2003 at 12:56:07AM -0700, Marcel Moolenaar wrote: > > [Ruslan added for his insights] > > > > Ok, > > > > I decided to obsolete libc_r on ia64 so that I can de-pessimize the > > setjmp/longjmp code some time before 5.2 and have sufficient time to > > deal with problems due to not having libc_r. > > > > One thing we probably want to do is create compatibility links from > > libc_r* to libthr* or libkse*. At this time I libthr is tested on > > ia64, so I opt to have libc_r linked to libthr. What's the best way > > to do that, so that it can be used for other platforms in due time? > > > First off, symlinking won't help old binaries that were linked > dynamically with libc_r.so.X, but you're supposed to well know > that already. :-) Correct. I'm not worried about compatibility with previous releases and the likes, because ia64 is still tier 2. I want "cc -pthread" to work. > So, the only useful option that is left is to symlink the static > and dymanic libraries (.a and .so, but not .so.X), and this can > be done in libc_r/Makefile using SYMLINKS (for MACHINE_ARCH of > ia64 only). In libc_r/Makefile? Aren't we going to build libc_r first and then overwrite the intalled libc_r with symlinks? What about: Index: Makefile =================================================================== RCS file: /home/ncvs/src/lib/libthr/Makefile,v retrieving revision 1.3 diff -u -r1.3 Makefile --- Makefile 23 May 2003 09:48:20 -0000 1.3 +++ Makefile 27 Jun 2003 08:49:54 -0000 @@ -10,6 +10,13 @@ LIB=thr SHLIB_MAJOR= 1 DEBUG_FLAGS=-g + +.if ${MACHINE_ARCH} == "ia64" +SYMLINKS= libthr.a ${SHLIBDIR}/libc_r.a \ + libthr.so ${SHLIBDIR}/libc_r.so \ + libthr_p.a ${SHLIBDIR}/libc_r_p.a +.endif + CFLAGS+=-DPTHREAD_KERNEL -D_THREAD_SAFE CFLAGS+=-I${.CURDIR}/../libc/include -I${.CURDIR}/thread \ -I${.CURDIR}/../../include -- Marcel Moolenaar USPA: A-39004 marcel@xcllnt.net