Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Jun 2006 12:39:09 -0400 (EDT)
From:      Daniel Eischen <deischen@freebsd.org>
To:        Alexander Leidinger <Alexander@Leidinger.net>
Cc:        freebsd-current@freebsd.org, Norikatsu Shigemura <nork@freebsd.org>
Subject:   Re: Linux-flashplugin7 & rtld - RFC
Message-ID:  <Pine.GSO.4.64.0606211204300.23942@sea.ntplx.net>
In-Reply-To: <20060621155053.d6lseiz8z4ow8wo8@netchild.homeip.net>
References:  <44986777.6070601@FreeBSD.org> <20060621061437.GA53019@fit.vutbr.cz> <ygeodwn2fea.wl%ume@mahoroba.org> <2265.211.18.249.19.1150871779.squirrel@mail.ninth-nine.com> <20060621121114.h6udocel5wsgg8sg@netchild.homeip.net> <2692.219.127.74.121.1150885501.squirrel@mail.ninth-nine.com> <20060621155053.d6lseiz8z4ow8wo8@netchild.homeip.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 21 Jun 2006, Alexander Leidinger wrote:

> Quoting Norikatsu Shigemura <nork@freebsd.org> (from Wed, 21 Jun 2006 
> 19:25:01 +0900 (JST)):
>
>>> Quoting Norikatsu Shigemura <nork@freebsd.org> (from Wed, 21 Jun 2006
>>> 15:36:19 +0900 (JST)):
>>>>> Nork-san says that it is hard to make LPW work on 7-CURRENT.  But, he
>>>>> is trying to make it work with another approach.
>>>> Yes, I'm working Userland COMPAT_LINUX technology[TM]:-).
>>> Can you be a little bit more verbose what this is? Just a high level
>>> overview. I'm curious since I have some ideas about some kind of
>>> cross-compatibility "something" too (a combination of objcopy, a
>>> liblinux2bsd and maybe some libmap stuff).
>> 
>> I'm implementing like following codes to libc/libm/libpthread
>> on 7-current with SYMVER_ENABLED=yes.
>
> [example]
>
> Ugh... I like parts of this (it's the same I thought about myself), but parts 
> of this are... not optimal in my opinion.
>
> I don't like to spam our libXXX to contain GLIBC symbols. First I feared that

I don't think that is the intent and I would oppose polluting
our base libraries with GLIBC symbols.  I think the proposed
solution was to make separate libraries with the GLIBC symbols
that just call out to our own libraries, and use libmap.conf
accordingly.  I have tried this months ago and think I ran
into the same problem that nork has run into -- the loader
doesn't load the mapped libraries because it thinks libc
(our own libc) is already loaded.

> Did you tried to put this into a liblinux2bsd? The idea I had was to try if 
> such a lib can be "attached" to e.g. linux flashplugin. Either with some 
> objcopy (or similar) stuff, by trying to link again (with liblinux2bsd), or 
> with libmap.conf. Another nice try is to have a program/script which does 
> some known obj* stuff with object files, libs and/or programs. The examples I 
> wanted to look at with this stuff are your linuxpluginwrapper, the 
> linuxthreads port, my icc port and maybe the ifc port (it's basically an 
> adoption of my icc port, but AFAIR there are some enhancements). All of them 
> contain already some kind of mappings between linux and bsd. And maybe a 
> combination of both ways (liblinux2bsd and a script which does obj* stuff) 
> could lead to a successfull assimilation of some linux-only stuff.

When I was playing around with trying to get linuxpluginwrapper to
work, I had scripts that parsed the undefined symbols from
flashplayer.so and automatically created a library with those
symbols (that called out to our own libc functions).  It wasn't
that hard to do, but I got side-tracked and never was able to
get rtld to load the mapped library.

-- 
DE



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.64.0606211204300.23942>