From owner-svn-ports-head@freebsd.org Sun Jan 7 15:03:09 2018 Return-Path: Delivered-To: svn-ports-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 99356E71135; Sun, 7 Jan 2018 15:03:09 +0000 (UTC) (envelope-from rakuco@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 750E569A31; Sun, 7 Jan 2018 15:03:09 +0000 (UTC) (envelope-from rakuco@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id BD4DF22C1C; Sun, 7 Jan 2018 15:03:08 +0000 (UTC) (envelope-from rakuco@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w07F38en007352; Sun, 7 Jan 2018 15:03:08 GMT (envelope-from rakuco@FreeBSD.org) Received: (from rakuco@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w07F38rk007351; Sun, 7 Jan 2018 15:03:08 GMT (envelope-from rakuco@FreeBSD.org) Message-Id: <201801071503.w07F38rk007351@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rakuco set sender to rakuco@FreeBSD.org using -f From: Raphael Kubo da Costa Date: Sun, 7 Jan 2018 15:03:08 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r458339 - head/Mk X-SVN-Group: ports-head X-SVN-Commit-Author: rakuco X-SVN-Commit-Paths: head/Mk X-SVN-Commit-Revision: 458339 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 07 Jan 2018 15:03:09 -0000 Author: rakuco Date: Sun Jan 7 15:03:08 2018 New Revision: 458339 URL: https://svnweb.freebsd.org/changeset/ports/458339 Log: Correctly pass -platform to qtbase's configure script when CXX is an absolute path. With the update to Qt 5.9.3, the configure script and qmake expect an mkspec name, not an absolute path, which is why r458293 switched to using ${QMAKESPEC:T}. However, the :T modifier breaks things when CXX is set to an absolute path instead of just "c++", QMAKE_COMPILER is a shell string that will be evaluated only after make invokes `configure' with CONFIGURE_ARGS. In other words, we end up turning something like $$(ccver="$$(/usr/bin/c++ --version)"; case "$$ccver" in *clang*) echo clang ;; *) echo g++ ;; esac) into /c++ --version)"; case "$$ccver" in *clang*) echo clang ;; *) echo g++ ;; esac) which is obviously invalid. We now just avoid being too smart and set a separate variable called QMAKESPECNAME, which contains only the mkspec name and that we use both when setting CONFIGURE_ARGS as well as to create QMAKESPEC. PR: 224971 Modified: head/Mk/bsd.qt.mk Modified: head/Mk/bsd.qt.mk ============================================================================== --- head/Mk/bsd.qt.mk Sun Jan 7 14:34:38 2018 (r458338) +++ head/Mk/bsd.qt.mk Sun Jan 7 15:03:08 2018 (r458339) @@ -135,7 +135,7 @@ CONFIGURE_ARGS+=-fast \ -demosdir ${PREFIX}/${QT_EXAMPLEDIR_REL}/demos . else CONFIGURE_ARGS+=-nomake examples -nomake tests \ - -platform ${QMAKESPEC:T} \ + -platform ${QMAKESPECNAME} \ -archdatadir ${PREFIX}/${QT_ARCHDIR_REL} \ -libexecdir ${PREFIX}/${QT_LIBEXECDIR_REL} \ -qmldir ${PREFIX}/${QT_QMLDIR_REL} \ @@ -261,7 +261,8 @@ UIC?= ${QT_BINDIR}/uic QMAKE?= ${QT_BINDIR}/qmake # Needed to redefine the qmake target for internal Qt configuration. _QMAKE?= ${QMAKE} -QMAKESPEC?= ${QT_MKSPECDIR}/freebsd-${QMAKE_COMPILER} +QMAKESPECNAME?= freebsd-${QMAKE_COMPILER} +QMAKESPEC?= ${QT_MKSPECDIR}/${QMAKESPECNAME} # The whole Qt distribution should be built with the same compiler, but it's # better to support custom settings. Dereferencing the detection allows to