Stefan Bidigaray wrote:
I don't have a problem with your changes. Were you running into some
particular problem? The thing with GNUstep Make is that it does not
use the correct compiler variable for Objective-C sources. Instead of
using OBJCC it uses CC to compile ObjC files (at least, this was the
case the last time I checked), which is technically wrong.
Additionally, in theory, as long as the same runtime was being used,
CoreBase's C files could be compiled with a different compiler than
Base, seeing as it talks directly to the runtime.
To comment on Lubos' comment, CoreBase does currently require an
Objective-C compiler to support the ObjC -> C bridge. There are
plenty of .m files in the source. Ideally, these should one day be
moved to Base because they really do not belong in CoreBase. More
ideally, CoreBase and Base should merge one day so that all the glue
code could be simplified.
Indeed, Obj-C compiler is needed. Essentially with my change I am
following gnustep's base assumption that CC and OBJC are the same
compiler and it needs to be the obj-c one.
You are right that this is tecnically not perfect... perhaps we could
extend your configure to use OBJC and resort back to CC or the other way
around for a more flexible configuration. However since we support just
gcc and clang where the assumption is correct, it is perhaps overkill.
I just changed the "default" so that you compile with the same compiler
as the configured one: you need a valid runtime and the standard
compiler picked up might not have objc support. You can still override
CC and that will be used instead of make's config.
You just made a point to extend gnustep make :)
Riccardo
_______________________________________________
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev