Revision: 100149 https://trac.macports.org/changeset/100149 Author: michaelld@macports.org Date: 2012-11-30 12:29:49 -0800 (Fri, 30 Nov 2012) Log Message: ----------- qt4-mac : * update to 4.8.4_0. * remove temporary 4.8.4 patchfile. * update patchfiles for 4.8.4 changes. * link each .app's executable into ${prefix}/bin. * install non-framework ${prefix}/include/Qt/ headers, linked where possible to the actual header located in a framework. Modified Paths: -------------- trunk/dports/aqua/qt4-mac/Portfile trunk/dports/aqua/qt4-mac/files/patch-config.tests_unix_compile.test.diff trunk/dports/aqua/qt4-mac/files/patch-configure.diff Removed Paths: ------------- trunk/dports/aqua/qt4-mac/files/patch-4.8.4-osx-native-menu-state-fix.diff Modified: trunk/dports/aqua/qt4-mac/Portfile =================================================================== --- trunk/dports/aqua/qt4-mac/Portfile 2012-11-30 19:00:57 UTC (rev 100148) +++ trunk/dports/aqua/qt4-mac/Portfile 2012-11-30 20:29:49 UTC (rev 100149) @@ -11,8 +11,7 @@ name qt4-mac conflicts qt3 qt3-mac qt4-mac-devel -version 4.8.3 -revision 1 +version 4.8.4 categories aqua platforms macosx maintainers michaelld openmaintainer @@ -27,8 +26,8 @@ master_sites trolltech distname qt-everywhere-opensource-src-${version} -checksums sha1 bc352a283610e0cd2fe0dbedbc45613844090fcb \ - rmd160 fe56e5da874503a79d6f84a1e15460eba5a6feae +checksums sha1 f5880f11c139d7d8d01ecb8d874535f7d9553198 \ + rmd160 3c09a3b1411385d0917225f01ac2ff3a2ce83fda minimum_xcodeversions {8 2.5} @@ -216,11 +215,6 @@ patchfiles-append \ patch-tools_macdeployqt_shared_shared.cpp.diff -# (25) temporary fix for Mac menu state; will be removed with 4.8.4. - -patchfiles-append \ - patch-4.8.4-osx-native-menu-state-fix.diff - ############################################### # disable CCACHE for now (ticket #34856) @@ -508,6 +502,11 @@ if {[file exists ${SDK}]} { configure.args-append -sdk ${SDK} } + + # set which pkg-config to use + + configure.env-append PKG_CONFIG=${prefix}/bin/pkg-config + } post-configure { @@ -842,11 +841,29 @@ eval xinstall -m 644 [split ${files}] ${dest_dir} } - # Move .apps into the applications_dir + # Move .apps into the applications_dir, and link each .apps' + # executable back into ${qt_bins_dir} - xinstall -m 755 -d ${destroot}${qt_apps_dir} - foreach app [glob ${destroot}/${qt_bins_dir}/*.app] { - move ${app} ${destroot}${qt_apps_dir} + set dr_qt_apps_dir ${destroot}${qt_apps_dir} + set dr_qt_bins_dir ${destroot}${qt_bins_dir} + + xinstall -m 755 -d ${dr_qt_apps_dir} + foreach app [glob ${dr_qt_bins_dir}/*.app] { + + # remove the leading stuff + + set app [lindex [split ${app} /] end] + + # move the .app + + move ${dr_qt_bins_dir}/${app} ${dr_qt_apps_dir} + + # link the app's executable back + + set texe [strsed ${app} {g@\.app@@}] + ln -s ${qt_apps_dir}/${app}/Contents/MacOS/${texe} \ + ${dr_qt_bins_dir} + } # move tests to ${qt_data_dir} @@ -854,6 +871,46 @@ xinstall -m 755 -d ${destroot}${qt_data_dir} move ${destroot_qt}/tests/qt4 ${destroot}${qt_data_dir}/tests + # install ${qt_includes_dir}/Qt if not already and it exists in + # the build, for support of legacy projects + + if {![file exists ${destroot}${qt_includes_dir}/Qt] && + [file exists ${worksrcpath}/include/Qt]} { + + # copy the Qt headers directory + + copy ${worksrcpath}/include/Qt ${destroot}${qt_includes_dir} + + } + + # if ${qt_includes_dir}/Qt was installed, then replace each header + # with a link to its actual header when possible + + if {[file exists ${destroot}${qt_includes_dir}/Qt]} { + + foreach QtH [exec find ${destroot}${qt_includes_dir}/Qt | \ + sed -e "1d" -e "s@${destroot}${qt_includes_dir}/Qt/@@g"] { + + # find the header + + set tH [exec find ${destroot}${qt_frameworks_dir} -name ${QtH} | \ + sed -e "s@${destroot}@@g"] + + # if found ... + + if {${tH} != ""} { + + # remove this header + + file delete ${destroot}${qt_includes_dir}/Qt/${QtH} + + # link it to the found header + + ln -s ${tH} ${destroot}${qt_includes_dir}/Qt/${QtH} + + } + } + } } pre-activate { Deleted: trunk/dports/aqua/qt4-mac/files/patch-4.8.4-osx-native-menu-state-fix.diff =================================================================== --- trunk/dports/aqua/qt4-mac/files/patch-4.8.4-osx-native-menu-state-fix.diff 2012-11-30 19:00:57 UTC (rev 100148) +++ trunk/dports/aqua/qt4-mac/files/patch-4.8.4-osx-native-menu-state-fix.diff 2012-11-30 20:29:49 UTC (rev 100149) @@ -1,77 +0,0 @@ ---- src/gui/widgets/qmenu.cpp.orig -+++ src/gui/widgets/qmenu.cpp -@@ -2387,7 +2387,7 @@ void QMenu::changeEvent(QEvent *e) - if (d->tornPopup) // torn-off menu - d->tornPopup->setEnabled(isEnabled()); - d->menuAction->setEnabled(isEnabled()); --#ifdef Q_WS_MAC -+#if defined(Q_WS_MAC) && !defined(QT_MAC_USE_COCOA) - if (d->mac_menu) - d->setMacMenuEnabled(isEnabled()); - #endif ---- src/gui/widgets/qmenu_mac.mm.orig -+++ src/gui/widgets/qmenu_mac.mm -@@ -1554,6 +1554,7 @@ QMenuPrivate::syncSeparatorsCollapsible(bool collapse) - - - -+#ifndef QT_MAC_USE_COCOA - /*! - \internal - */ -@@ -1567,26 +1568,16 @@ void QMenuPrivate::setMacMenuEnabled(bool enable) - for (int i = 0; i < mac_menu->actionItems.count(); ++i) { - QMacMenuAction *menuItem = mac_menu->actionItems.at(i); - if (menuItem && menuItem->action && menuItem->action->isEnabled()) { --#ifndef QT_MAC_USE_COCOA - // Only enable those items which contains an enabled QAction. - // i == 0 -> the menu itself, hence i + 1 for items. - EnableMenuItem(mac_menu->menu, i + 1); --#else -- [menuItem->menuItem setEnabled:true]; --#endif - } - } - } else { --#ifndef QT_MAC_USE_COCOA - DisableAllMenuItems(mac_menu->menu); --#else -- NSMenu *menu = mac_menu->menu; -- for (NSMenuItem *item in [menu itemArray]) { -- [item setEnabled:false]; -- } --#endif - } - } -+#endif - - /*! - \internal -@@ -1744,6 +1735,7 @@ QMenuBarPrivate::QMacMenuBarPrivate::syncAction(QMacMenuAction *action) - [item setSubmenu: submenu]; - [submenu setTitle:qt_mac_QStringToNSString(qt_mac_removeMnemonics(action->action->text()))]; - syncNSMenuItemVisiblity(item, visible); -+ syncNSMenuItemEnabled(item, action->action->isEnabled()); - #endif - if (release_submenu) { //no pointers to it - #ifndef QT_MAC_USE_COCOA -@@ -1846,6 +1838,7 @@ OSMenuRef QMenuBarPrivate::macMenu() - return 0; - } else if (!mac_menubar->menu) { - mac_menubar->menu = qt_mac_create_menu(q); -+ [mac_menubar->menu setAutoenablesItems:NO]; - ProcessSerialNumber mine, front; - if (GetCurrentProcess(&mine) == noErr && GetFrontProcess(&front) == noErr) { - if (!qt_mac_no_menubar_merge && !mac_menubar->apple_menu) { ---- src/gui/widgets/qmenu_p.h.orig -+++ src/gui/widgets/qmenu_p.h -@@ -327,7 +327,9 @@ public: - } - } *mac_menu; - OSMenuRef macMenu(OSMenuRef merge); -+#ifndef QT_MAC_USE_COCOA - void setMacMenuEnabled(bool enable = true); -+#endif - void syncSeparatorsCollapsible(bool collapsible); - static QHash<OSMenuRef, OSMenuRef> mergeMenuHash; - static QHash<OSMenuRef, QMenuMergeList*> mergeMenuItemsHash; Modified: trunk/dports/aqua/qt4-mac/files/patch-config.tests_unix_compile.test.diff =================================================================== --- trunk/dports/aqua/qt4-mac/files/patch-config.tests_unix_compile.test.diff 2012-11-30 19:00:57 UTC (rev 100148) +++ trunk/dports/aqua/qt4-mac/files/patch-config.tests_unix_compile.test.diff 2012-11-30 20:29:49 UTC (rev 100149) @@ -1,11 +1,11 @@ ---- config.tests/unix/compile.test.orig 2012-04-23 14:49:04.000000000 -0400 -+++ config.tests/unix/compile.test 2012-04-17 14:38:16.000000000 -0400 -@@ -68,7 +68,7 @@ - # Make sure output from possible previous tests is gone +--- config.tests/unix/compile.test.orig 2012-11-23 05:11:21.000000000 -0500 ++++ config.tests/unix/compile.test 2012-11-29 12:02:46.000000000 -0500 +@@ -69,7 +69,7 @@ rm -f "$EXE" "${EXE}.exe" --"$OUTDIR/bin/qmake" -nocache -spec "$QMKSPEC" "CONFIG+=$QMAKE_CONFIG" "CONFIG-=debug_and_release" "LIBS*=$LFLAGS" "LIBS+=$MAC_ARCH_LFLAGS" "INCLUDEPATH*=$INCLUDEPATH" "QMAKE_CXXFLAGS*=$CXXFLAGS" "QMAKE_CXXFLAGS+=$MAC_ARCH_CXXFLAGS" "QT_BUILD_TREE=$OUTDIR" "$SRCDIR/$TEST/$EXE.pro" -o "$OUTDIR/$TEST/Makefile" -+"$OUTDIR/bin/qmake" -nocache -spec "$QMKSPEC" "CONFIG+=$QMAKE_CONFIG" "CONFIG-=debug_and_release app_bundle" "LIBS*=$LFLAGS" "LIBS+=$MAC_ARCH_LFLAGS" "INCLUDEPATH*=$INCLUDEPATH" "QMAKE_CFLAGS*=$CXXFLAGS" "QMAKE_CFLAGS+=$MAC_ARCH_CXXFLAGS" "QMAKE_OBJECTIVE_CFLAGS*=$CXXFLAGS" "QMAKE_OBJECTIVE_CFLAGS+=$MAC_ARCH_CXXFLAGS" "QMAKE_CXXFLAGS*=$CXXFLAGS" "QMAKE_CXXFLAGS+=$MAC_ARCH_CXXFLAGS" "QT_BUILD_TREE=$OUTDIR" "$SRCDIR/$TEST/$EXE.pro" -o "$OUTDIR/$TEST/Makefile" + echo "QT_BUILD_TREE = $OUTDIR" > "$OUTDIR/$TEST/.qmake.cache" +-"$OUTDIR/bin/qmake" -spec "$QMKSPEC" "CONFIG+=$QMAKE_CONFIG" "CONFIG-=debug_and_release" "LIBS*=$LFLAGS" "LIBS+=$MAC_ARCH_LFLAGS" "INCLUDEPATH*=$INCLUDEPATH" "QMAKE_CXXFLAGS*=$CXXFLAGS" "QMAKE_CXXFLAGS+=$MAC_ARCH_CXXFLAGS" "$SRCDIR/$TEST/$EXE.pro" -o "$OUTDIR/$TEST/Makefile" ++"$OUTDIR/bin/qmake" -spec "$QMKSPEC" "CONFIG+=$QMAKE_CONFIG" "CONFIG-=debug_and_release app_bundle" "LIBS*=$LFLAGS" "LIBS+=$MAC_ARCH_LFLAGS" "INCLUDEPATH*=$INCLUDEPATH" "QMAKE_CFLAGS*=$CXXFLAGS" "QMAKE_CFLAGS+=$MAC_ARCH_CXXFLAGS" "QMAKE_OBJECTIVE_CFLAGS*=$CXXFLAGS" "QMAKE_OBJECTIVE_CFLAGS+=$MAC_ARCH_CXXFLAGS" "QMAKE_CXXFLAGS*=$CXXFLAGS" "QMAKE_CXXFLAGS+=$MAC_ARCH_CXXFLAGS" "$SRCDIR/$TEST/$EXE.pro" -o "$OUTDIR/$TEST/Makefile" if [ "$VERBOSE" = "yes" ]; then $MAKE Modified: trunk/dports/aqua/qt4-mac/files/patch-configure.diff =================================================================== --- trunk/dports/aqua/qt4-mac/files/patch-configure.diff 2012-11-30 19:00:57 UTC (rev 100148) +++ trunk/dports/aqua/qt4-mac/files/patch-configure.diff 2012-11-30 20:29:49 UTC (rev 100149) @@ -1,6 +1,6 @@ ---- configure.orig 2012-09-17 11:00:59.000000000 -0400 -+++ configure 2012-09-17 11:01:07.000000000 -0400 -@@ -920,6 +920,7 @@ +--- configure.orig 2012-11-23 05:11:23.000000000 -0500 ++++ configure 2012-11-29 12:08:53.000000000 -0500 +@@ -924,6 +924,7 @@ QT_INSTALL_DOCS= QT_INSTALL_HEADERS= QT_INSTALL_LIBS= @@ -8,7 +8,7 @@ QT_INSTALL_BINS= QT_INSTALL_PLUGINS= QT_INSTALL_IMPORTS= -@@ -1380,6 +1381,9 @@ +@@ -1392,6 +1393,9 @@ libdir) QT_INSTALL_LIBS="$VAL" ;; @@ -18,7 +18,7 @@ qtnamespace) QT_NAMESPACE="$VAL" ;; -@@ -3697,6 +3701,19 @@ +@@ -3685,6 +3689,19 @@ fi QT_INSTALL_LIBS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_LIBS"` @@ -104,7 +104,7 @@ if [ '!' -z "$CFG_SDK" ]; then echo "SDK_LFLAGS =-Wl,-syslibroot,$CFG_SDK" >>"$mkfile" echo "SDK_CFLAGS =-isysroot $CFG_SDK" >>"$mkfile" -@@ -5441,9 +5454,9 @@ +@@ -5511,9 +5524,9 @@ psql) if [ "$CFG_SQL_psql" != "no" ]; then # Be careful not to use native pg_config when cross building. @@ -117,7 +117,7 @@ fi [ -z "$QT_CFLAGS_PSQL" ] || QT_CFLAGS_PSQL="-I$QT_CFLAGS_PSQL" [ -z "$QT_LFLAGS_PSQL" ] || QT_LFLAGS_PSQL="-L$QT_LFLAGS_PSQL" -@@ -7097,16 +7110,8 @@ +@@ -7161,16 +7174,8 @@ # set the global Mac deployment target. This is overridden on an arch-by-arch basis # in some cases, see code further down @@ -136,7 +136,7 @@ # disable Qt 3 support on VxWorks, Symbian and INTEGRITY case "$XPLATFORM" in -@@ -7844,28 +7849,28 @@ +@@ -7910,28 +7915,28 @@ # env. variable. if [ "$PLATFORM_MAC" = "yes" ] && [ "$CFG_MAC_XARCH" != "no" ] ; then if echo "$CFG_MAC_ARCHS" | grep '\<x86\>' > /dev/null 2>&1; then @@ -181,7 +181,7 @@ fi fi -@@ -8618,6 +8623,7 @@ +@@ -8689,6 +8694,7 @@ QMAKE_RCC = \$\$QT_BUILD_TREE/bin/rcc QMAKE_QDBUSXML2CPP = \$\$QT_BUILD_TREE/bin/qdbusxml2cpp QMAKE_INCDIR_QT = \$\$QT_BUILD_TREE/include
participants (1)
-
michaelld@macports.org