<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - xcb-proto.pc: 'pythondir' limits xcb-proto to a single version of Python"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=71419">71419</a>
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>xcb@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>xcb-proto.pc: 'pythondir' limits xcb-proto to a single version of Python
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>xcb@lists.freedesktop.org
          </td>
        </tr>

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

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>mgorny@gentoo.org
          </td>
        </tr>

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

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

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

        <tr>
          <th>Component</th>
          <td>Protocol
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>XCB
          </td>
        </tr></table>
      <p>
        <div>
        <pre>The xcb-proto.pc file lists 'pythondir' that was used during xcb-proto build,
and the c_client.py in xpyb & libxcb unconditionally add that path to sys.path.
As a result, the two latter packages work correctly only when run by the same
Python version as xcb-proto (which is not guaranteed at all) and can result in
a horrible mess otherwise.

On Gentoo, we are installing xcb-proto for all installed Python versions (that
is, in multiple site-packages directories). Sadly, this means that we either
have to null out the 'pythondir' in xcb-proto.pc or invent even worse hacks, or
otherwise any Python version would interfere with a random Python's
site-packages directory (at least leaving a mess of compiled files).

I suspect that 'pythondir' is intended to be used with non-standard install
locations. Could you then make it optional, that is use it only when Python
modules are installed to location outside of Python's sys.path? And then,
support having null 'pythondir' in c_client.py. We'd greatly appreciate.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>