[MacPorts] #69051: qt5.x on PowerPC: approaches to bypass broken Cocoa

MacPorts noreply at macports.org
Fri Jan 5 22:42:34 UTC 2024


#69051: qt5.x on PowerPC: approaches to bypass broken Cocoa
-------------------------------------------+------------------------
 Reporter:  barracuda156                   |      Owner:  (none)
     Type:  defect                         |     Status:  new
 Priority:  Normal                         |  Milestone:
Component:  ports                          |    Version:  2.8.1
 Keywords:  powerpc, leopard, snowleopard  |       Port:  qt5-qtbase
-------------------------------------------+------------------------
 I made some attempts to fix early `qt5` (qtbase) versions on PowerPC, and
 after sorting out what upstream has broken with build system itself plus
 some minor bugs I bumped into failures with Cocoa code (unsurprisingly so,
 to be honest).

 Now, the problem is that Cocoa was already broken in `qt4`, and Macports
 builds `qt4` as Carbon (which works nicely). However, Carbon was thrown
 away with `qt5` release, as well as support for Leopard.

 Given that it never worked to begin with, it is perhaps completely
 unrealistic to have it fixed in any version of Qt5, and arguably a waste
 of time to even try. What seems at least possible in principle are the
 following:

 1. Turn off Mac-specific stuff in .pro files which include respective
 directories and use generic Unix code. (Trivial effort, might work?)
 2. Build with whatever Mac-specific code is there, but use ad hoc fixes
 like it was done for SDL2 at some point. (Likely high effort, perhaps will
 end up defunct.)
 3. Restore Carbon code which was known to work fine. Caveat: if the design
 is not really modular and substantial amount of generic code refers to
 specific Cocoa functions, that will not work. If the task pretty much
 amounts to tracking down which chunks of code should go where and then
 copying those from 4.8.7 with some minor amendments, that should be doable
 with reasonable efforts: Qt4 has about 100 files which have fallbacks to
 Carbon and perhaps something like 400 instances of fallback code chunks
 altogether. Tracking down is itself a problematic task, since the codebase
 structure had been changed substantially, but it should be feasible.

 ''Perhaps'' aside of Cocoa stuff nothing in Qt5 is too broken and should
 build with minimal fixups.

 What do you think? What sounds more reasonable?

-- 
Ticket URL: <https://trac.macports.org/ticket/69051>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list