GNUInstallDirs: multiarch Debian/Ubuntu in /usr/local
A trivial project to demonstrate the problem:
cmake_minimum_required(VERSION 3.16) # 3.17 broken as well
project(Test CXX)
include(GNUInstallDirs)
message(STATUS "CMAKE_LIBRARY_ARCHITECTURE=${CMAKE_LIBRARY_ARCHITECTURE}")
message(STATUS "CMAKE_INSTALL_LIBDIR=${CMAKE_INSTALL_LIBDIR}")
Result in the following output:
(docker/ubuntu/19.04/devel)root@c30b3f8e86e6:/tmp/gnu-install-dirs/BUILD# cmake ..
-- The CXX compiler identification is GNU 8.3.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ - works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- CMAKE_LIBRARY_ARCHITECTURE=x86_64-linux-gnu
-- CMAKE_INSTALL_LIBDIR=lib
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/gnu-install-dirs/BUILD
Meanwhile, the expected value for CMAKE_INSTALL_LIBDIR
is lib/x86_64-linux-gnu
.
Edited by Brad King