gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: corebase runloop integration


From: Niels Grewe
Subject: Re: corebase runloop integration
Date: Tue, 4 Feb 2014 10:05:59 +0000

HI Luboš,

Am 04.02.2014 um 10:29 schrieb Luboš Doležel <address@hidden>:

> You're right, libdispatch would be great for this. But what I fear is that as 
> soon as I start working in that direction, someone will come and either start 
> complaining about a libdispatch dependency or Clang requirement once I dare 
> to use a block. And the last thing I would do is to write one worse 
> implementation for GCC and one nice implementation for Clang.

The ability to invoke blocks doesn’t really commit you to using clang (-base 
has support code to invoke blocks when compiled with GCC) you only need it when 
you want to create blocks (does CFRunLoop need to do that? I think it might 
not…). So the question is rather whether we could rely on a compatible 
libBlocksRuntime being reasonably widespread (libdispatch usually isn’t the 
issue, but you need the version libBlocksRuntime that exports is symbols weakly 
so that libobjc2 can override them). In other words: I don’t think 
backwards-compatibility is as important for corebase as it is for -base.

I have one comment about the 
‘weakly-load-NSCFRunLoop-if-corebase-is-also-linked’ thing: I think it’s a good 
idea in general, but how would we handle cases where you start up without 
corebase, and during runtime you load a bundle that is linked against it? That 
might be a bit tricky to get right…

Cheers,

Niels

PS: Thanks a lot for working on corebase! I especially like having the CFStream 
stuff available...


reply via email to

[Prev in Thread] Current Thread [Next in Thread]