On Wed, Jan 18, 2012 at 06:03:05PM +0100, Jochen Schmitt wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 18.01.2012 17:57, Andrew Haley wrote:
>
>> The issue was, that during thu build of gnustep-base I have got a
>> error messag which told me, that the file objc/objc-api.h was not
>> found.
>>
>> So I have ask upstream for support to solve this issue.
>
> Right, so it's probably not a gcc issue but a real bug in
> gnustep.
>
>
The cited file objc/objc-api.h was provided by the gcc-objc package and
was removed by gcc-4.7.0, so the reason for my issue depends on the
gcc-4.7.0 packages.
GCC 4.6 objc-api.h said:
/* This file declares the "traditional" GNU Objective-C Runtime API.
It is the API supported by older versions of the GNU Objective-C
Runtime. Include this file to use it.
This API is being replaced by the "modern" GNU Objective-C Runtime
API, which is declared in objc/runtime.h. The "modern" API is very
similar to the API used by the modern Apple/NeXT runtime.
The last version of GCC supporting the traditional API is GCC 4.6.
This file will not exist in later versions of GCC.
Because the two APIs have some conflicting definitions (in
particular, Method and Category are defined differently) you should
include either objc/objc-api.h (to use the traditional GNU
Objective-C Runtime API) or objc/runtime.h (to use the modern GNU
Objective-C Runtime API), but not both. */
so it is surprising that gnustep maintainers didn't bother to do anything
to move toward objc/runtime.h. And it surprises me that clang actually
didn't remove that header too, I'd have thought that Nicola Pero
removed it because it was gone in clang/llvm too.
Jakub