google / benchmark

A microbenchmark support library
Apache License 2.0
8.97k stars 1.62k forks source link

[BUG] pkg-config file is broken when CMAKE_INSTALL_{INCLUDE,LIB}DIR is absolute #1396

Open alexshpilkin opened 2 years ago

alexshpilkin commented 2 years ago

Describe the bug

As per title: cmake/benchmark.pc.in has

prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}
libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@

and so can’t handle absolute paths in CMAKE_INSTALL_{INCLUDE,LIB}DIR. This leads to broken .pc files on NixOS in particular.

Identical to https://github.com/libjxl/libjxl/issues/1400 (fixed). See “Concatenating paths when building pkg-config files” for a thorough discussion of the problem and a suggested fix, or KDE’s extra-cmake-modules for a simpler approach.

System

$ uname -a
Linux localhost 5.15.36 #1-NixOS SMP Wed Apr 27 12:39:02 UTC 2022 x86_64 GNU/Linux
emilazy commented 2 weeks ago

This was fixed by https://github.com/google/benchmark/pull/1473.

Edit: Actually, not quite, that PR just moved to the FULL variants :(