Source: subversion Version: 1.10.6-1 Severity: important Justification: FTBFS on ports arch, built successfully before
Currently, subversion FTBFS on some architectures (at least x32) with: checking for KWallet... no configure: error: cannot find KWallet See: https://buildd.debian.org/status/fetch.php?pkg=subversion&arch=x32&ver=1.10.6-1&stamp=1564626123&raw=0 The real error message, however, is thus: configure:16137: checking for KWallet configure:16187: g++ -o conftest -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -specs=/usr/share/dpkg/pie-compile.specs -fstack-protector-strong -Wformat -Werror=format-security -std=c++11 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnux32/dbus-1.0/include -I/usr/include/x86_64-linux-gnux32/qt5/QtDBus -I/usr/include/x86_64-linux-gnux32/qt5 -I/usr/include/x86_64-linux-gnux32/qt5/QtGui -I/usr/include/x86_64-linux-gnux32/qt5 -I/usr/include/x86_64-linux-gnux32/qt5/QtCore -I/usr/include/x86_64-linux-gnux32/qt5 -I/usr/include/KF5/KWallet -I/usr/include/KF5/KCoreAddons -I/usr/include/KF5/KI18n -fPIC -Wdate-time -D_FORTIFY_SOURCE=2 -DLINUX -D_REENTRANT -D_GNU_SOURCE -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -specs=/usr/share/dpkg/pie-link.specs -Wl,-z,relro -Wl,-z,now -L/usr/lib/x86_64-linux-gnux32 conftest.cpp -ldbus-1 -lKF5Wallet -lKF5I18n -lKF5CoreAddons -lQt5Gui -lQt5DBus -lQt5Core >&5 In file included from /usr/include/x86_64-linux-gnux32/qt5/QtCore/qalgorithms.h:43, from /usr/include/x86_64-linux-gnux32/qt5/QtCore/qlist.h:43, from /usr/include/x86_64-linux-gnux32/qt5/QtCore/qstringlist.h:41, from /usr/include/x86_64-linux-gnux32/qt5/QtCore/QStringList:1, from /usr/include/KF5/KWallet/kwallet.h:24, from conftest.cpp:39: /usr/include/x86_64-linux-gnux32/qt5/QtCore/qglobal.h:1177:4: error: #error "You must build your code with position independent code if Qt was built with -reduce-relocations. " "Compile your code with -fPIC (-fPIE is not enough)." # error "You must build your code with position independent code if Qt was built with -reduce-relocations. "\ ^~~~~ configure:16187: $? = 1 The reason this fails is because how dpkg implements PIE on some architectures. This is buggy, but the dpkg maintainer seems to be unable to fix it in dpkg due to some GCC change enabling PIE by default sometimes. Basically, PIC should override PIE but, when PIE is implemented with -specs=, doesn’t. The following change to debian/rules allows the build to proceed: @@ +DEB_HOST_ARCH?=$(shell dpkg-architecture -qDEB_HOST_ARCH) +ifneq (,$(filter x32,${DEB_HOST_ARCH})) +DEB_BUILD_MAINT_OPTIONS=hardening=+all,-pie +else DEB_BUILD_MAINT_OPTIONS=hardening=+all +endif include /usr/share/dpkg/default.mk Please apply. Thanks in advance, //mirabilos -- tarent solutions GmbH Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/ Tel: +49 228 54881-393 • Fax: +49 228 54881-235 HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941 Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg ********** Mit der tarent Academy bieten wir auch Trainings und Schulungen in den Bereichen Softwareentwicklung, Agiles Arbeiten und Zukunftstechnologien an. Besuchen Sie uns auf www.tarent.de/academy. Wir freuen uns auf Ihren Kontakt. **********