From owner-freebsd-ports@FreeBSD.ORG Thu Mar 11 02:01:06 2004 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 593B016A4CE for ; Thu, 11 Mar 2004 02:01:06 -0800 (PST) Received: from mailout04.sul.t-online.com (mailout04.sul.t-online.com [194.25.134.18]) by mx1.FreeBSD.org (Postfix) with ESMTP id EE62C43D3F for ; Thu, 11 Mar 2004 02:01:05 -0800 (PST) (envelope-from Alexander@Leidinger.net) Received: from fwd08.aul.t-online.de by mailout04.sul.t-online.com with smtp id 1B1Mzt-0005iH-00; Thu, 11 Mar 2004 11:01:01 +0100 Received: from Andro-Beta.Leidinger.net (ZZNSweZHoeX8zj1CYZ6vsIM4Zz7IVweHzwyrlA4MKsK3XgEsNFLAUz@[217.229.219.231]) by fmrl08.sul.t-online.com with esmtp id 1B1MzV-1uW4u00; Thu, 11 Mar 2004 11:00:37 +0100 Received: from Magellan.Leidinger.net (Magellan.Leidinger.net [192.168.1.1]) i2BA0bOU009337; Thu, 11 Mar 2004 11:00:37 +0100 (CET) (envelope-from Alexander@Leidinger.net) Received: from Magellan.Leidinger.net (netchild@localhost [127.0.0.1]) i2BA0aav004045; Thu, 11 Mar 2004 11:00:36 +0100 (CET) (envelope-from Alexander@Leidinger.net) Date: Thu, 11 Mar 2004 11:00:36 +0100 From: Alexander Leidinger To: "Dr. Richard E. Hawkins" Message-Id: <20040311110036.163675bd@Magellan.Leidinger.net> In-Reply-To: <20040310234916.GA25508@slytherin.ds.psu.edu> References: <20040303195716.GL57588@slytherin.ds.psu.edu> <20040304182123.464f684e@Magellan.Leidinger.net> <20040304204910.GA52768@slytherin.ds.psu.edu> <20040305010931.7a0ed8a8@Magellan.Leidinger.net> <20040310234916.GA25508@slytherin.ds.psu.edu> X-Mailer: Sylpheed version 0.9.9claws (GTK+ 1.2.10; i386-portbld-freebsd5.2) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Seen: false X-ID: ZZNSweZHoeX8zj1CYZ6vsIM4Zz7IVweHzwyrlA4MKsK3XgEsNFLAUz@t-dialin.net cc: freebsd-ports@freebsd.org Subject: Re: attempting to resucitate Lahey Fortran port X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Mar 2004 10:01:06 -0000 On Wed, 10 Mar 2004 18:49:16 -0500 "Dr. Richard E. Hawkins" wrote: > > I would use > > RUN_DEPENDS= ${LINUXBASE}/usr/bin/ld:${PORTSDIR}/devel/linux_devtools > > > This way you use the linux ld to link a program, so it will be an linux > > binary, not a FreeBSD binary. I don't know if this is intended. If you > > didn't have some special fixes like we have in the ifc and icc ports, I > > assume depending on linux_base is the right way to solve this issue. > > I'm not following here: ld comes from linux_devtools, not linux_base. If you want to produce linux binaries, depend upon linux_devtools. If you want to produce FreeBSD binaries, depend upon linux_base and write a wrapper for ld which "does the right thing". > I've looked at the ifc port, but there's a lot there. Is there just a > little bit of magic that I can borrow from that? I don't know. The ifc ports do what they do because they have to do it, to be able to produce native FreeBSD binaries. > Hmm, would that also turn it into executables that can be debugged on > FreeBSD? You should be able to debug them in both cases, you just have to use the right debugger (a linux one or a FreeBSD one, depending on the type of the executable). > > The default linux emulation is based upon the v7 ports (since a long > > time), so you should use the v7 linux_devtools port. If your port > > depends upon another linux_base version, it also needs to depend on a > > similar linux_devtools port. > > Hmm, plane old linux_base and linux_devtools seem to be v8 now. % grep PORTVERSION /usr/ports/emulators/linux_base/Makefile PORTVERSION= 7.1 But my last update of the ports tree is 3 days ago. > > linuxthreads is a FreeBSD library. It does threading similar to the way > > linux does it. So if your port doesn't produce native FreeBSD > > executables (because you don't do nasty tricks like the ifc and icc > > ports do), you can't use it. I think you need to lookup a linux pthreads > > lib somewhere. I can't give a better advise, as I don't know how lf95 > > fails in this regard. > > It flat out tries to start multiple linux threads. If libthreads just > provides a resource like that, rather than maps kernel calls to FreeBSD > calls, there's no point. The mapping of linux syscalls is done in the kernel, not in the userland. Bye, Alexander. -- I will be available to get hired in April 2004. http://www.Leidinger.net Alexander @ Leidinger.net GPG fingerprint = C518 BC70 E67F 143F BE91 3365 79E2 9C60 B006 3FE7