Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Jun 2006 20:38:49 -0400
From:      Alexander Kabaev <kabaev@gmail.com>
To:        Alexander Kabaev <kabaev@gmail.com>
Cc:        Alexander Leidinger <Alexander@Leidinger.net>, freebsd-current@FreeBSD.org, Norikatsu Shigemura <nork@FreeBSD.org>
Subject:   Re: Linux-flashplugin7 & rtld - RFC
Message-ID:  <20060621203849.4fcbbf22@kan.dnsalias.net>
In-Reply-To: <20060621085440.67f0800e@kan.dnsalias.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> <20060621085440.67f0800e@kan.dnsalias.net>

next in thread | previous in thread | raw e-mail | index | archive | help
--Sig_RGFqX/SjcJ6x.8Uq1urUqQy
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

On Wed, 21 Jun 2006 08:54:40 -0400
Alexander Kabaev <kabaev@gmail.com> wrote:

> On Wed, 21 Jun 2006 19:25:01 +0900 (JST)
> "Norikatsu Shigemura" <nork@FreeBSD.org> wrote:
>=20
> > > 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).
> >=20
> > I'm implementing like following codes to libc/libm/libpthread
> > on 7-current with SYMVER_ENABLED=3Dyes.
> >=20
> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > #include <sys/types.h>
> > #include <sys/cdefs.h>
> >=20
> > #define SYM_COMPAT(sym, impl, ver)              \
> >         __sym_compat(sym, impl, ver)
> > #define GLIBC_SYMBOL_2(sym, major, minor)       \
> >         GLIBC_##major##_##minor##_##sym
> > #define GLIBC_COMPAT_2(sym, major, minor)       \
> >         SYM_COMPAT(sym, GLIBC_SYMBOL_2(sym, major, minor), GLIBC_
> > ##major. ##minor);
> >=20
> > #include <string.h>
> >=20
> > /*
> >  * strcmp(3)
> >  */
> > GLIBC_COMPAT_2(strcmp, 2, 0);
> >=20
> > int
> > GLIBC_SYMBOL_2(strcmp, 2, 0)
> >         (const char *s1, const char *s2)
> > {
> >         int ret;
> >         ret =3D strcmp(s1, s2);
> >=20
> >         dprintf("strcmp(\"%s\", \"%s\") =3D %d", s1, s2, ret);
> >=20
> >         return ret;
> > }
> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> >=20
> > And Version.def, too.
> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > # $FreeBSD$
> >=20
> > GLIBC_2.0 {
> >     strcmp;
> >       :
> > }
> > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> >=20
> > _______________________________________________
> > freebsd-current@freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-current
> > To unsubscribe, send any mail to
> > "freebsd-current-unsubscribe@freebsd.org"
>=20
> Thanks for doing this. This strikes me as much more robust and clean
> way of doing things.
>=20
> --=20
> Alexander Kabaev
To clarify: createing our own libc and libm wrapper libraries which
provide symbols with proper versions is the way to go, NOT spamming
native libraries with junk symbols.

--=20
Alexander Kabaev

--Sig_RGFqX/SjcJ6x.8Uq1urUqQy
Content-Type: application/pgp-signature; name=signature.asc
Content-Disposition: attachment; filename=signature.asc

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (FreeBSD)

iD8DBQFEmeacQ6z1jMm+XZYRArtAAJ9RH3ccMYhG8KbRWVQ8uorA9/76FACgrjRX
hOA/ESUN4LT4ACJryVhd6zI=
=SBMS
-----END PGP SIGNATURE-----

--Sig_RGFqX/SjcJ6x.8Uq1urUqQy--



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