SHA256
1
0
forked from pool/qwt6

Accepting request 704825 from home:alois:branches:devel:libraries:c_c++

- Build against Qt5 by default
- Dropped qwt-qt5.patch
- Update to version 6.1.4
  * All widgets ( including plot canvas )
    + missing initialization of the background color hint, when
      drawing a styled focus rectangle
    + devicePixelRatio handling adjusted, QT_SCALE_FACTOR supported
  * Maintenance
    + deprecated QString::null replaced by QString()
    + making clang-tidy/clazy and friends happier
    + compiler warnings with newer Qt versions fixed
  * PyQt-Qwt
    + specific defines added
  * QwtPointMapper
    + being multithreaded when possible
  * QwtPlotRenderer
    + using QPdfWriter instead of QPrinter, when possible
  * Build system
    + auto-disable building the designer plugin, when the
      corresponding Qt installation was not build with designer
      support
  * Bug fixes
    + font resolving when using widget fonts for rendering
      to a different paint device.
    + QwtPlotDirectPainter::CopyBackingStore: bad offset (
      subtracting the canvas frame ), when flushing the updated
      backing store fixed
    + QwtAbstractSlider::stepAlignment fixed, when the value is
      exactly the upperBound, but no tick position
    + Missing right/bottom pixel added for QwtColumnSymbol::NoFrame
    + QwtWeedingCurveFitter::fitCurve fixed when being called with
      no points
    + missing updates added for QwtLegend::setMaxColumns,
      QwtScaleWidget::setLayoutFlag
    + QwtPlotCurve::drawSteps: polygon clipping fixed by adding
      an extra pixel to the clip rectangle
    + QwtPlotItem::ScaleInterest enabled for all constructors of
      QwtPlotSeriesItem
    + QwtPlotMarker::boundingRect fixed for HLine/VLine
    + QwtPlotIntervalCurve/QwtPlotTradingCurve::boundingRect
      fixed
- Refreshed qwt-6.1.3-mkspecs.patch as qwt-6.1.4-mkspecs.patch
- Fixed manpages conflict with qwt5
- Remove _tmp manpages and rename the existing one to -qt5
  pattern to avoid conflict with the qt4 package
- Dropped pre_checkin.sh
- Remove _multibuild prior to Factory submission
- Build qwt6-qt5 as separate package 
  * add qwt6-qt5.spec
  * add qwt6-qt5.changes
  * add qwt-qt5.patch
  (thanks to awissu and other contributors of the KDE:Qt5 package)
- Refreshed qwt-rpath.patch as qwt-6.1.3-rpath.patch
- Create and install pc files for pkg-config:
  * add qwt-6.1.3-pkgconfig.patch
- Use mkspecs directory
  * add qwt-6.1.3-mkspecs.patch
- Use sover macro
- Build the examples modules
- Renamed the libqwt6 package as libqwt-qt%%sover
- Use license macro on openSUSE >= 42.2
- Add man page
- Added pre_checkin.sh to keep .changes files in sync
- Spec cleanup
- Update to version 6.1.3 
  * QwtPlotMagnifier, QwtPlotZoomer: handling of non linear
    transformations ( f.e logarithmic )
  * Date/Time scales fixed
    QwtDate::ceil(), QwtDate::weekNumber(), QwtDate::utcOffset()
    QwtDateScaleEngine fixed when aligning to months
  * QwtPlotLayout: layout bug for legends witdh visisble
    scrollbars fixed
  * Plot items
    hiding QwtPlotLegendItem without entries
    QwtPlotShapeItem render code fixed
  * QwtPlotGLCanvas
    slightly improved, nevertheless better use Qwt 6.2 when being
    interested in OpenGL
  * Other
    QwtGraphic boundingRect updates fixed
    QwtSyntheticPointData::x() fixed
    QwtLogScaleEngine::divideScale ignoring stepSize parameter
    for ranges below one "decade"
    QwtPlotAbstractBarChart::getCanvasMarginHint fixed
- Fixed source URL
- Update to Qwt 6.1.2
  * fixes at QwtPlot, color maps, controls and scales.
