On Sat, Nov 24, 2018 at 12:01:48PM +0000, Stuart Henderson wrote:

> On 2018/11/24 09:45, Landry Breuil wrote:
> > On Sat, Nov 24, 2018 at 07:54:36AM +0100, Otto Moerbeek wrote:
> > > On Wed, Nov 21, 2018 at 01:19:27PM +0100, Otto Moerbeek wrote:
> > > 
> > > > Hi,
> > > > 
> > > > I am playing with boost contexts which is configured out by the current 
> > > > port.
> > > > I am able to make execution_context and fcontext work on amd64. The 
> > > > first
> > > > using a simple test program and the second using a non-trival program.
> > > > 
> > > > The only actual change in boost itself is to use a mmap(...
> > > > MMAP_STACK ...) for stack allocation.  So I like to enable the
> > > > disabled parts. They are not extensivly tested and some other parts
> > > > might need a patch too (there are several classes creating stacks).
> > > > 
> > > > At the moment I just like to know if I am taking the right approach
> > > > port-wise. So, any comments or advise?
> > > 
> > > Total silence.... remember I'm a total ports newbie, I really could
> > > use some guidance here. Is this the right approach for a port having
> > > arch specific features and plist?
> > 
> > That is the right approach in general, but for a leaf port. Here, lots
> > of other ports depend on boost, and stuff might pick up those new libs
> > on amd64 (or updates/new ports start relying on them), and then the same
> > stuff start breaking in subtle ways on other archs (few ppl cares about).
> 
> Yes exactly this... The approach would need to be :
> 
> build dependent ports (130-odd, many large/slow)
> 
> run "check-lib-depends" on the produced packages, see if the new libraries
> are picked up
> 
> if so, add arch-dependent bits to add the relevant libraries to WANTLIB
> 
> (and as they're not extensively tested, alert people to the ports which
> have picked this up and request further testing of these)
> 
> Additionally we need to watch imports/updates of ports using boost in the
> future to see if they start using these libraries otherwise builds will
> break (it's not so bad if it's amd64-only, but if all the "fast" arches
> gain support, we typically don't discover breakage in this form until
> it's time for release builds when it's too late to fix).
> 
> So the question is "is it worth it". Could be - this is a path to running
> some software (pdns-recursor comes to mind) which otherwise won't run on
> OpenBSD because we never got support for the ucontext.h functions ..
> 

pdns-recursor is the cause I'm looking into this. ucontext is not only
deprecated but actually removed by posix, I do not want to go that
road. So boost's fcontext remains and it is working properly on amd64
at least.

I could maybe go a more conservative approach and only enable boosts's
context lib. That's all I need, and the scope of potential breakage
will be more limited.

But first next step is building and basic tests on i386 and sparc64.

        -Otto

Reply via email to