[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [Libevent-users] Something to consider for future
- To: libevent-users@xxxxxxxxxxxxx
- Subject: Re: [Libevent-users] Something to consider for future
- From: Nick Mathewson <nickm@xxxxxxxxxxxxx>
- Date: Tue, 7 Sep 2010 11:35:14 -0400
- Delivered-to: archiver@xxxxxxxx
- Delivered-to: libevent-users-outgoing@xxxxxxxx
- Delivered-to: libevent-users@xxxxxxxx
- Delivery-date: Tue, 07 Sep 2010 11:35:18 -0400
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:content-type:content-transfer-encoding; bh=peDHykG4B44DPD1inv5tH0tbk5hJEpqFzGnqEv/Hgg4=; b=v5R7SdwpE1dEUZyav1AMF0lgVL2qo2h88kgi+iPxTP5RfDnsMiWqDLJJCOqVtF9HKz fnS5MeiSLBHvr72+KaSbTbM58ANvuaFqXkm87DGfbDZDrwEkkpoDTQMfKAywZsgq31Qp 3dbuXHOtrZj+f3Mu6KfhVqSqqEkW5xUTfe+e4=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type :content-transfer-encoding; b=BOJ0IhsNuRyY5F9R+jXE8bYLMq8DwupIriuGcPDs6Ky/g2hU3lLUbXzE4XOT0bAL59 Nrsz0ZdpaslYa+NSypSa4AG/U0LQZImmpfQ90T8lKcjOGmph19B9B1L5N1co48JN/qAJ OlLDPwfrONhMlorcALybSKkfyRSfCu8vOjD+c=
- In-reply-to: <8229F4C5-5059-4461-9778-4B97E5141B75@xxxxxxxxxxxx>
- References: <8229F4C5-5059-4461-9778-4B97E5141B75@xxxxxxxxxxxx>
- Reply-to: libevent-users@xxxxxxxxxxxxx
- Sender: owner-libevent-users@xxxxxxxxxxxxx
Hi, Ralph!
On Tue, Sep 7, 2010 at 11:04 AM, Ralph Castain <rhc@xxxxxxxxxxxx> wrote:
[...]
> (b) we need to modify it somewhat to get things working correctly across the broad range of our installed base.
Any chances of getting the patches here upstreamed? "Working
correctly across a broad install base" sounds like a feature worth
merging into the main distribution. ;)
> It is my understanding that quite a few software packages also embed libevent in their distributions, so this is a fairly common problem. It would make life much easier, therefore, if you only declared the true public APIs as public symbols, defining all internal-only functions as "static".
Pretty much every symbol that's used only in a single module *is*
declared static right now. (If we missed some, that's worth fixing:
just send in a patch.) The remaining non-static symbols are ones
shared between modules, and of course C doesn't let you make those
static. The right solution here is probably to manually tell the
linker about what symbols to export and what symbols not to export.
On windows, this is the dllexport/dllimport stuff stuff. With gcc4 on
other platforms, this is the __attribute__((visibility(...))) stuff.
( http://gcc.gnu.org/wiki/Visibility )
I'd like to move this way in Libevent 2.1, but I'm not sure on the
timeframe, since it's a fair amount of work. If somebody commits to
writing up and testing the code here, that'll improve the odds of it
getting done.
peace,
--
Nick
***********************************************************************
To unsubscribe, send an e-mail to majordomo@xxxxxxxxxxxxx with
unsubscribe libevent-users in the body.