[Pkg-kde-extras] Bug#675892: smb4k FTBFS on armel and armhf qreal VS double issues

peter green plugwash at p10link.net
Sun Jun 3 23:45:40 UTC 2012


Package: smb4k
Severity: important
Tags: patch

Smb4k failed to build on the armel and armhf autobuilders with the following error.

cd /build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/obj-arm-linux-gnueabi/core && /usr/bin/c++   -DMAKE_SMB4KCORE_LIB -D_BSD_SOURCE -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -DQT_NO_STL -DQT_NO_CAST_TO_ASCII -D_REENTRANT -DKDE_DEPRECATED_WARNINGS -DKDE4_CMAKE_TOPLEVEL_DIR_LENGTH=40 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2  -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -DQT_NO_EXCEPTIONS -fno-check-new -fno-common -Woverloaded-virtual -fno-threadsafe-statics -fvisibility=hidden -Werror=return-type -fvisibility-inlines-hidden -DNDEBUG -DQT_NO_DEBUG -fPIC -I/build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/obj-arm-linux-gnueabi/core -I/build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/core -I/build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1 -I/build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/obj-arm-linux-gnueabi -I/usr/include/KDE -I/usr/include/qt4/phonon -I/usr/include/qt4/QtXmlPatterns -I/usr/include/qt4/QtXml -I/usr/include/qt4/QtUiTools -I/usr/include/qt4/QtTest -I/usr/include/qt4/QtSvg -I/usr/include/qt4/QtSql -I/usr/include/qt4/QtScriptTools -I/usr/include/qt4/QtScript -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtHelp -I/usr/include/qt4/QtDesigner -I/usr/include/qt4/QtDeclarative -I/usr/include/qt4/QtDBus -I/usr/include/qt4/Qt3Support -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtCore -I/usr/include/qt4/Qt -I/usr/share/qt4/mkspecs/default -I/usr/include/qt4    -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o CMakeFiles/smb4kcore.dir/smb4kshare.o -c /build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/core/smb4kshare.cpp
/build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/core/smb4kshare.cpp: In member function 'QString Smb4KShare::totalDiskSpaceString() const':
/build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/core/smb4kshare.cpp:482:50: error: cannot convert 'qreal* {aka float*}' to 'double*' for argument '2' to 'double modf(double, double*)'
/build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/core/smb4kshare.cpp: In member function 'QString Smb4KShare::freeDiskSpaceString() const':
/build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/core/smb4kshare.cpp:539:50: error: cannot convert 'qreal* {aka float*}' to 'double*' for argument '2' to 'double modf(double, double*)'
/build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/core/smb4kshare.cpp: In member function 'QString Smb4KShare::usedDiskSpaceString() const':
/build/buildd-smb4k_1.0.1-1-armel-kH7YB_/smb4k-1.0.1/core/smb4kshare.cpp:596:50: error: cannot convert 'qreal* {aka float*}' to 'double*' for argument '2' to 'double modf(double, double*)'
make[3]: *** [core/CMakeFiles/smb4kcore.dir/smb4kshare.o] Error 1

On most architectures qreal is defined as double but on arm architectures it is
defined as float. Assignments between qreal and double are ok because assignments
between float and double are ok. But assignments between pointers to qreal and
pointers to double are not ok. There can also be issues with templates and 
overloaded functions.

The fix is pretty trivial, just a matter of tweaking some variable definitions.
Patch is attatched.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: fix-qreal-vs-double.patch
Type: text/x-diff
Size: 1743 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-kde-extras/attachments/20120604/b65d731e/attachment.patch>


More information about the pkg-kde-extras mailing list