kaiserfarrell / core-plot

Automatically exported from code.google.com/p/core-plot
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Restore compatibility for Leopard #606

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
I've successfully modified the CorePlot 1.3 sources to compile under Leopard to 
support an application that I have which runs under PowerPC and Intel. Is there 
any consideration toward still supporting these older platforms as long as 
CorePlot uses manual memory management? (Which it appears to still do).

Original issue reported on code.google.com by boisy.pi...@affectiva.com on 5 Nov 2013 at 4:55

GoogleCodeExporter commented 8 years ago
The Mac deployment target on the default branch is still 10.5. It requires 
newer SDKs to compile, but will still run on 10.5. I don't have an old version 
of Xcode to test any more, but if you want to contribute the changes you made 
to get it compile under older SDKs, attach a diff to this issue and I'll take a 
look.

I'm not sure how much longer this will be supported. The 2.0 branch requires 
10.7 to get support for ARC, blocks, and zeroing weak pointers. It will 
probably be at least a few months before we are ready to merge and release 2.0.

Original comment by eskr...@mac.com on 6 Nov 2013 at 1:36

GoogleCodeExporter commented 8 years ago
Thanks for your willingness to accept my work. Even if PPC and Snow Leopard 
support stop just prior to 2.0, it may still be helpful to others supporting 
older platforms.

I went ahead and downloaded CorePlot 1.4 and did the adaptation there, since it 
was the latest release. The patch file I'm supplying will allow building of 
CorePlot on 10.5 for PPC/i386 using Xcode 3.2.6 under Snow Leopard.

The changes I made to the framework were to deal with compiler issues, methods 
that aren't available in Leopard, etc. There were also a lot of 64-bit to 
32-bit warnings I had to deal with by casting floating point literals to float 
(e.g. CGFloat x = 0.0 had to become CGFloat x = (float)0.0)

I've attached a patch file that I created with the following command:

diff -rupN ~/Downloads/CorePlot_1.4/Source/framework 
CorePlot_1.4_Leopard/Source/framework > coreplot1_4_leopard.patch

I focused just on the Source/framework folder where I made the changes. I did 
not touch any of the examples.

Thanks again for making a great framework. I hope this is useful. Let me know 
if you have any questions or if I can assist in any way.

Original comment by bo...@toughmac.com on 16 Nov 2013 at 1:18

Attachments:

GoogleCodeExporter commented 8 years ago

Original comment by eskr...@mac.com on 16 Nov 2013 at 8:19

GoogleCodeExporter commented 8 years ago
I can't merge all of the changes in the attached patch. Specifically, the 
project file changes break compatibility with newer SDKs. Since supporting the 
newest systems is the priority, I left those changes out. Also, there were 
declarations for several Core Graphics functions that should be available on 
10.5. I'm not sure why those were causing problems. Everything else should be 
covered.

Please use "hg diff" for future patches. It makes loading the changes much 
easier.

Original comment by eskr...@mac.com on 16 Nov 2013 at 9:17

GoogleCodeExporter commented 8 years ago
This issue was closed by revision 145fd320f73c.

Original comment by eskr...@mac.com on 16 Nov 2013 at 9:17