On Mon, Mar 07, 2016 at 09:33:58PM +0000, Christian Weisgerber wrote: > I think you misunderstand GCC4_ARCHS. GCC4_ARCHS are the architectures > that have gcc 4.2.1 in base. It has nothing to do with the gcc4 > module, which covers gcc 4.9. And there is no reason not to build > -main and -gtk on architectures that lack gcc 4.9.
You are correct. A quick tour of bsd.own.mk has enlightened me. > I think you want something like this: > > ONLY_FOR_ARCHS-qt=${MODGCC4_ARCHS} > > MODULES= ... gcc4 > MODGCC4_ARCHS= [list of archs where gcc 4.9 is available] > > .if ${BUILD_PACKAGES:M-qt} > MODULES+= x11/qt5 > ... > .endif Thank you, naddy, for your kind patience with my port update. This one in particular has been a learning experience, and I appreciate the guidance. I've applied your recommendation, using ONLY_FOR_ARCHS from lang/gcc/4.9, as can be seen in this incremental diff: > diff --git a/net/transmission/Makefile b/net/transmission/Makefile > index 7f27b5b..7e0e213 100644 > --- a/net/transmission/Makefile > +++ b/net/transmission/Makefile > @@ -21,7 +21,8 @@ EXTRACT_SUFX= .tar.xz > > MULTI_PACKAGES= -main -gtk -qt > > -ONLY_FOR_ARCHS= ${GCC4_ARCHS} > +ONLY_FOR_ARCHS-qt= ${MODGCC4_ARCHS} > +MODGCC4_ARCHS= amd64 arm hppa i386 mips64 mips64el powerpc sparc > sparc64 > > PSEUDO_FLAVORS= no_gtk no_qt > FLAVOR?= The full diff against the ports tree follows. Index: Makefile =================================================================== RCS file: /systems/cvs/ports/net/transmission/Makefile,v retrieving revision 1.101 diff -u -p -r1.101 Makefile --- Makefile 30 Oct 2015 12:47:40 -0000 1.101 +++ Makefile 8 Mar 2016 01:09:50 -0000 @@ -4,14 +4,14 @@ COMMENT-main= BitTorrent command line an COMMENT-gtk= BitTorrent client with GTK+ interface COMMENT-qt= BitTorrent client with Qt interface -VER= 2.84 +VER= 2.92 DISTNAME= transmission-${VER} PKGNAME-main= transmission-${VER} PKGNAME-gtk= transmission-gtk-${VER} PKGNAME-qt= transmission-qt-${VER} -REVISION= 5 CATEGORIES= net HOMEPAGE= http://www.transmissionbt.com/ +MAINTAINER= Josh Grosse <j...@jggimi.homeip.net> # GPLv2+ PERMIT_PACKAGE_CDROM= Yes @@ -21,7 +21,8 @@ EXTRACT_SUFX= .tar.xz MULTI_PACKAGES= -main -gtk -qt -ONLY_FOR_ARCHS-qt=${GCC4_ARCHS} +ONLY_FOR_ARCHS-qt= ${MODGCC4_ARCHS} +MODGCC4_ARCHS= amd64 arm hppa i386 mips64 mips64el powerpc sparc sparc64 PSEUDO_FLAVORS= no_gtk no_qt FLAVOR?= @@ -41,14 +42,10 @@ WANTLIB-gtk= ${WANTLIB-common} ICE SM X1 pangocairo-1.0 pixman-1 png pcre pthread-stubs xcb \ xcb-render xcb-shm epoxy idn nghttp2 WANTLIB-qt= ${WANTLIB-common} ${MODQT_WANTLIB} \ - lib/qt4/QtDBus lib/qt4/QtGui lib/qt4/QtNetwork lib/qt4/QtXml \ - ICE SM X11 Xext Xi Xinerama Xrender \ - fontconfig freetype stdc++ + GL Qt5Core Qt5DBus Qt5Gui Qt5Network Qt5Widgets \ + fontconfig freetype estdc++ MODULES= devel/gettext textproc/intltool -.if ${BUILD_PACKAGES:M-qt} -MODULES+= x11/qt4 -.endif LIB_DEPENDS-common=${MODGETTEXT_LIB_DEPENDS} \ devel/libevent2 \ @@ -69,7 +66,9 @@ RUN_DEPENDS-qt= ${PKGNAME-main}:${BUILD_ USE_GMAKE= Yes CONFIGURE_STYLE=gnu + CONFIGURE_ARGS= --disable-shared \ + --enable-cli \ --enable-external-natpmp # -I$(top_builddir)/third-party is required, but configure fails to @@ -78,8 +77,15 @@ CONFIGURE_ARGS= --disable-shared \ CONFIGURE_ENV= CPPFLAGS="-I${WRKSRC}/third-party -I${LOCALBASE}/include" \ LDFLAGS="-L${LOCALBASE}/lib" -QMAKE_ARGS= QMAKE_CXX="${CXX}" \ - QMAKE_CXXFLAGS="${CXXFLAGS}" +.if ${BUILD_PACKAGES:M-qt} +MODULES+= x11/qt5 +MODQMAKE_PROJECTS= qt/qtr.pro +CONFIGURE_STYLE+= qmake +SEPARATE_BUILD= No +MODQMAKE_INSTALL_ROOT= ${PREFIX} +.else +MODULES+= gcc4 +.endif .if !${BUILD_PACKAGES:M-gtk} CONFIGURE_ARGS+=--without-gtk @@ -90,12 +96,10 @@ pre-patch: .if ${BUILD_PACKAGES:M-qt} post-build: - cd ${WRKSRC}/qt; qmake4 ${QMAKE_ARGS} qtr.pro; make ${MAKE_FLAGS} + ${MODQMAKE_build} post-install: - cd ${WRKSRC}/qt; make ${MAKE_FLAGS} install INSTALL_ROOT=${PREFIX} \ - INSTALL_FILE="${INSTALL_DATA}" \ - INSTALL_PROGRAM="${INSTALL_PROGRAM}" + ${MODQMAKE_install} ${INSTALL_DATA_DIR} ${PREFIX}/share/applications ${INSTALL_DATA} ${WRKSRC}/qt/transmission-qt.desktop \ ${PREFIX}/share/applications/ Index: distinfo =================================================================== RCS file: /systems/cvs/ports/net/transmission/distinfo,v retrieving revision 1.49 diff -u -p -r1.49 distinfo --- distinfo 21 Jul 2014 14:59:17 -0000 1.49 +++ distinfo 7 Mar 2016 11:01:47 -0000 @@ -1,2 +1,2 @@ -SHA256 (transmission-2.84.tar.xz) = qfwZNrTuQUrMcyraBOhDOdZ1XNDQl7y9Ebos/FQNues= -SIZE (transmission-2.84.tar.xz) = 3077836 +SHA256 (transmission-2.92.tar.xz) = Oo0EXDBq2ay3v4ESaTm5WUVTo4hILvoOwb+2eyKs018= +SIZE (transmission-2.92.tar.xz) = 3378116 Index: patches/patch-libtransmission_peer-mgr_c =================================================================== RCS file: patches/patch-libtransmission_peer-mgr_c diff -N patches/patch-libtransmission_peer-mgr_c --- patches/patch-libtransmission_peer-mgr_c 1 Jun 2014 11:37:06 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,18 +0,0 @@ -$OpenBSD: patch-libtransmission_peer-mgr_c,v 1.3 2014/06/01 11:37:06 naddy Exp $ - -time_t printing. - ---- libtransmission/peer-mgr.c.orig Sun May 18 22:52:12 2014 -+++ libtransmission/peer-mgr.c Mon May 26 20:51:06 2014 -@@ -2892,9 +2892,9 @@ rechokeDownloads (tr_swarm * s) - const double mult = MIN (timeSinceCancel, maxHistory) / (double) maxHistory; - const int inc = maxIncrease * mult; - maxPeers = s->maxPeers + inc; -- tordbg (s, "time since last cancel is %li -- increasing the " -+ tordbg (s, "time since last cancel is %lli -- increasing the " - "number of peers we're interested in by %d", -- timeSinceCancel, inc); -+ (long long)timeSinceCancel, inc); - } - } - Index: patches/patch-qt_mainwin_cc =================================================================== RCS file: patches/patch-qt_mainwin_cc diff -N patches/patch-qt_mainwin_cc --- patches/patch-qt_mainwin_cc 1 Jun 2014 11:37:06 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,28 +0,0 @@ -$OpenBSD: patch-qt_mainwin_cc,v 1.1 2014/06/01 11:37:06 naddy Exp $ - -We do not support C++11 yet. - ---- qt/mainwin.cc.orig Sun May 18 22:52:27 2014 -+++ qt/mainwin.cc Sun May 25 00:04:18 2014 -@@ -1165,8 +1165,8 @@ TrMainWindow :: openTorrent () - QCheckBox * b = new QCheckBox (tr ("Show &options dialog")); - b->setChecked (myPrefs.getBool (Prefs::OPTIONS_PROMPT)); - b->setObjectName (SHOW_OPTIONS_CHECKBOX_NAME); -- auto l = dynamic_cast<QGridLayout*> (d->layout ()); -- if (l == nullptr) -+ QGridLayout* l = dynamic_cast<QGridLayout*> (d->layout ()); -+ if (l == NULL) - { - l = new QGridLayout; - d->setLayout (l); -@@ -1313,8 +1313,8 @@ TrMainWindow :: removeTorrents (const bool deleteFiles - msgBox.setDefaultButton (QMessageBox::Cancel); - msgBox.setIcon (QMessageBox::Question); - // hack needed to keep the dialog from being too narrow -- auto layout = dynamic_cast<QGridLayout*>(msgBox.layout()); -- if (layout == nullptr) -+ QGridLayout* layout = dynamic_cast<QGridLayout*>(msgBox.layout()); -+ if (layout == NULL) - { - layout = new QGridLayout; - msgBox.setLayout (layout); Index: patches/patch-qt_qtr_pro =================================================================== RCS file: /systems/cvs/ports/net/transmission/patches/patch-qt_qtr_pro,v retrieving revision 1.6 diff -u -p -r1.6 patch-qt_qtr_pro --- patches/patch-qt_qtr_pro 1 Jun 2014 11:37:06 -0000 1.6 +++ patches/patch-qt_qtr_pro 6 Feb 2016 05:56:49 -0000 @@ -1,6 +1,6 @@ $OpenBSD: patch-qt_qtr_pro,v 1.6 2014/06/01 11:37:06 naddy Exp $ ---- qt/qtr.pro.orig Sun May 18 22:52:17 2014 -+++ qt/qtr.pro Sat May 24 23:55:23 2014 +--- qt/qtr.pro.orig Mon Jan 25 17:10:14 2016 ++++ qt/qtr.pro Fri Feb 5 22:07:58 2016 @@ -8,7 +8,7 @@ target.path = /bin INSTALLS += target @@ -10,12 +10,12 @@ $OpenBSD: patch-qt_qtr_pro,v 1.6 2014/06 man.files = transmission-qt.1 CONFIG += qt thread debug link_pkgconfig c++11 warn_on -@@ -30,7 +30,7 @@ LIBS += $${LIBUTP_LIBS} - LIBS += $${TRANSMISSION_TOP}/third-party/dht/libdht.a +@@ -34,7 +34,7 @@ LIBS += $${DHT_LIBS} + LIBS += $${LIBB64_LIBS} LIBS += $${LIBUPNP_LIBS} LIBS += $${LIBNATPMP_LIBS} -unix: LIBS += -L$${EVENT_TOP}/lib -lz -lrt +unix: LIBS += -L$${EVENT_TOP}/lib -lz -levent_core -levent_extra - win32:DEFINES += QT_DBUS win32:LIBS += -levent-2.0 -lws2_32 -lintl win32:LIBS += -lidn -liconv -lwldap32 -liphlpapi + Index: pkg/PLIST-main =================================================================== RCS file: /systems/cvs/ports/net/transmission/pkg/PLIST-main,v retrieving revision 1.23 diff -u -p -r1.23 PLIST-main --- pkg/PLIST-main 12 Jul 2013 17:03:59 -0000 1.23 +++ pkg/PLIST-main 1 Mar 2016 12:20:38 -0000 @@ -30,10 +30,11 @@ share/transmission/web/javascript/file-r share/transmission/web/javascript/formatter.js share/transmission/web/javascript/inspector.js share/transmission/web/javascript/jquery/ -share/transmission/web/javascript/jquery/jquery.contextmenu.min.js +share/transmission/web/javascript/jquery/jquery-migrate.min.js +share/transmission/web/javascript/jquery/jquery-ui.min.js share/transmission/web/javascript/jquery/jquery.min.js share/transmission/web/javascript/jquery/jquery.transmenu.min.js -share/transmission/web/javascript/jquery/jqueryui-1.8.16.min.js +share/transmission/web/javascript/jquery/jquery.ui-contextmenu.min.js share/transmission/web/javascript/jquery/json2.min.js share/transmission/web/javascript/notifications.js share/transmission/web/javascript/prefs-dialog.js @@ -44,14 +45,20 @@ share/transmission/web/javascript/transm share/transmission/web/style/ share/transmission/web/style/jqueryui/ share/transmission/web/style/jqueryui/images/ +share/transmission/web/style/jqueryui/images/ui-bg_flat_0_aaaaaa_40x100.png share/transmission/web/style/jqueryui/images/ui-bg_flat_75_ffffff_40x100.png +share/transmission/web/style/jqueryui/images/ui-bg_glass_55_fbf9ee_1x400.png share/transmission/web/style/jqueryui/images/ui-bg_glass_65_ffffff_1x400.png share/transmission/web/style/jqueryui/images/ui-bg_glass_75_dadada_1x400.png share/transmission/web/style/jqueryui/images/ui-bg_glass_75_e6e6e6_1x400.png +share/transmission/web/style/jqueryui/images/ui-bg_glass_95_fef1ec_1x400.png share/transmission/web/style/jqueryui/images/ui-bg_highlight-soft_75_cccccc_1x100.png share/transmission/web/style/jqueryui/images/ui-icons_222222_256x240.png +share/transmission/web/style/jqueryui/images/ui-icons_2e83ff_256x240.png share/transmission/web/style/jqueryui/images/ui-icons_454545_256x240.png -share/transmission/web/style/jqueryui/jqueryui-1.8.16.css +share/transmission/web/style/jqueryui/images/ui-icons_888888_256x240.png +share/transmission/web/style/jqueryui/images/ui-icons_cd0a0a_256x240.png +share/transmission/web/style/jqueryui/jquery-ui.min.css share/transmission/web/style/transmission/ share/transmission/web/style/transmission/common.css share/transmission/web/style/transmission/images/