When rebuilding syncevolution, I got this error message from g++ compiler: /usr/include/bluetooth/bluetooth.h: In function 'uint64_t bt_get_le64(void*)': /usr/include/bluetooth/bluetooth.h:131:9: error: invalid conversion from 'void*' to 'bt_get_le64(void*)::<anonymous struct>*' [-fpermissive] This is known bug in bluez header file (http://thread.gmane.org/gmane.linux.bluez.kernel/20364). A patch is posted there. I checked not yet build bluez-4.98, and it still does the illegal void* cast. Any chance to patch bluez header files?
Created attachment 564665 [details] Fix header files to be compilable in C++
Created attachment 564666 [details] Fix bluez 4.98 compilation with GCC 4.7
Created attachment 564690 [details] Spec file applying the patches and moving files per usr-move Without the usr-move tunes rpmbuild fails on missing or unpackaged files.
I have not Bluetooth hardware to test it, but it compiles and installs cleanly, it compiles in Koji (http://koji.fedoraproject.org/koji/taskinfo?taskID=3807373) and it allows me to rebuild syncevolution. Can I push it to the Fedora, or are you going to do it yourself?
*** Bug 797266 has been marked as a duplicate of this bug. ***
Petr, re-review the aforementioned thread, I think a newer version of the patch was adopted, for example, https://launchpadlibrarian.net/91997861/fix_bluez.patch I don't have any strong preference personally, either approach is better than the status quo.
I think it's better to introduce the same bug into all applications than to have different results for C and C++. This is the only difference in the two patches. The bigger bug the sooner we can discover it. IMHO, the change has no impact in C because void* can be casted to or from any other pointer type. The *__p = (whatever *) (ptr) does not mangle the pointer value, so __p gets exactly the same value as ptr. But I have not problem to push the same patch as Debian. Upstream has not yet committed any fix.
Created attachment 566289 [details] Fix header files to be compilable in C++ This is Debian patch for the same issue. I will commit this one.
The systemd and the assembler problems have been fixed already in 4.98-2.
bluez-4.98-3.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/bluez-4.98-3.fc17
bluez-4.98-3.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report.