[MacPorts] #27558: qt4-mac @4.7.1 adding 'framework' variants

MacPorts noreply at macports.org
Fri Dec 17 07:52:19 PST 2010


#27558: qt4-mac @4.7.1 adding 'framework' variants
------------------------------------+---------------------------------------
 Reporter:  youngtaek.oh@…          |       Owner:  michaelld@…           
     Type:  enhancement             |      Status:  new                   
 Priority:  Normal                  |   Milestone:                        
Component:  ports                   |     Version:  1.9.2                 
 Keywords:                          |        Port:  qt4-mac               
------------------------------------+---------------------------------------

Comment(by michaelld@…):

 In my "poll" from a while back, nobody cared whether Qt was installed as
 frameworks or as "normal" libraries -- they just want the port and those
 that depend on it to work correctly (and, I did lots of checking to make
 sure this was the case).  So, I really don't think anyone is going to
 complain about moving back to a framework install if that's the end result
 of this ticket -- again, so long as dependent ports work correctly.

 From the developer's point of view of the ports that depend on Qt4, almost
 all use PKGCONFIG, QMake, or CMake to determine *FLAGS and such -- so
 those ports would work correctly after rebuilding / reinstalling to use
 the framework Qt install.  There are a few ports that would need to be
 worked over to find / use the framework install, since they use a static
 configure script that expects one way or the other; there aren't many of
 these luckily.

 Really, the biggest issue is a convenience factor for me:  I need to
 manually check the Qt4 install to see if it is +debug or not; the easiest
 way to do this right now is to look for
 "${prefix}/lib/libQtCore_debug.dylib" (and then assume the rest of the
 libraries follow).  Moving to a framework install I'd look for
 "${prefix}/Library/Frameworks/QtCore/QtCore_debug" I think -- so, really
 not a big issue so long as I know what to be looking for.

 If I know that the Qt4 install is a framework, then I know where to look
 for libraries and headers; if I know it's a normal install then I also
 know where to look for libraries and headers.  If I don't know what type
 of install it is, I have to to some work to find those libraries and
 headers.  For headers, I can create a soft link from
 ${prefix}/include/QtFOO into the FOO Framework & that takes care of that
 issue.  But, I cannot do the same for libraries without creating the
 debug/release problem we're discussing.  Hence, if any changes are made
 it'll be a move to just a framework install w/o the option for regular --
 I'm trying to keep patches and extra coding to a minimum.

 Ideally, MacPorts would be able keep track of not just the +universal
 variant (as well as the install arch type(s)) but also +debug and any
 other variants one might think of & do this checking automatically.  For
 example, if qt4-mac were not installed as +debug but did provide a +debug
 variant, and I then tried to install py26-pyqt4 +debug, then 'port' would
 error out saying that the +debug variant dependency could not be met w/o
 forcing (e.g., via the "-f" flag) the reinstall of any dependent port that
 accepts +debug -- much as it does for universal and arch right now.  This
 would also hold for any other variant (e.g., +quartz, +x11, or whatever).
 Right now, port doesn't do this, so we have to work around this sort of
 checking manually.  Which then brings us back full circle to this issue:
 if we know where files are located, then this checking is simple.  If not,
 then the checking is more complex.  The same holds for some dependent
 ports (knowing where to find Qt4 makes our patches to the release code
 simpler).

-- 
Ticket URL: <https://trac.macports.org/ticket/27558#comment:14>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list