- Removed Mandriva support.
- Renamed qwt-6.1.0-rpath.patch to qwt-rpath.patch
  because upstream doesn't want merge it. Updated.
- qwt6-designer is now conflicting with qwt-designer.
- Update to Qwt 6.1.0
  * New plot items
  * Scales beyond linear and logarithmic transformations
  * Datetime scales
  * Redesign of the dial and meter widgets
  * Basic support for an OpenGL plot canvas
  * A new system for plot legends
  * Off-screen paint device for vector graphics
  * Changes and improvements to several classes
- Added qwt-6.1.0-rpath.patch to prevent
  https://sourceforge.net/p/qwt/bugs/191
- Qmake debug info stripping was disabled.
- Update to Qwt 6.0.2
  * qwtfunctions.pri added
  * QwtPlotDict::detachItems fixed
  * QwtWeedingCurveFitter::fitCurve performance improvements
  * QwtDynGridLayout fixed for non widget items
  * QwtInterval: avoid annoying compiler warning 
  * Autoscaling of curves without points fixed
  * QwtPlotDirectPainter::drawSeries bad translation removed
  * QwtPlotIntervalCurve: drawing of symbols fixed
  * QwtPlotlayout: minor layout bufs fixed
  * Usage of QwtPlotRasterItem::pixelHint fixed
  * QwtPlotRenderer: several minor fixes
  * QwtRasterData: CONREC algorithm fixed
  * QwtThermo: layout code fixed
  * QwtThermo: memory leak fixed
  * QwtMmlDocument: compiler issues
  * Logarithmic autoscaler fixed for intervals close below a decade
- Fix the SLES build (%make_install is not expanded on SLES)
- license update: SUSE-QWT-1.0
  Added to spreadsheet linked at license.opensuse.org. Package warrants its
  own license
- Initial release

OBS-URL: https://build.opensuse.org/request/show/704825
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/qwt6?expand=0&rev=7
This commit is contained in:
Luigi Baldoni 2019-05-22 19:04:15 +00:00 committed by Git OBS Bridge
parent 2b23ec81f4
commit 8b0d933154
5 changed files with 84 additions and 452 deletions

View File

