[libdispatch-dev] [PATCH 05/17] more precise detection of blocks
Bobby Powers
bobbypowers at gmail.com
Mon Oct 19 14:08:55 PDT 2009
On Mon, Oct 19, 2009 at 2:41 PM, Jordan K. Hubbard <jkh at apple.com> wrote:
> It's the same on FreeBSD. What's still unclear is whether or not compiler_rt should be linked in automatically, or if that's being deliberately left as an OS-implementation detail (some folks might want to replace libgcc with compiler_rt, for example, or merge it in with their other runtime, in which case the compiler driver wouldn't need to know or care). Right now, however, it's kind of a PITA since -fblocks automatically adds a dependency on the runtime which the user has to explicitly know about.
well, with compiler-rt on linux, blocks is a separate shared library,
so even if you're replacing libgcc you still need to -lBlocksRuntime .
I don't see it as that big a deal, as if you're on freebsd or linux
and already adding compiler flags for blocks support, whats one or two
more (especially on linux, as compiler-rt isn't packaged for anything
so you're sure to be building it from source). maybe it would be
easier if compiler-rt had a pkgconfig file that could be used? I
could throw one of those together if it would help
Bobby
> - Jordan
>
> On Oct 19, 2009, at 11:19 AM, Bobby Powers wrote:
>
>> I probably should have qualified that I'm talking specifically about
>> blocks support on Linux
>>
>> On Mon, Oct 19, 2009 at 2:18 PM, Bobby Powers <bobbypowers at gmail.com> wrote:
>>> llvm-gcc/clang has the compiler support for blocks, but still needs
>>> the separate blocks runtime (provided by compiler-rt), which also
>>> provides the header files. This was mostly what people said earlier,
>>> but I thought it could be stated more clearly for posterity.
>>>
>>> yours,
>>> Bobby
>>>
>>> On Mon, Oct 19, 2009 at 3:21 AM, Paolo Bonzini <bonzini at gnu.org> wrote:
>>>>
>>>>> Unfortunately testing for HAVE_BLOCKS will be problematic in the
>>>>> libdispatch public headers as they need to be parsed by client
>>>>> projects which will not include the libdispatch config.h. That said,
>>>>> it should be fine to test for HAVE_BLOCKS in the libdispatch
>>>>> implementation (which is where the real compiler_rt dependency is
>>>>> anyway).
>>>>
>>>> Right. I was a bit confused here because no .h files are installed by the
>>>> Automake Makefile.am. I removed the patch temporarily from the public
>>>> repository and will leave this for later.
>>>>
>>>> Paolo
>>>> _______________________________________________
>>>> libdispatch-dev mailing list
>>>> libdispatch-dev at lists.macosforge.org
>>>> http://lists.macosforge.org/mailman/listinfo.cgi/libdispatch-dev
>>>>
>>>
>> _______________________________________________
>> libdispatch-dev mailing list
>> libdispatch-dev at lists.macosforge.org
>> http://lists.macosforge.org/mailman/listinfo.cgi/libdispatch-dev
>
>
More information about the libdispatch-dev
mailing list