build: Check for Linux kernel oplocks
authorKai Blin <kai@samba.org>
Sun, 21 Mar 2010 11:53:44 +0000 (12:53 +0100)
committerAndrew Tridgell <tridge@samba.org>
Tue, 6 Apr 2010 10:27:03 +0000 (20:27 +1000)
source3/wscript

index f0d85326c63c991b57ff55ddb82c98c8f2e392a0..589f1b4da240b97de22056d6b3785bc3e5ce18fb 100644 (file)
@@ -58,6 +58,19 @@ main() {
 }''', 'HAVE_KERNEL_CHANGE_NOTIFY', addmain=False, execute=True,
         msg="Checking for kernel change notify support")
 
+    # Check for Linux kernel oplocks
+    conf.CHECK_CODE('''
+#include <sys/types.h>
+#include <fcntl.h>
+#include <signal.h>
+#ifndef F_NOTIFY
+#define F_NOTIFY 1026
+#endif
+main() {
+        exit(fcntl(open("/tmp", O_RDONLY), F_NOTIFY, 0) == -1 ?  1 : 0);
+}''', 'HAVE_KERNEL_OPLOCKS_LINUX', addmain=False, execute=True,
+        msg="Checking for Linux kernel oplocks")
+
     # Look for CUPS
     conf.find_program('cups-config', var='CUPS_CONFIG')
     if conf.env.CUPS_CONFIG: