Python extension module should be installed into arch-dependent directory

Bug #1926046 reported by Artem
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Compiz
Fix Released
Undecided
Unassigned

Bug Description

Currently Python extension module installs in '/usr/lib/python3.X/site-packages' but proper place is '/usr/lib64/python3.X/site-packages' on 64bit architectures (e.g. x86_64) and '/usr/lib/python3.X/site-packages on 32bit', see https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/.

Why this was made in early days documented in Compiz:

  # We must build the python module using CMake instead of distutils.
  #
  # The only way in which the python module can be built using distutils
  # is by using add_custom_command to "generate" it into existence.
  # Unfortunately this has drawbacks. Namely, it is not possible for
  # add_custom_command to depend on library targets. Because of that, there's
  # no way that we can guarantee that libcompizconfig.so will be linked
  # before compizconfig.so (which is required). The best that we can do
  # there is to use add_custom_target, and make that target depend on the
  # file,

but seems like this is not an issue anymore in new Cmake versions:

  > Changed in version 3.16: A target-level dependency is added if any dependency is a byproduct of a target or any of its build events in the same directory to ensure the byproducts will be available before this target is built.

https://cmake.org/cmake/help/latest/command/add_dependencies.html#command:add_dependencies

Related branches

Changed in compiz:
status: New → Fix Committed
Revision history for this message
Dmitry Shachnev (mitya57) wrote :

I have released version 0.9.14.2 today, which includes this fix.

Changed in compiz:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.