Moved from downstream private bug: Description of problem: Building spice-vdagent fails on RHEL6. <snip> spice-vdagent 0.15.0 ==================== prefix: /usr c compiler: gcc session-info: console-kit pciaccess: yes static uinput: no vdagentd pie + relro: yes install RH initscript: yes install systemd service: no Now type 'make' to build spice-vdagent Running 'PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/share/pkgconfig:/usr/lib:/usr/local/share/pkgconfig:/usr/lib/pkgconfig:/usr/lib/pkg-config: make' CC src/src_spice_vdagent-vdagent.o CC src/src_spice_vdagent-vdagent-x11.o CC src/src_spice_vdagent-vdagent-x11-randr.o cc1: warnings being treated as errors src/vdagent-x11-randr.c: In function ‘vdagent_x11_randr_handle_event’: src/vdagent-x11-randr.c:499: error: dereferencing pointer ‘sce’ does break strict-aliasing rules src/vdagent-x11-randr.c:499: error: dereferencing pointer ‘sce’ does break strict-aliasing rules src/vdagent-x11-randr.c:498: note: initialized from here make: *** [src/src_spice_vdagent-vdagent-x11-randr.o] Error 1 Return code: 512! make failed! Exiting! </snip> Version-Release number of selected component (if applicable): latest upstream spice-vdagent How reproducible: 100% Steps to Reproduce: 1. Get the latest upstream git repo 2. Run 'PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/share/pkgconfig:/usr/lib:/usr/local/share/pkgconfig:/usr/lib/pkgconfig:/usr/lib/pkg-config: /tmp/vd_agent/autogen.sh --prefix="/usr" --libdir=/usr/lib64 --sysconfdir=/etc' 3. Run 'PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/share/pkgconfig:/usr/lib:/usr/local/share/pkgconfig:/usr/lib/pkgconfig:/usr/lib/pkg-config: make' Actual results: Building fails Expected results: Building vdagent passes Additional info: --- Additional comment from Marc-Andre Lureau on 2015-04-15 11:12:58 EDT --- The build passes on f21+&rhel7, so I suppose this is a declaration issue in Xrandr headers. moving to libXrandr. (fwiw, we considered XORG_CWARNFLAGS, for no-strict-aliasing, but that macro is now explicitely deprecated for usage of that flag) --- Additional comment from Christophe Fergeau on 2015-04-15 11:26:42 EDT --- I believe XRRScreenChangeNotifyEvent *sce = (XRRScreenChangeNotifyEvent *) &event; really is breaking strict aliasing rules. I don't know what is the proper way of avoiding this though, save of using an union { XRRScreenChangeNotifyEvent rr_event; XEvent base_event; }; or -fno-strict-aliasing, which is what the RHEL6 package is doing. Upstream compilation failures do not belong in here though. --- Additional comment from RHEL Product and Program Management on 2015-04-15 11:30:48 EDT --- Since this bug report was entered in bugzilla, the release flag has been set to ? to ensure that it is properly evaluated for this release. --- Additional comment from Benjamin Tissoires on 2015-05-26 14:40:52 EDT --- It looks like the problem is not a libXrandr one, but a spice one. Re-assigning.
http://lists.freedesktop.org/archives/spice-devel/2015-June/020334.html should avoid this.
Fixed: http://cgit.freedesktop.org/spice/linux/vd_agent/commit/?id=d508979b6bde816e31caaa3cf29aeeccb60e70a2
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.