rodlie/cyan

Support MacOS X 10.5/10.6 (PPC)

Opened this issue ยท 20 comments

Or is Qt5 strictly required even now?

v1.0 probably worked in Qt4, don't remember (or care).

v1.0 probably worked in Qt4, don't remember (or care).

Thank you. Is there a source code for it? The earliest tag here is 1.2.0.

Yeah, not sure what have happened to the tags, everything before 1.2 is gone...... Very odd.

If you need Qt4 support just try one of the 1.2 tags, should not be much difference. Worst case you might need to change a couple of lines of code.

@rodlie Got it, thanks. Will try it.

So, most of the branches seems to have been "tainted", the only branch that can go all the way back to the first commit is 2021.Q1. I will need to figure out a solution to this.

https://github.com/rodlie/cyan/commits/2021.Q1/?after=56017947b104265afad38b1322c56b9437614455+1049

EDIT: no, that's also wrong. I seem to have lost pre 1.2 :(

And yes Qt4 was supported, I probably just removed it from cyan.pro.

Some updates.

In 2018 I did something stupid, I merged two projects. I had a project called pixelcore, that for some reason I renamed to Cyan2 and merged it into Cyan. This broke the history in this repo. I will try and find a disk with the old repo, but that might take a while.

But...

I originally made Cyan with my old GitHub user, but I didn't move the repo, so you can find the original Cyan 1 rc tags here: https://github.com/olear/cyan.

@rodlie Great, thank you very much!

P. S. Let me see if the current version can build with Qt4 (not much hope, tbh, but does not hurt trying), then I will go down sequentially.

The code should work (1.2 was mostly backend changes compared to 1.0), but the cyan.pro file will probably need some minor changes.

I will accept Qt4 changes as long as they stay compatible with Qt5+, I just don't have the time to check or support Qt4 anymore.

Also note that the next version of Cyan is located in the v3 folder (pre-alpha), I should be able to release something before end of summer.

@rodlie A quick update: 1.2.4, as expected, does not build with Qt4 directly (initial failures were easy to fix โ€“ missing Q_NULLPTR and QtMimeTypes, but then there are more down the road). But 1.0.0.RC2 builds fine with no patching and seems to work on PowerPC :)

Ok, good. So the goal is OSX 10.6?

I can check Qt4 compat the next time I'm doing test builds on my old iMac (supporting qt4 on older OSX is not a big issue).

Ok, good. So the goal is OSX 10.6?

Ideally 10.5, but personally I am happy with 10.6 either.

I can check Qt4 compat the next time I'm doing test builds on my old iMac (supporting qt4 on mac is not a big issue).

That would be awesome!

BTW, for QtMimeTypes this can be used with Qt4:
https://ports.macports.org/port/qt4-mimetypes

quick hack for qt4-mac: https://github.com/rodlie/cyan/tree/qt4-hack

Just a test.

@rodlie Wow, that worked!
cyan

BTW, the port is merged: https://github.com/macports/macports-ports/blob/7369de66968e925f17340d3c77feed88abf8156d/graphics/cyan/Portfile

Once we have a finalized version for Qt4, I will update it, dropping a fallback of 1.0.0.

Cool, note that the UI has some color issues etc (https://github.com/rodlie/cyan/blob/qt4-hack/src/cyan.cpp#L112), will look at it tomorrow (or when I get the time), and also actually fix the code not just hack it ;)

Also note that the qt4-hack branch is based on main, so 1.3ish.

Also note that the qt4-hack branch is based on main, so 1.3ish.

Yeah, I just used the commit to build.

Well, since Macports generally does not welcome commit-based ports unless that is necessary, I can just make the commit-based version for old (Qt4-using) systems, while retaining 1.2.4 for the rest until a new release.

One minor issue on 10.6: app icon is missing. Perhaps resolution too high or unsupported format with Qt4?

OpenMP can be supported on 10.5+, no issues with that; the only thing is that with gcc linking is done internally by the compiler to its own libgomp (and obviously LLVM libomp should not be used at the same time).

I will make a proper "backport" to Qt4, and I will do it to the 1.2 branch, so 1.2.5 will include Qt4 support (again).

One minor issue on 10.6: app icon is missing. Perhaps resolution too high or unsupported format with Qt4?

Noticed, probably need to generate a new icon or maybe it's not included(?).

OpenMP can be supported on 10.5+, no issues with that; the only thing is that with gcc linking is done internally by the compiler to its own libgomp (and obviously LLVM libomp should not be used at the same time).

Cyan does not use OpenMP, but ImageMagick does. The .pro file was/is for deployment, there I use a static ImageMagick and must link to OpenMP.