Re: Cannot build packages needing libevent with those needing libev for the same system

2017-11-17 Thread J. Hart

Thank you very much for your generous assistance and quick reply.
It turned out to be as you said.  I had actually been unaware that 
libevent had fairly different libevent-1.x and libevent-2.x packages.  
What I really needed was a libevent-1.x package.  What I ended up doing 
was building and installing the libev package first, and installing the 
libevent-1.x package over that, which overwrote the event.h file from 
libev and left the desired one from libevent-1.x


Everything else went perfectly after that.

With Thanks,

J. Hart

On 11/14/2017 10:49 AM, Marc Lehmann wrote:

On Mon, Nov 13, 2017 at 11:21:48PM -0500, "J. Hart"  wrote:

This function is defined in libevent.so, and declared for the compiler in
event2/event.h. Both of these objects are part of the libevent package (ex
libevent-2.0.22). The /usr/include/event.h header of the libevent package
conflicts with that of the libev package. The libev package does not define
the "event_base_loopbreak" function required, in this case, by Qt-5.9.2, and
the libev package cannot be installed as is along with the libevent package.
If the libevent/libev header conflict is not resolved, then the packages
requiring one of these must be patched.  This can be rather complicated,
particularly for large packages like Qt.   This would also have to be redone
for each new release.

The libevent 1 emulation is optional, you could embed libev without the
event.[ch] files.

It might be possible to supply an event_base_loopbreak function, although I
don't know if this is part of the libevent 1 API (the one libev emulates) or
libevent 2.

Maybe sth. like this (for event.c) works (this is not correct, so some
testing might be required):

int event_base_loopbreal (struct event_base *base)
{
  dLOOPbase;

  ev_break (EV_A_ EVBREAK_ONE);

  return 0;
}

However, using libevent2 for libevent functions and libev for libev
functions (by embedding only the liubev core parts) would probably be the
best solution.




___
libev mailing list
libev@lists.schmorp.de
http://lists.schmorp.de/mailman/listinfo/libev

Re: Cannot build packages needing libevent with those needing libev for the same system

2017-11-14 Thread Marc Lehmann
On Mon, Nov 13, 2017 at 11:21:48PM -0500, "J. Hart"  wrote:
> This function is defined in libevent.so, and declared for the compiler in
> event2/event.h. Both of these objects are part of the libevent package (ex
> libevent-2.0.22). The /usr/include/event.h header of the libevent package
> conflicts with that of the libev package. The libev package does not define
> the "event_base_loopbreak" function required, in this case, by Qt-5.9.2, and
> the libev package cannot be installed as is along with the libevent package.
> If the libevent/libev header conflict is not resolved, then the packages
> requiring one of these must be patched.  This can be rather complicated,
> particularly for large packages like Qt.   This would also have to be redone
> for each new release.

The libevent 1 emulation is optional, you could embed libev without the
event.[ch] files.

It might be possible to supply an event_base_loopbreak function, although I
don't know if this is part of the libevent 1 API (the one libev emulates) or
libevent 2.

Maybe sth. like this (for event.c) works (this is not correct, so some
testing might be required):

   int event_base_loopbreal (struct event_base *base)
   {
 dLOOPbase;

 ev_break (EV_A_ EVBREAK_ONE);

 return 0;
   }

However, using libevent2 for libevent functions and libev for libev
functions (by embedding only the liubev core parts) would probably be the
best solution.

-- 
The choice of a   Deliantra, the free code+content MORPG
  -==- _GNU_  http://www.deliantra.net
  ==-- _   generation
  ---==---(_)__  __   __  Marc Lehmann
  --==---/ / _ \/ // /\ \/ /  schm...@schmorp.de
  -=/_/_//_/\_,_/ /_/\_\

___
libev mailing list
libev@lists.schmorp.de
http://lists.schmorp.de/mailman/listinfo/libev