From d95a1310ef8e08a93a28f9766d1b4093f7891404 Mon Sep 17 00:00:00 2001 From: Lyude Paul Date: Fri, 22 Jun 2018 12:49:47 -0400 Subject: meson: ensure the libc has RPC functions when secure-rpc is enabled Currently our meson.build just makes the assumption that the libc is going to provide RPC functions. This doesn't actually seem to be the case on Fedora, which causes compilation to fail unexpectedly: ../../Projects/xserver/os/rpcauth.c:47:10: fatal error: rpc/rpc.h: No such file or directory #include ^~~~~~~~~~~ compilation terminated. So, in the event that we can't use libtirpc ensure that we actually check whether or not the libc provides rpc/rpc.h. If it doesn't, raise an error. Reviewed-by: Adam Jackson Signed-off-by: Lyude Paul --- os/meson.build | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/os/meson.build b/os/meson.build index eb8fcf55d..0e41f9c02 100644 --- a/os/meson.build +++ b/os/meson.build @@ -56,9 +56,13 @@ endif rpc_dep = [] if get_option('secure-rpc') - # prefer libtirpc (if available), otherwise assume RPC functions are + # prefer libtirpc (if available), otherwise ensure RPC functions are # provided by libc. rpc_dep = dependency('libtirpc', required: false) + if not (rpc_dep.found() or cc.has_header('rpc/rpc.h')) + error('secure-rpc requested, but neither libtirpc or libc RPC support were found') + endif + srcs_os += 'rpcauth.c' endif -- cgit v1.2.3