Mercurial > octave
diff m4/acinclude.m4 @ 32006:5724d89e9244
Use QStreamView if available.
* m4/acinclude.m4 (OCTAVE_CHECK_CLASS_QSTRINGVIEW): Add check whether the class
QStreamView is available.
* src/octave-qsvghandler.h: Merge some upstream changes. Use QStreamView if
available.
* src/octave-svgconvert.cc (draw): Use QStreamView if available.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Thu, 13 Apr 2023 13:30:01 +0200 |
parents | 8f9de7cb4e02 |
children | 4d15e1304a48 |
line wrap: on
line diff
--- a/m4/acinclude.m4 Thu Apr 13 11:09:04 2023 +0200 +++ b/m4/acinclude.m4 Thu Apr 13 13:30:01 2023 +0200 @@ -661,6 +661,36 @@ fi ]) dnl +dnl Check whether Qt provides a QStringView class. This class was first +dnl introduced in Qt 5.10 and finally replaced QStringRef in Qt6. +dnl +dnl FIXME: Delete this check when we drop support for Qt 5.9 or older. +dnl +AC_DEFUN([OCTAVE_CHECK_CLASS_QSTRINGVIEW], [ + AC_CACHE_CHECK([for class QStringView], + [octave_cv_class_qstringview], + [AC_LANG_PUSH(C++) + ac_octave_save_CPPFLAGS="$CPPFLAGS" + ac_octave_save_CXXFLAGS="$CXXFLAGS" + CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS" + CXXFLAGS="$CXXPICFLAG $CXXFLAGS" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + #include <QStringView> + ]], [[ + QStringView qstrv {}; + ]])], + octave_cv_class_qstringview=yes, + octave_cv_class_qstringview=no) + CPPFLAGS="$ac_octave_save_CPPFLAGS" + CXXFLAGS="$ac_octave_save_CXXFLAGS" + AC_LANG_POP(C++) + ]) + if test $octave_cv_class_qstringview = yes; then + AC_DEFINE(HAVE_QSTRINGVIEW, 1, + [Define to 1 if Qt provides the class QStringView.]) + fi +]) +dnl dnl Check whether HDF5 library has version 1.6 API functions. dnl AC_DEFUN([OCTAVE_CHECK_HDF5_HAS_VER_16_API], [ @@ -1995,6 +2025,7 @@ OCTAVE_CHECK_FUNC_QWHEELEVENT_POSITION OCTAVE_CHECK_FUNC_QPAINTER_SETRENDERHINT_LOSSLESS OCTAVE_CHECK_FUNC_QCOLOR_FLOAT_TYPE + OCTAVE_CHECK_CLASS_QSTRINGVIEW OCTAVE_CHECK_QREGION_ITERATORS OCTAVE_CHECK_QT_IMCURSORRECTANGLE_ENUM_VALUE