Bug 202552 - Mk/Uses/qmake.mk don't pass LIBS variable
Summary: Mk/Uses/qmake.mk don't pass LIBS variable
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-kde (group)
URL:
Keywords:
Depends on: 202808
Blocks:
  Show dependency treegraph
 
Reported: 2015-08-21 18:18 UTC by Pawel Pekala
Modified: 2015-09-16 08:57 UTC (History)
1 user (show)

See Also:


Attachments
qmake_libs_fix (390 bytes, patch)
2015-08-21 18:18 UTC, Pawel Pekala
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Pawel Pekala freebsd_committer freebsd_triage 2015-08-21 18:18:35 UTC
Created attachment 160185 [details]
qmake_libs_fix

Pass LIBS variable to qmake enviroment so that ports using
qmake can set libs to link to with standard LIBS declaration.
Comment 1 Max Brazhnikov freebsd_committer freebsd_triage 2015-08-25 13:28:13 UTC
Committed to area51, will be merged to the portstree after exp-run with the next Qt update.
Comment 2 commit-hook freebsd_committer freebsd_triage 2015-09-16 08:56:19 UTC
A commit references this bug:

Author: rakuco
Date: Wed Sep 16 08:55:18 UTC 2015
New revision: 397043
URL: https://svnweb.freebsd.org/changeset/ports/397043

Log:
  Update the Qt4 ports to 4.8.7.

  According to upstream, this is the last planned Qt4 release.
  A list of changes since 4.8.6 can be found here:
  <http://download.qt.io/official_releases/qt/4.8/4.8.7/changes-4.8.7>

  Porting notes and changes:
  - Remove several patches that have been upstreamed.
  - Make Uses/qmake.mk pass the contents of LIBS to the qmake environment. [1]
  - Repurpose devel/qt4/files/extrapatch-src-corelib-global-qglobal.h now the
    original patch is part of the release (curiously enough, the original
    patch was never actually used, as the ?= assignment in r362837 after
    r362770 was never possible).

    This works around the way compiler support for C++11 features is detected
    in Qt 4.8.7: while it originally only uses the compiler to determine if
    something is supported or not, the initializer lists feature also depends
    on the C++ standard library being used. It's a problem in FreeBSD 9.x,
    where USES=compiler:c++0x or USES=compiler:c++11-lang means we will use
    clang to build a port but use libstdc++ from base (GCC 4.2). The latter
    obviously does not support initializer lists, and the build fails because
    Qt tries to include headers that do not exist (<initializer_list>).

    Since detecting libstdc++'s version is not trivial (we need to include a
    non-lightweight header like cstdio and then check for __GLIBCXX__), we
    just enable Q_COMPILER_INITIALIZER_LISTS support only when libc++ is used
    (there should be no reason for someone to be using clang with GCC 4.8's
    libstdc++, for example).

    x11/kdelibs4's FindQt4.cmake had to include a backported change from the
    upstream FindQt4.cmake in CMake itself to use a C++ compiler to detect
    flags like Q_WS_X11, otherwise the inclusion of <ciso646> in qglobal.h
    makes the build fail.

  This patch contains changes by me, makc@ and alonso@.

  PR:             202552 [1]
  PR:             202808 [exp-run]
  Submitted by:	pawel@ [1]

Changes:
  head/Mk/Uses/qmake.mk
  head/Mk/bsd.qt.mk
  head/cad/qcad/Makefile
  head/databases/qt4-odbc-plugin/Makefile
  head/databases/qt4-sql/Makefile
  head/databases/qt4-sqlite-plugin/Makefile
  head/databases/qt4-sqlite3-plugin/Makefile
  head/devel/dbus-qt4/Makefile
  head/devel/qmake4/pkg-plist
  head/devel/qt4/Makefile
  head/devel/qt4/distinfo
  head/devel/qt4/files/extrapatch-configure
  head/devel/qt4/files/extrapatch-src-corelib-global-qglobal.h
  head/devel/qt4-assistant/Makefile
  head/devel/qt4-corelib/Makefile
  head/devel/qt4-designer/Makefile
  head/devel/qt4-help/Makefile
  head/devel/qt4-linguist/Makefile
  head/devel/qt4-qmlviewer/Makefile
  head/devel/qt4-qt3support/Makefile
  head/devel/qt4-qvfb/Makefile
  head/devel/qt4-script/Makefile
  head/devel/qt4-script/files/patch-src__3rdparty__javascriptcore__JavaScriptCore__wtf__Threading.h
  head/devel/qt4-scripttools/Makefile
  head/devel/qt4-testlib/Makefile
  head/graphics/qt4-imageformats/Makefile
  head/graphics/qt4-imageformats/files/
  head/graphics/qt4-opengl/Makefile
  head/graphics/qt4-opengl/pkg-plist
  head/graphics/qt4-svg/Makefile
  head/misc/qt4-l10n/Makefile
  head/misc/qt4-l10n/pkg-plist
  head/misc/qt4-qtconfig/Makefile
  head/misc/qt4-qtdemo/Makefile
  head/multimedia/qt4-multimedia/Makefile
  head/net/qt4-network/Makefile
  head/textproc/clucene-qt4/Makefile
  head/textproc/qt4-xml/Makefile
  head/textproc/qt4-xmlpatterns/Makefile
  head/www/webkit-qt4/Makefile
  head/x11/kdelibs4/Makefile
  head/x11/kdelibs4/files/patch-cmake_modules_FindQt4.cmake
  head/x11/qt4-graphicssystems-opengl/Makefile
  head/x11-toolkits/qt4-declarative/Makefile
  head/x11-toolkits/qt4-gui/Makefile
  head/x11-toolkits/qt4-gui/files/