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>