#48088: proposed improvements to port:qt5-mac --------------------------+-------------------------------- Reporter: rjvbertin@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: Resolution: | Keywords: Port: qt5-mac | --------------------------+-------------------------------- Comment (by mcalhoun@…): There are allot of things to discuss, so here goes: = Easy Fixes and Changes (if necessary) = Whitespace changes, rewording comments, and changing code order for !''better readability!'':[[BR]] We can probably worry about these later. Right now, they just makes finding important changes harder. Renaming port to qt5:[[BR]] The name qt5-mac may not have been the optimal choice, but is it really a problem?[[BR]] What is wrong with {{{ support qt5-x11 {...} }}} in the Portfile if one so desires?[[BR]] Like the whitespace changes, I am trying to discern high priority problems from low priority. "[T]he docs subport should be renamed such that it comes last during an `upgrade outdated`":[[BR]] Is this a personal preference, or is there a problem? "use the code below ">>>..." instead of this block, which fails to populate qt_includes_dir completely.":[[BR]] Which header code is not properly installed? "what's the point in not optimising qmake?":[[BR]] {{{-no-optimized-qmake}}} is the default behavior.[[BR]] My default position is to use the default unless there is a compelling reason to change (see e.g. this (fixed) [https://bugreports.qt.io/browse/QTBUG-5986 bug]).[[BR]] Of course, reasonable people can easily disagree on what constitutes a "compelling reason." Do not explicitly set default options (e.g. {{{-qml-debug}}} and {{{-c++11}}}):[[BR]] This is a resonable point. Bugs:[[BR]] Changing {{{qt-project.org }}} to {{{qt.io}}} should definitely be done.[[BR]] Putting {{{reinplace ...}}} into a {{{post-patch}}} should be done (definitely a bug, although not one that has surfaced yet). "[T]he sqlite3 plugin ("sqlite") should be re-absorbed into the main port":[[BR]] Forgive me, but I am having a little difficulty understanding the concern.[[BR]] What is wrong with {{{depends_lib-append port:qt5-mac-sqlite3-plugin}}} if the plugin is necessary?[[BR]] Why would "moving the applications in question to their own port" be required?[[BR]] The reasons are "explained elsewhere."[[BR]] Is there a reference available? Remove pulseaudio dependency:[[BR]] This is a reasonable point.[[BR]] If few people or ports need pulseaudio support, it is probably best to create a variant. = Fundamental Issue(s) = I have not gone through every line of code in detail, but the rest of the proposed changes seem to revolve around moving header, library, and configuration files to different locations.[[BR]] I strongly believe installing Qt in one place is the best way to go. * It is the default behavior * If you download and install Qt, it all goes in one place, which means that it is probably better supported * Qt is a big piece of software and does not always like surprises (i.e. non-default behavior) * A simple example: without a patch, part of Qt assumes the library is {{{${qt_dir}/lib}}} no matter what the configure option {{{-libdir}}} is (see patch-shared.diff). * Another simple example: we have to clear the MacPorts variables (e.g. {{{configure.cflags}}}) to maintain consistency throughout the build. * From my own experience: Some time ago, QtCreator was regularly crashing. When I went back to the defaults, it worked correctly. I probably should have tracked down the error, but for the most part, I just want software installation to work smoothly so I can use it. * It is ''much'' easier to maintain. * Making significant changes to a port requires significant testing for every major (or not so major) upgrade. * This takes maintainer time (a precious commodity if ever there was one). * This delays upgrades. * The fewer changes that are made, the fewer things can go wrong. * It makes installing multiple versions of Qt trivial (#44193). There are, of course, a few disadvantages: * pkgconfig files are not found automatically. * Library and header files are not found automatically. * qmake is not found automatically * As noted earlier, it is not the same "scheme used by Linux distros." * Other problems of which I am unaware. I think the advantages outweigh the disadvantages. = Conclusion = Please forgive me for the long post, but many changes have been proposed, and I wanted to make sure all work was recognized.[[BR]] If I have missed or misunderstood any concerns, please feel free to correct me.[[BR]] I think Qt is a very useful piece of software, and it would be nice if we had a fully functioning version in MacPorts. -- Ticket URL: <https://trac.macports.org/ticket/48088#comment:3> MacPorts <https://www.macports.org/> Ports system for OS X