Commit graph

8 commits

Author SHA1 Message Date
Tobias Kortkamp
581cac9416 Move remaining USE_MYSQL, WANT_MYSQL_VER to USES=mysql 2019-11-15 10:12:08 +00:00
Tobias C. Berner
031fc9bfb6 Update Qt5 to 5.12.1
Release announcement:
  https://blog.qt.io/blog/2019/02/01/qt-5-12-1-released/
Changelog:
  https://wiki.qt.io/Qt_5.12.1_Change_Files

- A change was required to qt-dist.mk to always pass LOCALBASE to qmake,
  as Qt5 has been installed to a prefix for some time now, there should
  not be any harm in that, with respect to it picking up installed versions
  of itself during build.

PR:		235622
Exp-run by:	antoine
2019-02-12 17:43:00 +00:00
Tijl Coosemans
1bf487d3e7 Fix Qt5 symbol version scripts to put the catch-all clause first. When
a symbol matches multiple clauses the last one takes precedence.  If the
catch-all is last it captures everything.  In the case of Qt5 libraries
this caused all symbols to have a Qt_5 label while some should have
Qt_5_PRIVATE_API.  This only affects lld because GNU ld always gives the
catch-all lowest priority.

Older versions of Qt5Webengine exported some memory allocation symbols from
the bundled Chromium.  Version 5.9 stopped exporting these [1] but the
symbols were kept as weak wrappers for the standard allocation functions to
maintain binary compatibility. [2][3]  The problem is that the call to the
standard function in these weak wrappers is only resolved to the standard
function if there's a call to this standard function in other parts of
Qt5Webengine, because only then is there a non-weak symbol that takes
precedence over the weak one.  If there's no such non-weak symbol the call
in the weak wrapper resolves to the weak wrapper itself creating an infinite
call loop that overflows the stack and causes a crash.  Some of the
allocation functions are variants of C++ new and delete and it probably
depends on the compiler whether these variants are used in other parts of
Qt5Webengine.

Remove the weak wrappers (make them Linux specific).  This isn't binary
compatible but we are already breaking that with the changes to the symbol
versions.

[1] 5c2cbfccf9
[2] 2ed5054e3a
[3] 009f5ebb4b

Bump all ports that depend on Qt5.

PR:		234070
Exp-run by:	antoine
Approved by:	kde (adridg)
2019-01-16 11:13:44 +00:00
Adriaan de Groot
105f2f3589 Comment on patch for databases/qt5-sqldrivers-mysql
Add a note to the patch for MariaDB-compatibility on how to do it
without ifdefs, which therefore would track changes in MariaDB
definitions (if it follows the MySQL change) automatically.
2018-06-02 20:22:16 +00:00
Adriaan de Groot
b9647c3370 Fix build of the Qt SQL plugins for MySQL against MariaDB 10.
Recent MySQL code has deprecated the my_bool type, so r469165
added a check for that recent version. MariaDB pretends to be
MySQL, and has an even newer version, which nonetheless hasn't
taken over the drop-my_bool-type change. So my_bool still exists
there. Assume, for now, that MariaDB has my_bool regardless,
to fix incompatibilities reported after PR227813 was closed.

PR:		227813
Reported by:	Jashank Jeremy
2018-06-01 22:16:41 +00:00
Raphael Kubo da Costa
70141f1a3a Update the Qt5 ports to 5.10.1.
The work was done by tcberner and myself, with thanks to antoine for the
exp-run.

Not a lot to report compared to other Qt5 updates:
* net/qt5-network is still broken with LibreSSL. I said this in a commit
  message ages ago but it bears repeating: upstream is open to adding support
  for LibreSSL, but someone needs to step up to maintain it upstream, otherwise
  things will continue to be broken all the time.
* www/qt5-webengine is a huge monster that is terrible to update, just like
  www/chromium itself is. We (kde@) have decided to keep using the 5.9 series
  for the time being, as it should be compatible with the rest of Qt anyway. It
  was updated to 5.9.5, the latest 5.9 release at the time of writing.

PR:		228213
2018-05-18 12:27:43 +00:00
Tobias C. Berner
7bcff019f4 databases/qt4-mysql-plugin & databases/qt5-sqldrivers-mysql: fix build against mysql >= 8.0.1.
From the mysql release notes [1]:

  Incompatible Change: The my_bool type is no longer used in MySQL source code.
  Any third-party code that used this type to represent C boolean variables should
  use the bool or int C type instead.

  Note
    The change from my_bool to bool means that the mysql.h header file now requires
    a C++ or C99 compiler to compile.

  (Bug #25597667)

--

[1] https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-1.html

PR:		227813
Reported by:	mikhail.rokhin@gmail.com
2018-05-05 20:05:08 +00:00
Max Brazhnikov
4cd1e8830e KDE/FreeBSD team is happy to present Qt 5 in ports!
Alberto Villa (avilla@) has done all the hard work to create Qt 5 ports.
Trivial update from 5.2.0-beta1 to 5.2.1 by me.

Special thanks for Adriaan de Groot <groot@kde.org> for his assistance for
Qt-5.2.0 update.

Approved by:	portmgr (bapt) (for Mk/bsd.port.mk)
2014-03-03 16:50:32 +00:00