@ -1,28 +0,0 @@
diff -up qwt-6.1.2/qwtfunctions.pri.qt5 qwt-6.1.2/qwtfunctions.pri
--- qwt-6.1.2/qwtfunctions.pri.qt5 2014-12-11 08:13:13.511186492 -0600
+++ qwt-6.1.2/qwtfunctions.pri 2014-12-12 20:45:24.556261966 -0600
@@ -12,7 +12,12 @@
defineReplace(qwtLibraryTarget) {
unset(LIBRARY_NAME)
+
+ greaterThan(QT_MAJOR_VERSION, 4) {
+ LIBRARY_NAME = $${1}-qt$${QT_MAJOR_VERSION}
+ } else {
LIBRARY_NAME = $$1
+ }
mac:contains(QWT_CONFIG, QwtFramework) {
@@ -36,7 +41,11 @@ defineReplace(qwtLibraryTarget) {
defineTest(qwtAddLibrary) {
LIB_PATH = $$1
+ greaterThan(QT_MAJOR_VERSION, 4) {
+ LIB_NAME = $${2}-qt$${QT_MAJOR_VERSION}
+ } else {
LIB_NAME = $$2
+ }
mac:contains(QWT_CONFIG, QwtFramework) {

View File

@ -1,179 +0,0 @@
-------------------------------------------------------------------
Fri Apr 19 07:12:53 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
- Update to version 6.1.4
* All widgets ( including plot canvas )
+ missing initialization of the background color hint, when
drawing a styled focus rectangle
+ devicePixelRatio handling adjusted, QT_SCALE_FACTOR supported
* Maintenance
+ deprecated QString::null replaced by QString()
+ making clang-tidy/clazy and friends happier
+ compiler warnings with newer Qt versions fixed
* PyQt-Qwt
+ specific defines added
* QwtPointMapper
+ being multithreaded when possible
* QwtPlotRenderer
+ using QPdfWriter instead of QPrinter, when possible
* Build system
+ auto-disable building the designer plugin, when the
corresponding Qt installation was not build with designer
support
* Bug fixes
+ font resolving when using widget fonts for rendering
to a different paint device.
+ QwtPlotDirectPainter::CopyBackingStore: bad offset (
subtracting the canvas frame ), when flushing the updated
backing store fixed
+ QwtAbstractSlider::stepAlignment fixed, when the value is
exactly the upperBound, but no tick position
+ Missing right/bottom pixel added for QwtColumnSymbol::NoFrame
+ QwtWeedingCurveFitter::fitCurve fixed when being called with
no points
+ missing updates added for QwtLegend::setMaxColumns,
QwtScaleWidget::setLayoutFlag
+ QwtPlotCurve::drawSteps: polygon clipping fixed by adding
an extra pixel to the clip rectangle
+ QwtPlotItem::ScaleInterest enabled for all constructors of
QwtPlotSeriesItem
+ QwtPlotMarker::boundingRect fixed for HLine/VLine
+ QwtPlotIntervalCurve/QwtPlotTradingCurve::boundingRect
fixed
- Refreshed qwt-6.1.3-mkspecs.patch as qwt-6.1.4-mkspecs.patch
-------------------------------------------------------------------
Sat Aug 5 08:12:02 UTC 2017 - aloisio@gmx.com
- Fixed manpages conflict with qwt5
-------------------------------------------------------------------
Wed Jul 26 09:27:54 UTC 2017 - aloisio@gmx.com
- Remove _tmp manpages and rename the existing one to -qt5
pattern to avoid conflict with the qt4 package
- Dropped pre_checkin.sh
-------------------------------------------------------------------
Tue Jul 25 10:57:21 UTC 2017 - aloisio@gmx.com
- Remove _multibuild prior to Factory submission
-------------------------------------------------------------------
Tue May 30 08:58:23 UTC 2017 - aloisio@gmx.com
- Build qwt6-qt5 as separate package
* add qwt6-qt5.spec
* add qwt6-qt5.changes
* add qwt-qt5.patch
(thanks to awissu and other contributors of the KDE:Qt5 package)
- Refreshed qwt-rpath.patch as qwt-6.1.3-rpath.patch
- Create and install pc files for pkg-config:
* add qwt-6.1.3-pkgconfig.patch
- Use mkspecs directory
* add qwt-6.1.3-mkspecs.patch
- Use sover macro
- Build the examples modules
- Renamed the libqwt6 package as libqwt-qt%%sover
- Use license macro on openSUSE >= 42.2
- Add man page
- Added pre_checkin.sh to keep .changes files in sync
- Spec cleanup
-------------------------------------------------------------------
Thu Sep 29 06:03:11 UTC 2016 - aloisio@gmx.com
- Update to version 6.1.3
* QwtPlotMagnifier, QwtPlotZoomer: handling of non linear
transformations ( f.e logarithmic )
* Date/Time scales fixed
QwtDate::ceil(), QwtDate::weekNumber(), QwtDate::utcOffset()
QwtDateScaleEngine fixed when aligning to months
* QwtPlotLayout: layout bug for legends witdh visisble
scrollbars fixed
* Plot items
hiding QwtPlotLegendItem without entries
QwtPlotShapeItem render code fixed
* QwtPlotGLCanvas
slightly improved, nevertheless better use Qwt 6.2 when being
interested in OpenGL
* Other
QwtGraphic boundingRect updates fixed
QwtSyntheticPointData::x() fixed
QwtLogScaleEngine::divideScale ignoring stepSize parameter
for ranges below one "decade"
QwtPlotAbstractBarChart::getCanvasMarginHint fixed
- Fixed source URL
-------------------------------------------------------------------
Wed Feb 4 18:46:59 UTC 2015 - dap.darkness@gmail.com
- Update to Qwt 6.1.2
* fixes at QwtPlot, color maps, controls and scales.
- Removed Mandriva support.
- Renamed qwt-6.1.0-rpath.patch to qwt-rpath.patch
because upstream doesn't want merge it. Updated.
-------------------------------------------------------------------
Mon Aug 12 18:33:05 UTC 2013 - tittiatcoke@gmail.com
- qwt6-designer is now conflicting with qwt-designer.
-------------------------------------------------------------------
Fri Aug 9 15:36:51 UTC 2013 - dap.darkness@gmail.com
- Update to Qwt 6.1.0
* New plot items
* Scales beyond linear and logarithmic transformations
* Datetime scales
* Redesign of the dial and meter widgets
* Basic support for an OpenGL plot canvas
* A new system for plot legends
* Off-screen paint device for vector graphics
* Changes and improvements to several classes
- Added qwt-6.1.0-rpath.patch to prevent
https://sourceforge.net/p/qwt/bugs/191
- Qmake debug info stripping was disabled.
-------------------------------------------------------------------
Mon Jan 28 16:30:49 EET 2013 - koprok@nand.bg
- Update to Qwt 6.0.2
* qwtfunctions.pri added
* QwtPlotDict::detachItems fixed
* QwtWeedingCurveFitter::fitCurve performance improvements
* QwtDynGridLayout fixed for non widget items
* QwtInterval: avoid annoying compiler warning
* Autoscaling of curves without points fixed
* QwtPlotDirectPainter::drawSeries bad translation removed
* QwtPlotIntervalCurve: drawing of symbols fixed
* QwtPlotlayout: minor layout bufs fixed
* Usage of QwtPlotRasterItem::pixelHint fixed
* QwtPlotRenderer: several minor fixes
* QwtRasterData: CONREC algorithm fixed
* QwtThermo: layout code fixed
* QwtThermo: memory leak fixed
* QwtMmlDocument: compiler issues
* Logarithmic autoscaler fixed for intervals close below a decade
-------------------------------------------------------------------
Tue Nov 20 17:23:54 UTC 2012 - nico.kruber@gmail.com
- Fix the SLES build (%make_install is not expanded on SLES)
-------------------------------------------------------------------
Thu Mar 29 12:38:20 UTC 2012 - cfarrell@suse.com
- license update: SUSE-QWT-1.0
Added to spreadsheet linked at license.opensuse.org. Package warrants its
own license
-------------------------------------------------------------------
Wed Mar 28 08:57:52 UTC 2012 - idonmez@suse.com
- Initial release

View File

@ -1,183 +0,0 @@
#
# spec file for package qwt6-qt5
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define sover 5-6
Name: qwt6-qt5
Version: 6.1.4
Release: 0
Summary: Qt5 Widgets for Technical Applications
License: SUSE-QWT-1.0
Group: Development/Libraries/C and C++
URL: https://qwt.sourceforge.net/
Source: https://sourceforge.net/projects/qwt/files/qwt/%{version}/qwt-%{version}.tar.bz2
# PATCH-FIX-OPENSUSE to prevent 'ERROR: RPATH "/usr/local/qwt-6.1.0/lib" on
# /usr/lib(64)/qt(4,5)/plugins/designer/libqwt_designer_plugin.so is not allowed'.
Patch0: qwt-6.1.3-rpath.patch
# PATCH-FIX-OPENSUSE qt5.patch -- to get parallel-installable qt5 version.
Patch1: qwt-qt5.patch
# PATCH-FIX-OPENSUSE pkgconfig.patch -- Create and install pc files for pkg-config
Patch2: qwt-6.1.3-pkgconfig.patch
# PATCH-FIX-OPENSUSE mkspecs.patch -- Use established settings for the .pc files
Patch3: qwt-6.1.4-mkspecs.patch
BuildRequires: fdupes
BuildRequires: freetype2-devel
BuildRequires: gcc-c++
BuildRequires: pkgconfig
BuildRequires: pkgconfig(Qt5Concurrent)
BuildRequires: pkgconfig(Qt5Designer)
BuildRequires: pkgconfig(Qt5OpenGL)
BuildRequires: pkgconfig(Qt5PrintSupport)
BuildRequires: pkgconfig(Qt5Svg)
BuildRequires: pkgconfig(libpng)
%description
The Qwt(Qt5) library contains GUI Components and utility classes which are
primarily useful for programs with a technical background. Beside a 2D
plot widget it provides scales, sliders, dials, compasses, thermometers,
wheels and knobs to control or display values, arrays, or ranges of type
double.
%package -n libqwt-qt%{sover}
Summary: Shared library for Qt5 Widgets for Technical Applications
Group: System/Libraries
Provides: %{name} = %{version}
Obsoletes: %{name} < %{version}
%description -n libqwt-qt%{sover}
This package contains the shared library to run Technical Applications
developed with/for Qwt(Qt5).
%package devel
Summary: Include headers and Qt Designer plugin for Qwt(Qt5)
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
Requires: freetype2-devel
Requires: gcc-c++
Requires: pkgconfig(Qt5Concurrent)
Requires: pkgconfig(Qt5OpenGL)
Requires: pkgconfig(Qt5PrintSupport)
Requires: pkgconfig(Qt5Svg)
Requires: pkgconfig(Qt5Widgets)
Requires: pkgconfig(libpng)
Recommends: %{name}-designer
Recommends: %{name}-devel-doc
Recommends: %{name}-examples
Conflicts: otherproviders(qwt-qt5-devel)
Provides: qwt-qt5-devel = %{version}
%description devel
This package contains the header files of Qwt and its Qt designer plugin
in order to create Qt applications using the Qwt(Qt5) widgets.
%package examples
Summary: Example programs using Qwt(Qt5)
Group: Development/Libraries/C and C++
Requires: %{name}-devel = %{version}
%description examples
This package contains example programs demonstrating the Qwt(Qt5) widgets.
%package designer
Summary: Plugin for the Qt5 Interface designer
Group: Development/Tools/GUI Builders
Requires: %{name}-devel = %{version}
Conflicts: otherproviders(qwt-qt5-designer)
Provides: qwt-qt5-designer = %{version}
%description designer
The %{name}-designer package contains the plugin for the Qt5 User Interface
designer tool.
%package devel-doc
Summary: Development documentation for Qwt(Qt5)
Group: Development/Libraries/C and C++
Requires: %{name}-devel = %{version}
%description devel-doc
This package contains the development documentation of the Qwt(Qt5) widgets
as is it created by doxygen.
%prep
%setup -q -n qwt-%{version}
%patch0 -p1
%patch1 -p1 -b .qt5
%patch2 -p1
%patch3 -p1
# remove leftovers
rm -f doc/man/man3/_tmp_qwt*
# rename manpages
for f in doc/man/man3/*; do
qwt6name=$(echo $(basename ${f} .3)|sed \
'/^Qwt/{s/Qwt/Qwt6/;be;}; /^qwt/{s/qwt/qwt6/;be;}; s/$/_qwt6/; :e;')
mv -v ${f} doc/man/man3/${qwt6name}-qt5.3
done
%build
mkdir build
pushd build
%qmake5 ..
%make_jobs
popd
%install
pushd build
%qmake5_install
popd
# Qwt base examples
mkdir -p %{buildroot}%{%_libqt5_docdir}/qwt6
mkdir -p %{buildroot}%{_libqt5_examplesdir}/qwt6
cp -r examples %{buildroot}%{_libqt5_docdir}/qwt6/examples
cp -r build/examples/bin %{buildroot}%{_libqt5_examplesdir}/qwt6
mkdir -p %{buildroot}%{_mandir}
mv %{buildroot}%{_libqt5_docdir}/qwt6/man/man3 \
%{buildroot}%{_mandir}/
%fdupes %{buildroot}/%{_prefix}
%post -n libqwt-qt%{sover} -p /sbin/ldconfig
%postun -n libqwt-qt%{sover} -p /sbin/ldconfig
%files -n libqwt-qt%{sover}
%if 0%{?sle_version} != 120200
%license COPYING
%else
%doc COPYING
%endif
%{_libqt5_libdir}/libqwt-qt5.so.*
%files designer
%{_libqt5_plugindir}/designer/*.so
%files devel
%doc README
%{_libqt5_libdir}/libqwt-qt5.so
%{_libqt5_libdir}/pkgconfig/Qt5Qwt6.pc
%{_libqt5_archdatadir}/mkspecs/features/
%dir %{_libqt5_includedir}/qwt6
%{_libqt5_includedir}/qwt6/*.h
%{_mandir}/man?/*.?%{ext_info}
%files examples
%{_libqt5_examplesdir}/
%files devel-doc
%doc %{_libqt5_docdir}/
%changelog

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Wed May 22 18:41:14 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
- Build against Qt5 by default
- Dropped qwt-qt5.patch
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Apr 19 07:12:53 UTC 2019 - Luigi Baldoni <aloisio@gmx.com> Fri Apr 19 07:12:53 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
@ -43,17 +49,17 @@ Fri Apr 19 07:12:53 UTC 2019 - Luigi Baldoni <aloisio@gmx.com>
- Refreshed qwt-6.1.3-mkspecs.patch as qwt-6.1.4-mkspecs.patch - Refreshed qwt-6.1.3-mkspecs.patch as qwt-6.1.4-mkspecs.patch
- Dropped designer subpackage -------------------------------------------------------------------
Sat Aug 5 08:12:02 UTC 2017 - aloisio@gmx.com
- Fixed manpages conflict with qwt5
------------------------------------------------------------------- -------------------------------------------------------------------
Sat Aug 5 08:11:17 UTC 2017 - aloisio@gmx.com Wed Jul 26 09:27:54 UTC 2017 - aloisio@gmx.com
- Fixed manpages conflict with qwt5 - Remove _tmp manpages and rename the existing one to -qt5
pattern to avoid conflict with the qt4 package
-------------------------------------------------------------------
Wed Jul 26 09:27:22 UTC 2017 - aloisio@gmx.com
- Remove _tmp manpages
- Dropped pre_checkin.sh - Dropped pre_checkin.sh
------------------------------------------------------------------- -------------------------------------------------------------------

126
qwt6.spec
View File

@ -16,121 +16,137 @@
# #
%define sover 6 %define sover 6
Name: qwt6 Name: qwt6
Version: 6.1.4 Version: 6.1.4
Release: 0 Release: 0
Summary: Qt Widgets for Technical Applications Summary: Qt5 Widgets for Technical Applications
License: SUSE-QWT-1.0 License: SUSE-QWT-1.0
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
URL: http://qwt.sourceforge.net/ URL: https://qwt.sourceforge.net/
Source: https://sourceforge.net/projects/qwt/files/qwt/%{version}/qwt-%{version}.tar.bz2 Source: https://sourceforge.net/projects/qwt/files/qwt/%{version}/qwt-%{version}.tar.bz2
# PATCH-FIX-OPENSUSE to prevent 'ERROR: RPATH "/usr/local/qwt-6.1.0/lib" on # PATCH-FIX-OPENSUSE to prevent 'ERROR: RPATH "/usr/local/qwt-6.1.0/lib" on
# /usr/lib(64)/qt4/plugins/designer/libqwt_designer_plugin.so is not allowed'. # /usr/lib(64)/qt(4,5)/plugins/designer/libqwt_designer_plugin.so is not allowed'.
Patch0: qwt-6.1.3-rpath.patch Patch0: qwt-6.1.3-rpath.patch
# PATCH-FIX-OPENSUSE pkgconfig.patch -- Create and install pc files for pkg-config # PATCH-FIX-OPENSUSE pkgconfig.patch -- Create and install pc files for pkg-config
Patch1: qwt-6.1.3-pkgconfig.patch Patch2: qwt-6.1.3-pkgconfig.patch
# PATCH-FIX-OPENSUSE mkspecs.patch -- Use established settings for the .pc files # PATCH-FIX-OPENSUSE mkspecs.patch -- Use established settings for the .pc files
Patch2: qwt-6.1.4-mkspecs.patch Patch3: qwt-6.1.4-mkspecs.patch
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: freetype2-devel BuildRequires: freetype2-devel
BuildRequires: gcc-c++ BuildRequires: gcc-c++
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: qt-devel BuildRequires: pkgconfig(Qt5Concurrent)
BuildRequires: pkgconfig(Qt5Designer)
BuildRequires: pkgconfig(Qt5OpenGL)
BuildRequires: pkgconfig(Qt5PrintSupport)
BuildRequires: pkgconfig(Qt5Svg)
BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libpng)
%description %description
The Qwt(Qt4) library contains GUI Components and utility classes which are The Qwt(Qt5) library contains GUI Components and utility classes which are
primarily useful for programs with a technical background. Beside a 2D primarily useful for programs with a technical background. Beside a 2D
plot widget it provides scales, sliders, dials, compasses, thermometers, plot widget it provides scales, sliders, dials, compasses, thermometers,
wheels and knobs to control or display values, arrays, or ranges of type wheels and knobs to control or display values, arrays, or ranges of type
double. double.
%package -n libqwt%{sover} %package -n libqwt%{sover}
Summary: Shared library for Qt4 Widgets Summary: Shared library for Qt5 Widgets for Technical Applications
Group: System/Libraries Group: System/Libraries
Provides: %{name} = %{version} Provides: lib%{name}-qt5-%{sover} = %{version}
Obsoletes: %{name} < %{version} Obsoletes: lib%{name}-qt5-%{sover} < %{version}
%description -n libqwt%{sover} %description -n libqwt%{sover}
This package contains the shared library to run Technical Applications This package contains the shared library to run Technical Applications
developed with/for Qwt(Qt4). developed with/for Qwt(Qt5).
%package devel %package devel
Summary: Include headers for Qwt Summary: Include headers and Qt Designer plugin for Qwt(Qt5)
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Requires: %{name} = %{version} Requires: %{name} = %{version}
Requires: freetype2-devel Requires: freetype2-devel
Requires: gcc-c++ Requires: gcc-c++
Requires: qt-devel Requires: pkgconfig(Qt5Concurrent)
Requires: pkgconfig(Qt5OpenGL)
Requires: pkgconfig(Qt5PrintSupport)
Requires: pkgconfig(Qt5Svg)
Requires: pkgconfig(Qt5Widgets)
Requires: pkgconfig(libpng) Requires: pkgconfig(libpng)
Conflicts: qwt-devel Recommends: %{name}-designer
%if 0%{?suse_version}
Recommends: %{name}-devel-doc Recommends: %{name}-devel-doc
Recommends: %{name}-examples Recommends: %{name}-examples
%endif Conflicts: otherproviders(qwt-qt5-devel)
Provides: qwt-qt5-devel = %{version}
Obsoletes: qwt6-qt5-devel < %{version}
Provides: qwt6-qt5-devel = %{version}
%description devel %description devel
This package contains the header files of Qwt and its Qt designer plugin This package contains the header files of Qwt and its Qt designer plugin
in order to create Qt applications using the Qwt(qt4) widgets. in order to create Qt applications using the Qwt(Qt5) widgets.
%package examples %package examples
Summary: Example programs using Qwt Summary: Example programs using Qwt(Qt5)
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Requires: %{name}-devel = %{version} Requires: %{name}-devel = %{version}
Provides: %{name}-qt5-examples = %{version}
Obsoletes: %{name}-qt5-examples < %{version}
%description examples %description examples
This package contains example programs demonstrating the Qwt widgets. This package contains example programs demonstrating the Qwt(Qt5) widgets.
%package designer
Summary: Plugin for the Qt5 Interface designer
Group: Development/Tools/GUI Builders
Requires: %{name}-devel = %{version}
Conflicts: otherproviders(qwt-qt5-designer)
Provides: qwt-qt5-designer = %{version}
Provides: %{name}-qt5-designer = %{version}
Obsoletes: %{name}-qt5-designer < %{version}
%description designer
The %{name}-designer package contains the plugin for the Qt5 User Interface
designer tool.
%package devel-doc %package devel-doc
Summary: Development documentation for Qwt(Qt4) Summary: Development documentation for Qwt(Qt5)
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Requires: %{name}-devel = %{version} Requires: %{name}-devel = %{version}
Provides: %{name}-qt5-devel-doc = %{version}
Obsoletes: %{name}-qt5-devel-doc < %{version}
%description devel-doc %description devel-doc
This package contains the development documentation of the Qwt widgets This package contains the development documentation of the Qwt(Qt5) widgets
as is it created by doxygen. as is it created by doxygen.
%prep %prep
%setup -q -n qwt-%{version} %setup -q -n qwt-%{version}
%patch0 -p1 %patch0 -p1
%patch1 -p1
%patch2 -p1 %patch2 -p1
# remove leftovers %patch3 -p1
rm -f doc/man/man3/_tmp_qwt*
# rename manpages
for f in doc/man/man3/*; do
qwt6name=$(echo $(basename ${f} .3)|sed \
'/^Qwt/{s/Qwt/Qwt6/;be;}; /^qwt/{s/qwt/qwt6/;be;}; s/$/_qwt6/; :e;')
mv -v ${f} doc/man/man3/${qwt6name}.3
done
%build %build
mkdir build mkdir build
pushd build pushd build
qmake .. \ %qmake5 ..
QMAKE_STRIP="" \ %make_jobs
QMAKE_CXXFLAGS="%{optflags}"
make V=1 %{?_smp_mflags}
popd popd
%install %install
pushd build pushd build
make V=1 DESTDIR=%{buildroot} install INSTALL_ROOT=%{buildroot} %qmake5_install
popd popd
# Qwt base examples # Qwt base examples
mkdir -p %{buildroot}%{_libdir}/%{name} mkdir -p %{buildroot}%{%_libqt5_docdir}/qwt6
mkdir -p %{buildroot}%{_docdir}/libqt4/%{name} mkdir -p %{buildroot}%{_libqt5_examplesdir}/qwt6
cp -r examples %{buildroot}%{_docdir}/libqt4/%{name}/examples cp -r examples %{buildroot}%{_libqt5_docdir}/qwt6/examples
cp -r build/examples/bin %{buildroot}%{_libdir}/%{name}/examples cp -r build/examples/bin %{buildroot}%{_libqt5_examplesdir}/qwt6
mkdir -p %{buildroot}%{_mandir} mkdir -p %{buildroot}%{_mandir}
mv %{buildroot}%{_docdir}/libqt4/qwt6/man/man3 \ mv %{buildroot}%{_libqt5_docdir}/qwt6/man/man3 \
%{buildroot}%{_mandir}/ %{buildroot}%{_mandir}/
%fdupes %{buildroot}/%{_prefix} %fdupes %{buildroot}%{_prefix}
%post -n libqwt%{sover} -p /sbin/ldconfig %post -n libqwt%{sover} -p /sbin/ldconfig
%postun -n libqwt%{sover} -p /sbin/ldconfig %postun -n libqwt%{sover} -p /sbin/ldconfig
@ -141,24 +157,24 @@ mv %{buildroot}%{_docdir}/libqt4/qwt6/man/man3 \
%else %else
%doc COPYING %doc COPYING
%endif %endif
%{_libdir}/libqwt.so.* %{_libqt5_libdir}/libqwt.so.*
%files designer
%{_libqt5_plugindir}/designer/*.so
%files devel %files devel
%doc README %doc README
%{_libdir}/libqwt.so %{_libqt5_libdir}/libqwt.so
%{_libdir}/pkgconfig/qwt.pc %{_libqt5_libdir}/pkgconfig/Qt5Qwt6.pc
%dir %{_includedir}/%{name} %{_libqt5_archdatadir}/mkspecs/features/
%{_includedir}/%{name}/*.h %dir %{_libqt5_includedir}/qwt6
%{_datadir}/qt4/mkspecs/features/ %{_libqt5_includedir}/qwt6/*.h
%{_mandir}/man?/*.?%{ext_info} %{_mandir}/man?/*.3%{ext_info}
%files examples %files examples
%dir %{_libdir}/%{name} %{_libqt5_examplesdir}/
%dir %{_libdir}/%{name}/examples
%{_libdir}/%{name}/examples/
%files devel-doc %files devel-doc
%dir %{_docdir}/libqt4/%{name} %doc %{_libqt5_docdir}/
%doc %{_docdir}/libqt4/%{name}/
%changelog %changelog