From owner-freebsd-current@FreeBSD.ORG Thu Jun 22 00:39:00 2006 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 706C116A479 for ; Thu, 22 Jun 2006 00:39:00 +0000 (UTC) (envelope-from kabaev@gmail.com) Received: from nz-out-0102.google.com (nz-out-0102.google.com [64.233.162.201]) by mx1.FreeBSD.org (Postfix) with ESMTP id 639B443D45 for ; Thu, 22 Jun 2006 00:38:59 +0000 (GMT) (envelope-from kabaev@gmail.com) Received: by nz-out-0102.google.com with SMTP id x3so292280nzd for ; Wed, 21 Jun 2006 17:38:57 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:date:from:to:cc:subject:message-id:in-reply-to:references:x-mailer:mime-version:content-type; b=mRWYvQdwr1JyHgaXt5DE7MNP4v9GSyfrP0U4X7XBa22jO1QUkn+s2NMeOvIpkH7rudQ+jPM+B3MWJicGoafOCtMO1v3jsre9TGagn7CYVIARP31xPdAKR4AM3i4W+wVlZDCGVq8mm+BefoF+SvKat2ibWi5Ql3kkGaBnB7pLgS4= Received: by 10.64.184.10 with SMTP id h10mr1954459qbf; Wed, 21 Jun 2006 17:38:57 -0700 (PDT) Received: from kan.dnsalias.net ( [24.63.93.195]) by mx.gmail.com with ESMTP id p4sm816542qba.2006.06.21.17.38.53; Wed, 21 Jun 2006 17:38:55 -0700 (PDT) Date: Wed, 21 Jun 2006 20:38:49 -0400 From: Alexander Kabaev To: Alexander Kabaev 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> <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> X-Mailer: Sylpheed-Claws 2.2.0 (GTK+ 2.8.17; i386-portbld-freebsd7.0) Mime-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_RGFqX/SjcJ6x.8Uq1urUqQy"; protocol="application/pgp-signature"; micalg=PGP-SHA1 X-Mailman-Approved-At: Thu, 22 Jun 2006 01:36:42 +0000 Cc: Alexander Leidinger , freebsd-current@FreeBSD.org, Norikatsu Shigemura Subject: Re: Linux-flashplugin7 & rtld - RFC X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Jun 2006 00:39:00 -0000 --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 wrote: > On Wed, 21 Jun 2006 19:25:01 +0900 (JST) > "Norikatsu Shigemura" wrote: >=20 > > > Quoting Norikatsu Shigemura (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 > > #include > >=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 > >=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--