Date: Wed, 21 Jun 2006 19:25:01 +0900 (JST) From: "Norikatsu Shigemura" <nork@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: <2692.219.127.74.121.1150885501.squirrel@mail.ninth-nine.com> In-Reply-To: <20060621121114.h6udocel5wsgg8sg@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>
next in thread | previous in thread | raw e-mail | index | archive | help
> 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.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#include <sys/types.h>
#include <sys/cdefs.h>
#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);
#include <string.h>
/*
* strcmp(3)
*/
GLIBC_COMPAT_2(strcmp, 2, 0);
int
GLIBC_SYMBOL_2(strcmp, 2, 0)
(const char *s1, const char *s2)
{
int ret;
ret = strcmp(s1, s2);
dprintf("strcmp(\"%s\", \"%s\") = %d", s1, s2, ret);
return ret;
}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
And Version.def, too.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# $FreeBSD$
GLIBC_2.0 {
strcmp;
:
}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2692.219.127.74.121.1150885501.squirrel>
