[PATCH libdrm 2/2] meson.build: Fix meson script on FreeBSD

Niclas Zeising zeising at daemonic.se
Sun Jun 2 18:16:00 UTC 2019


FreeBSD requires sys/types.h for sys/sysctl.h, add it as part of the
includes when checking for headers.
Instead of splitting out the check for sys/sysctl.h from the other
header checks, just add sys/types.h to all header checks.

FreeBSD doesn't normally ship bash, try regular sh instead if we can't
find bash.
---
 meson.build | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meson.build b/meson.build
index 64f0d5b1..eb55b918 100644
--- a/meson.build
+++ b/meson.build
@@ -181,7 +181,7 @@ endif
 dep_m = cc.find_library('m', required : false)
 foreach header : ['sys/sysctl.h', 'sys/select.h', 'alloca.h']
   config.set('HAVE_' + header.underscorify().to_upper(),
-    cc.compiles('#include <@0@>'.format(header), name : '@0@ works'.format(header)))
+    cc.compiles('#include <sys/types.h>\n#include <@0@>'.format(header), name : '@0@ works'.format(header)))
 endforeach
 if cc.has_header_symbol('sys/sysmacros.h', 'major')
   config.set10('MAJOR_IN_SYSMACROS', true)
@@ -249,7 +249,7 @@ endif
 with_man_pages = with_man_pages != 'false' and prog_xslt.found() and prog_sed.found()
 
 # Used for tests
-prog_bash = find_program('bash')
+prog_bash = find_program('bash', 'sh')
 
 config.set10('HAVE_VISIBILITY',
   cc.compiles('''int foo_hidden(void) __attribute__((visibility(("hidden"))));''',
-- 
2.21.0



More information about the dri-devel mailing list