Date: Wed, 21 Jun 2006 08:54:40 -0400 From: Alexander Kabaev <kabaev@gmail.com> To: "Norikatsu Shigemura" <nork@FreeBSD.org> Cc: Alexander Leidinger <Alexander@Leidinger.net>, freebsd-current@FreeBSD.org, Norikatsu Shigemura <nork@FreeBSD.org> Subject: Re: Linux-flashplugin7 & rtld - RFC Message-ID: <20060621085440.67f0800e@kan.dnsalias.net> In-Reply-To: <2692.219.127.74.121.1150885501.squirrel@mail.ninth-nine.com> 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>
next in thread | previous in thread | raw e-mail | index | archive | help
--Sig_herCjKYDjgES1svtzhtE7.W
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable
On Wed, 21 Jun 2006 19:25:01 +0900 (JST)
"Norikatsu Shigemura" <nork@FreeBSD.org> wrote:
> > 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"
Thanks for doing this. This strikes me as much more robust and clean
way of doing things.
--=20
Alexander Kabaev
--Sig_herCjKYDjgES1svtzhtE7.W
Content-Type: application/pgp-signature; name=signature.asc
Content-Disposition: attachment; filename=signature.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (FreeBSD)
iD8DBQFEmUGTQ6z1jMm+XZYRAqbMAJ4njiUqvF476Z6GI/aYZta+jaD4rQCgioud
5METZ+UysgHD6QLoybG1Iyw=
=BKML
-----END PGP SIGNATURE-----
--Sig_herCjKYDjgES1svtzhtE7.W--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060621085440.67f0800e>
