From owner-freebsd-current Mon Oct 5 02:04:38 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id CAA06428 for freebsd-current-outgoing; Mon, 5 Oct 1998 02:04:38 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from cons.org (knight.cons.org [194.233.237.86]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id CAA06391 for ; Mon, 5 Oct 1998 02:04:16 -0700 (PDT) (envelope-from cracauer@cons.org) Received: (from cracauer@localhost) by cons.org (8.8.8/8.7.3) id LAA11610; Mon, 5 Oct 1998 11:03:18 +0200 (CEST) Message-ID: <19981005110317.A11593@cons.org> Date: Mon, 5 Oct 1998 11:03:17 +0200 From: Martin Cracauer To: Mike Smith , Terry Lambert Cc: Martin Cracauer , chuckr@mat.net, nate@mt.sri.com, osa@etrust.ru, current@FreeBSD.ORG Subject: Re: What about jdk-1.1.6 for FreeBSD-3.0-ELF ? References: <199810042007.NAA09600@usr08.primenet.com> <199810042054.NAA06534@dingo.cdrom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.93.1i In-Reply-To: <199810042054.NAA06534@dingo.cdrom.com>; from Mike Smith on Sun, Oct 04, 1998 at 01:54:34PM -0700 Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG In <199810042054.NAA06534@dingo.cdrom.com>, Mike Smith wrote: > You will notice, if you had been paying attention to the list of > missing library symbols recently posted, that the interface between the > Solaris Motif library and the Solaris C library involves a not > insubstantial number of very weird symbols. It might be feasible to > implement a compatibility library, but this would, naturally, suck. I thought about this before, but the implications are very far-reaching and I don't think its doable at all. For one, such a compatiblity library put around a shared library with a different API would cause every call from another library into the alien one to go through one pointer indirection more. The performance overhead will be much more than in the system call emulation environment. Then, I don't think there is any chance to provide emulation for all the alien libc interfaces the same way we do for system calls. The libc stuff involves much more, people may use undocumented features of libc and in the solaris case you face the additional problem that it has a finer graduation of shared libs (-lnsl -lsocket...). If at all doable, I think you have to pull in all shared libraries of the alien system that are used by the target library. That would mean you have two complete libcs in one running process. At least when threading is involved, this will bomb out quickly. Martin -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Martin Cracauer http://www.cons.org/cracauer Tel.: (private) +4940 5221829 Fax.: (private) +4940 5228536 Paper: (private) Waldstrasse 200, 22846 Norderstedt, Germany To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message