cartr / homebrew-qt4

Homebrew tap for Qt4 and dependent formulae on Sierra
BSD 2-Clause "Simplified" License
105 stars 42 forks source link

qt@4: Fix build on macOS 10.4 and 10.5 (Tiger and Leopard) #35

Closed cartr closed 6 years ago

cartr commented 7 years ago

This PR adds a patch to fix the Qt build on Leopard. It's based on this commit from Tigerbrew.

Closes #34.

devernay commented 7 years ago

Actually, I also made a set of patches for Tiger. I'll test the leopard build, but building from source using the compiler and SDK from https://github.com/devernay/xcodelegacy (I don't know how to install homebrew for leopard on a Sierra machine, is it even possible?)

devernay commented 7 years ago

HI Carter, there's one more tiger patch to add, which reverts Tiger compatibility to Webkit. once again, this doesn't break anything for other OS versions, but it really needs to be applied on tiger only. I documented the patch at the beginning of the file (this required digging up into webkit commits): https://github.com/devernay/TigerPorts/blob/qt4-487/aqua/qt4-mac/files/patch-webkit-tiger.diff

cartr commented 7 years ago

@devernay This project's qt-webkit@2.3 formula uses a newer version of WebKit than the one bundled with Qt 4, and unfortunately your patches do not apply cleanly to it.

You can download a tarball of the WebKit source we use here: https://download.kde.org/stable/qtwebkit-2.3/2.3.4/src/qtwebkit-2.3.4.tar.gz . Would it be possible for you to apply your fixes to that version and create a new patch file?

devernay commented 7 years ago

I'll take a look at it

devernay commented 7 years ago

I think that's too much work. I think even the Leopard code was removed from that version of qt-webkit. A first step would be to apply the patches from leopard-webkit https://sourceforge.net/projects/leopard-webkit but that's already a lot of work (the first step is to find the corresponding safari webkit version, I tried 536.28.1 but there are a lot of failures)

cartr commented 6 years ago

Closing due to inactivity.

devernay commented 6 years ago

Not inactivity, impossibility! Too much tiger code was removed from that separate webkit distribution. Only way to get webkit is to build the one bundled with qt4. Alternative solution: add an option to the formula to install the webkit from the qt distribution, make that option enabled by default on tiger, and make qt-webkit incompatible with a qt4 installed with that option.