<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Building spice-vdagent fails on RHEL6 with build warnings"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=90981">90981</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Building spice-vdagent fails on RHEL6 with build warnings
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Spice
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>unix agent
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>spice-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>teuf@gnome.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>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.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>