maliit / framework

Core libraries of Maliit and server.
Other
52 stars 49 forks source link

pkg-config files are broken when CMAKE_INSTALL_{DATA,INCLUDE,LIB}DIR is absolute #106

Closed alexshpilkin closed 2 years ago

alexshpilkin commented 2 years ago

As per title: common/maliit-framework.pc.in, maliit-glib/maliit-glib.pc.in, src/maliit-plugins.pc.in, and src/maliit-server.pc.in have

prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=@CMAKE_INSTALL_PREFIX@
libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
datarootdir=${prefix}/@CMAKE_INSTALL_DATADIR@ # only in src/maliit-server.pc.in and src/maliit-plugins.pc.in

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

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.