Package: cmake-data
Version: 2.8.9~rc3-1
Severity: normal
Tags: patch

liblastfm 1.0.1 in experimental failed to build packages on kfreebsd and
hurd because of the following error:

  dh_install: liblastfm-dev missing files (usr/lib/*/lib*.so), aborting

It looks like the problem is in
/usr/share/cmake-2.8/Modules/GNUInstallDirs.cmake

Starting at line 81, you'll see that cmake automatically appends the
library architecture to CMAKE_INSTALL_LIBDIR, but only when
CMAKE_SYSTEM_NAME matches "Linux".  The attached patch also checks for
the "kFreeBSD" and "GNU" system names.

diff --git a/Modules/GNUInstallDirs.cmake b/Modules/GNUInstallDirs.cmake
index 0302e4b..4dc2d68 100644
--- a/Modules/GNUInstallDirs.cmake
+++ b/Modules/GNUInstallDirs.cmake
@@ -78,7 +78,7 @@ if(NOT DEFINED CMAKE_INSTALL_LIBDIR)
   # For Debian with multiarch, use 'lib/${CMAKE_LIBRARY_ARCHITECTURE}' if
   # CMAKE_LIBRARY_ARCHITECTURE is set (which contains e.g. "i386-linux-gnu"
   # See http://wiki.debian.org/Multiarch
-  if(CMAKE_SYSTEM_NAME MATCHES "Linux"
+  if((CMAKE_SYSTEM_NAME MATCHES "Linux|kFreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "GNU")
       AND NOT CMAKE_CROSSCOMPILING)
     if (EXISTS "/etc/debian_version") # is this a debian system ?
        if(CMAKE_LIBRARY_ARCHITECTURE)

Reply via email to