[pacman-dev] [PATCH] meson: fix build of executables with nonstandard libarchive path

Eli Schwartz eschwartz at archlinux.org
Mon Apr 15 00:56:17 UTC 2019


The libarchive header is used in alpm.h, and several binaries include
this header. This is noticeably a problem when using e.g. the musl-gcc
compiler which does not include /usr/include by default, and thus the
build system reports:

...../lib/libalpm/alpm.h:35:10: fatal error: archive.h: No such file or directory

More commonly, this will result in compiling against potentially the
wrong headers, if the libarchive installation picked up by pkg-config is
different from the one with headers in /usr/include, and /usr/include is
in the -isystem path.

Signed-off-by: Eli Schwartz <eschwartz at archlinux.org>
---
 meson.build | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meson.build b/meson.build
index cbd4b5d0..91f05031 100644
--- a/meson.build
+++ b/meson.build
@@ -387,6 +387,7 @@ executable(
   pacman_conf_sources,
   include_directories : includes,
   link_with : [libalpm],
+  dependencies : [libarchive],
   install : true,
 )
 
@@ -395,6 +396,7 @@ executable(
   testpkg_sources,
   include_directories : includes,
   link_with : [libalpm],
+  dependencies : [libarchive],
   install : true,
 )
 
-- 
2.21.0


More information about the pacman-dev mailing list