Daniel Shahaf <d...@daniel.shahaf.name> writes: > Please get the tarballs from > https://dist.apache.org/repos/dist/dev/subversion > and add your signatures there.
By default we build both shared and static libraries. When building against KDE5 the static build of kwallet.cpp fails with the less than obvious error: Makefile:776: recipe for target 'subversion/libsvn_auth_kwallet/kwallet.lo' failed The underlying error (which the build hides by redirecting static build errors to /dev/null) is: In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qcoreapplication.h:43:0, from /usr/include/x86_64-linux-gnu/qt5/QtCore/QCoreApplication:1, from subversion/libsvn_auth_kwallet/kwallet.cpp:38: /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:1113: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. "\ ^~~~~ For now the user can resolve the build error by configuring with --disable-static, or by replacing the KDE5 build environment with KDE4, or by configuring with --without-kwallet. What is the long-term solution? The static auth provider libraries are a bit pointless. Our own libraries only ever dynamically loads the shared libraries, and the configure script explicitly requires shared library support to enable the auth providers. I suppose we could pass -fPIC to the static kwallet auth provider build but perhaps some Makefile magic to disable all the static auth provider builds would be better. -- Philip