Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support MacOS X 10.5/10.6 (PPC) #115

Open
barracuda156 opened this issue Apr 21, 2024 · 20 comments
Open

Support MacOS X 10.5/10.6 (PPC) #115

barracuda156 opened this issue Apr 21, 2024 · 20 comments
Labels

Comments

@barracuda156
Copy link

Or is Qt5 strictly required even now?

@rodlie
Copy link
Owner

rodlie commented Apr 21, 2024

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

@rodlie rodlie closed this as completed Apr 21, 2024
@barracuda156
Copy link
Author

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.

@rodlie
Copy link
Owner

rodlie commented Apr 21, 2024

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.

@barracuda156
Copy link
Author

@rodlie Got it, thanks. Will try it.

@rodlie
Copy link
Owner

rodlie commented Apr 21, 2024

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.

@rodlie
Copy link
Owner

rodlie commented Apr 21, 2024

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.

@barracuda156
Copy link
Author

@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.

@rodlie
Copy link
Owner

rodlie commented Apr 21, 2024

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.

@barracuda156
Copy link
Author

@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 :)

@rodlie
Copy link
Owner

rodlie commented Apr 21, 2024

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).

@barracuda156
Copy link
Author

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

@rodlie rodlie changed the title Did it have Qt4-supporting version earlier? Support MacOS X 10.5/10.6 (PPC) Apr 21, 2024
@rodlie rodlie added the mac label Apr 21, 2024
rodlie added a commit that referenced this issue Apr 21, 2024
Just testing
@rodlie
Copy link
Owner

rodlie commented Apr 21, 2024

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

Just a test.

@rodlie rodlie reopened this Apr 21, 2024
@barracuda156
Copy link
Author

@rodlie Wow, that worked!
cyan

@barracuda156
Copy link
Author

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.

@rodlie
Copy link
Owner

rodlie commented Apr 21, 2024

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 ;)

@rodlie
Copy link
Owner

rodlie commented Apr 21, 2024

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

@barracuda156
Copy link
Author

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.

@barracuda156
Copy link
Author

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

@barracuda156
Copy link
Author

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).

@rodlie
Copy link
Owner

rodlie commented Apr 21, 2024

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants