|
From: | Riccardo Mottola |
Subject: | Re: ANN: PikoPixel pixel-art editor |
Date: | Sun, 20 Sep 2015 09:49:19 +0200 |
User-agent: | Mozilla/5.0 (Windows NT 5.1; rv:36.0) Gecko/20100101 Firefox/36.0 SeaMonkey/2.33.1 |
Hi Josh,first, compliments for writing an application and taking the time to port it over on GNUstep. A screenshot running on it would be a nice addition on the web-page too. Nice that you have done the effort of providing GS makefiles and the extra effort!
I haven't built your app yet though. Josh Freeman wrote:
I am at the moment trying to get it running on gcc with the gcc objc runtime. I know this isn't the supported constellation, but I would like to at least understand what features are missing in this setup.PikoPixel's implementation of method-swizzling doesn't work with the gcc runtime because the runtime's function, class_replaceMethod(), behaves differently than on the objc2 or Apple runtimes. That's the only issue I know of (though I didn't test much further on gcc after finding it), so in theory, a reimplementation of method-swizzling (in NSObject_PPUtilities_MethodSwizzling.m) that removed/reworked the class_replaceMethod() calls could allow PP to use the gcc runtime.
Interesting. I thought at first that you were using much Obj-C 2.0 code and ARC code, but then the webpage mentions 10.4 as supported Mac version, so a target that in theory GNUstep and also the GCC runtime should support well.
About everything which doesn't work of 10.4 should be *really* pretty much a bug now. But stuff in the runtime is a bit more tricky.
I kept an internal list with brief, 1-to-2-line descriptions of issues (now at about 17 items) that needs to be expanded into full bug reports on savannah when there's time - I wrote one up so far: http://savannah.gnu.org/bugs/?45442 . I'd be happy to send the raw list to you - or post it to the developer mailing list - if that would be useful.
Please do that. If you find the time to suggest a patch, it is always welcome. If you find a similar bug report existing you may also extend it instead of writing a new one.
Riccardo
[Prev in Thread] | Current Thread | [Next in Thread] |