The patch looks reasonable to me and results in a successful build on my arm box, so I'll upload as an NMU. Here's the NMU diff.
Scott K
diff -Nru kst-2.0.3/debian/changelog kst-2.0.3/debian/changelog --- kst-2.0.3/debian/changelog 2011-06-27 18:47:04.000000000 -0400 +++ kst-2.0.3/debian/changelog 2011-12-23 00:46:59.000000000 -0500 @@ -1,3 +1,11 @@ +kst (2.0.3-1.1) unstable; urgency=low + + * Non-maintainer upload. + * Add debian/patches/fix-qreal-vs-double-for-arm.diff from Peter Green to + fix FTBFS on armel and armhf (Closes: #646423) + + -- Scott Kitterman <sc...@kitterman.com> Fri, 23 Dec 2011 00:45:25 -0500 + kst (2.0.3-1) unstable; urgency=low * New upstream release (Closes: #604335) diff -Nru kst-2.0.3/debian/patches/fix-qreal-vs-double-for-arm.diff kst-2.0.3/debian/patches/fix-qreal-vs-double-for-arm.diff --- kst-2.0.3/debian/patches/fix-qreal-vs-double-for-arm.diff 1969-12-31 19:00:00.000000000 -0500 +++ kst-2.0.3/debian/patches/fix-qreal-vs-double-for-arm.diff 2011-12-23 00:44:41.000000000 -0500 @@ -0,0 +1,100 @@ +Description: fix build on arm by changing variable types and adding typecasts + On most architectures qreal is double but on arm architectures qreal is + float. While it is OK to assign between qreal and double (because it is OK + to assign between float and double) some constructions (pointers, references, + templates) require the programmer to care about the distinction. +Author: Peter Green <plugw...@p10link.net> +Bug-Debian: http://bugs.debian.org/646423 +--- kst-2.0.3.orig/src/libkstapp/plotrenderitem.cpp ++++ kst-2.0.3/src/libkstapp/plotrenderitem.cpp +@@ -657,9 +657,9 @@ void PlotRenderItem::highlightNearestDat + bool bFoundImage = false; + + qreal distance, minDistance = 1.0E300; +- qreal x, y; ++ double x, y; + QPointF matchedPoint; +- qreal imageZ; ++ double imageZ; + qreal dxPerPix = double(projectionRect().width())/double(rect().width()); + + foreach(RelationPtr relation, relationList()) { +--- kst-2.0.3.orig/src/libkstapp/mainwindow.cpp ++++ kst-2.0.3/src/libkstapp/mainwindow.cpp +@@ -595,7 +595,7 @@ void MainWindow::savePrinterDefaults(QPr + _dialogDefaults->setValue("print/landscape", printer->orientation() == QPrinter::Landscape); + _dialogDefaults->setValue("print/paperSize", int(printer->paperSize())); + +- double left, top, right, bottom; ++ qreal left, top, right, bottom; + printer->getPageMargins(&left, &top, &right, &bottom, QPrinter::Millimeter); + _dialogDefaults->setValue("print/topLeftMargin", QPointF(left, top)); + _dialogDefaults->setValue("print/bottomRightMargin", QPointF(right, bottom)); +--- kst-2.0.3.orig/src/libkstapp/arrowitem.cpp ++++ kst-2.0.3/src/libkstapp/arrowitem.cpp +@@ -54,7 +54,7 @@ void ArrowItem::paint(QPainter *painter) + double sina = sin(theta); + double cosa = cos(theta); + double yin = sqrt(3.0) * deltax; +- double x1, y1, x2, y2; ++ qreal x1, y1, x2, y2; + QMatrix m(cosa, sina, -sina, cosa, 0.0, 0.0); + + m.map( deltax, yin, &x1, &y1); +@@ -75,7 +75,7 @@ void ArrowItem::paint(QPainter *painter) + double sina = sin(theta); + double cosa = cos(theta); + double yin = sqrt(3.0) * deltax; +- double x1, y1, x2, y2; ++ qreal x1, y1, x2, y2; + QMatrix m(cosa, sina, -sina, cosa, 0.0, 0.0); + + m.map( deltax, yin, &x1, &y1); +--- kst-2.0.3.orig/src/libkstapp/applicationsettingsdialog.cpp ++++ kst-2.0.3/src/libkstapp/applicationsettingsdialog.cpp +@@ -106,8 +106,8 @@ void ApplicationSettingsDialog::setupGri + + void ApplicationSettingsDialog::setupFill() { + QGradientStops stops; +- stops.append(qMakePair(1.0, QColor(Qt::white))); +- stops.append(qMakePair(0.0, QColor(Qt::lightGray))); ++ stops.append(qMakePair((qreal)1.0, QColor(Qt::white))); ++ stops.append(qMakePair((qreal)0.0, QColor(Qt::lightGray))); + _fillTab->gradientEditor()->setDefaultGradientStops(stops); + + QBrush b = ApplicationSettings::self()->backgroundBrush(); +--- kst-2.0.3.orig/src/libkstapp/plotitem.cpp ++++ kst-2.0.3/src/libkstapp/plotitem.cpp +@@ -989,7 +989,7 @@ void PlotItem::paintPlot(QPainter *paint + } + if (isUseAxisScale()) { + QFont font(painter->font()); +- qreal pointSize = qMax((font.pointSizeF() * _numberAxisLabelScaleFactor), ApplicationSettings::self()->minimumFontSize()); ++ qreal pointSize = qMax((font.pointSizeF() * _numberAxisLabelScaleFactor), (qreal)(ApplicationSettings::self()->minimumFontSize())); + + font.setPointSizeF(pointSize); + painter->setFont(font); +@@ -2662,7 +2662,7 @@ void PlotItem::computedRelationalMax(qre + if (relation->ignoreAutoScale()) + continue; + +- qreal min, max; ++ double min, max; + relation->yRange(projectionRect().left(), + projectionRect().right(), + &min, &max); +@@ -2670,11 +2670,11 @@ void PlotItem::computedRelationalMax(qre + //If the axis is in log mode, the lower extent will be the + //minimum value larger than zero. + if (yAxis()->axisLog()) +- minimum = minimum <= 0.0 ? min : qMin(min, minimum); ++ minimum = minimum <= 0.0 ? min : qMin((qreal)min, minimum); + else +- minimum = qMin(min, minimum); ++ minimum = qMin((qreal)min, minimum); + +- maximum = qMax(max, maximum); ++ maximum = qMax((qreal)max, maximum); + } + } + } diff -Nru kst-2.0.3/debian/patches/series kst-2.0.3/debian/patches/series --- kst-2.0.3/debian/patches/series 2011-06-27 16:14:52.000000000 -0400 +++ kst-2.0.3/debian/patches/series 2011-12-23 00:45:21.000000000 -0500 @@ -1,3 +1,4 @@ desktop-entry-lacks-main-category.diff desktop-entry-contains-encoding-key.diff hyphen-used-as-minus-sign.diff +fix-qreal-vs-double-for-arm.diff
signature.asc
Description: This is a digitally signed message part.