Upgraded Qwt to 6.2 (branch: qwt-multiaxes) (#4427)

This commit is based on https://github.com/GoldenCheetah/GoldenCheetah/pull/3956
with the following additions / changes:
* Upgraded to the latest version of the multiaxes-branch, thus eliminating crashes of GoldenCheetah on startup
* Disabled the emitting of Layout Requests on geometry changes of QwtScaleWidget - without this, CPU utilization was up to 100% on one core
* Added the class SplineLookup, reusing small portions of code from Qwt 6.1
* Re-added the splines in WPrime and RideFile (resampling), using the new interface of QwtSpline
* Appveyor: qwt in cache-section now depends on qwt/qwtconfig.prin.in for refresh on version change
This commit is contained in:
Joachim Kohlhammer
2024-01-06 22:59:55 +01:00
committed by GitHub
parent ea044a0c39
commit 49cf6340a4
991 changed files with 63097 additions and 46278 deletions

View File

@@ -8,8 +8,8 @@
################################################################
QWT_VER_MAJ = 6
QWT_VER_MIN = 1
QWT_VER_PAT = 1
QWT_VER_MIN = 4
QWT_VER_PAT = 0
QWT_VERSION = $${QWT_VER_MAJ}.$${QWT_VER_MIN}.$${QWT_VER_PAT}
######################################################################
@@ -19,11 +19,13 @@ QWT_VERSION = $${QWT_VER_MAJ}.$${QWT_VER_MIN}.$${QWT_VER_PAT}
QWT_INSTALL_PREFIX = $$[QT_INSTALL_PREFIX]
unix {
QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION-svn
QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION-ma
# QWT_INSTALL_PREFIX = /usr/local/qwt-$$QWT_VERSION-ma-qt-$$QT_VERSION
}
win32 {
QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION-svn
QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION-dev
# QWT_INSTALL_PREFIX = C:/Qwt-$$QWT_VERSION-dev-qt-$$QT_VERSION
}
QWT_INSTALL_DOCS = $${QWT_INSTALL_PREFIX}/doc
@@ -33,10 +35,10 @@ QWT_INSTALL_LIBS = $${QWT_INSTALL_PREFIX}/lib
######################################################################
# Designer plugin
# creator/designer load designer plugins from certain default
# directories ( f.e the path below QT_INSTALL_PREFIX ) and the
# directories ( f.e the path below QT_INSTALL_PREFIX ) and the
# directories listed in the QT_PLUGIN_PATH environment variable.
# When using the path below QWT_INSTALL_PREFIX you need to
# add $${QWT_INSTALL_PREFIX}/plugins to QT_PLUGIN_PATH in the
# add $${QWT_INSTALL_PREFIX}/plugins to QT_PLUGIN_PATH in the
# runtime environment of designer/creator.
######################################################################
@@ -53,12 +55,12 @@ QWT_INSTALL_PLUGINS = $${QWT_INSTALL_PREFIX}/plugins/designer
# Features
# When building a Qwt application with qmake you might want to load
# the compiler/linker flags, that are required to build a Qwt application
# from qwt.prf. Therefore all you need to do is to add "CONFIG += qwt"
# from qwt.prf. Therefore all you need to do is to add "CONFIG += qwt"
# to your project file and take care, that qwt.prf can be found by qmake.
# ( see http://doc.trolltech.com/4.7/qmake-advanced-usage.html#adding-new-configuration-features )
# I recommend not to install the Qwt features together with the
# Qt features, because you will have to reinstall the Qwt features,
# with every Qt upgrade.
# with every Qt upgrade.
######################################################################
QWT_INSTALL_FEATURES = $${QWT_INSTALL_PREFIX}/features
@@ -73,15 +75,22 @@ QWT_INSTALL_FEATURES = $${QWT_INSTALL_PREFIX}/features
#QWT_CONFIG += QwtDll
######################################################################
# QwtPlot enables all classes, that are needed to use the QwtPlot
# QwtPlot enables all classes, that are needed to use the QwtPlot
# widget.
######################################################################
QWT_CONFIG += QwtPlot
######################################################################
# QwtPPolar enables all classes, that are needed to use the QwtPolar
# classes. It can't be enabled without also enabling QwtPlot
######################################################################
QWT_CONFIG += QwtPolar
######################################################################
# QwtWidgets enables all classes, that are needed to use the all other
# widgets (sliders, dials, ...), beside QwtPlot.
# widgets (sliders, dials, ...), beside QwtPlot.
######################################################################
QWT_CONFIG += QwtWidgets
@@ -100,18 +109,7 @@ QWT_CONFIG += QwtSvg
QWT_CONFIG += QwtOpenGL
######################################################################
# You can use the MathML renderer of the Qt solutions package to
# enable MathML support in Qwt. Because of license implications
# the ( modified ) code of the MML Widget solution is included and
# linked together with the QwtMathMLTextEngine into an own library.
# To use it you will have to add "CONFIG += qwtmathml"
# to your qmake project file.
######################################################################
QWT_CONFIG += QwtMathML
######################################################################
# If you want to build the Qwt designer plugin,
# If you want to build the Qwt designer plugin,
# enable the line below.
# Otherwise you have to build it from the designer directory.
######################################################################
@@ -123,7 +121,7 @@ QWT_CONFIG += QwtDesigner
# of linking it against the shared Qwt library. Has no effect
# when QwtDesigner or QwtDll are not both enabled.
#
# On systems where rpath is supported ( all Unixoids ) the
# On systems where rpath is supported ( all Unixoids ) the
# location of the installed Qwt library is compiled into the plugin,
# but on Windows it might be easier to have a self contained
# plugin to avoid any hassle with configuring the runtime
@@ -142,10 +140,10 @@ win32 {
QWT_CONFIG += QwtExamples
######################################################################
# The playground is primarily intended for the Qwt development
# The playground is primarily intended for the Qwt development
# to explore and test new features. Nevertheless you might find
# ideas or code snippets that help for application development
# If you want to auto build the applications in playground, enable
# If you want to auto build the applications in playground, enable
# the line below.
# Otherwise you have to build them from the playground directory.
######################################################################
@@ -153,11 +151,28 @@ QWT_CONFIG += QwtExamples
QWT_CONFIG += QwtPlayground
######################################################################
# When Qt has been built as framework qmake wants
# If you want to auto build the tests, enable the line below
# Otherwise you have to build them from the tests directory.
######################################################################
QWT_CONFIG += QwtTests
######################################################################
# When Qt has been built as framework qmake wants
# to link frameworks instead of regular libs
######################################################################
macx:!static:CONFIG(qt_framework, qt_framework|qt_no_framework) {
#QWT_CONFIG += QwtFramework
}
}
######################################################################
# Create and install pc files for pkg-config
# See http://www.freedesktop.org/wiki/Software/pkg-config/
######################################################################
unix {
QWT_CONFIG += QwtPkgConfig
}