← Back to team overview

kicad-developers team mailing list archive

Re: [RFC PATCH] No more boost::context

 

Fair enough, and it's nice to fix the boost issue. I suppose if support 
ever becomes an issue we can consider replacing it _then_.

On Thu, Jan 21, 2016 at 03:21:41PM +0100, Tomasz Wlostowski wrote:
> On 21.01.2016 15:03, Chris Pavlina wrote:
> > Hm, is this really something we want to get into? Nice to remove the 
> > dependency, but when something breaks in the future, do we have any/many 
> > developers who can support x86 assembly code?
> > 
> 
> Concerning the support: I can do that, but there is absolutely nothing
> to support. This library does just context switching and nothing else
> and it contains no original code. In fact, it's generated from
> boost::context by a script. It will never need an update unless:
> - We decide to support a completely new HW platform. Porting anything
> that boost::context already supports is trivial. I didn't include
> MIPS/PPC/Sparc/ARM platform files because I couldn't test if they work.
> - We change the compiler to something else than Clang/GCC.
> - Intel changes the instruction set of their CPUs.
> 
> > I really think that if we're going to have to support this, it should be 
> > something conceptually simpler, like an emulation of coroutines using a 
> > set of threads and locks.
> 
> Have a look at the discussion between Lorenzo, Kristian and Torsten.
> Emulating coroutines with threads can only bring more problems.
> 
> Cheers,
> Tom
> 
> 
> > 
> > On Thu, Jan 21, 2016 at 02:42:05PM +0100, Tomasz Wlostowski wrote:
> >> Hi,
> >>
> >> This patch replaces boost::context with a small library called
> >> libcontext (derived from boost::context sources). It drops the
> >> dependency on boost for the cost of one additional header file and cpp
> >> file (taking inspiration from ClipperLib).
> >>
> >> I've tested the new context switching code on Linux, OSX (El Capitan) &
> >> Windows (all OS 32-bit and 64-bit Intel). Supported compilers are GCC
> >> and Clang.
> >>
> >> Let me know if Kicad builds and works correctly on your platforms...
> >>
> >> Cheers,
> >> Tom
> 


References