diff options
-rw-r--r-- | lib/replace/wscript | 2 | ||||
-rw-r--r-- | source3/lib/sysquotas_nfs.c | 11 | ||||
-rw-r--r-- | source3/modules/nfs4acl_xattr_xdr.c | 9 | ||||
-rw-r--r-- | source3/wscript | 26 | ||||
-rw-r--r-- | source3/wscript_build | 2 |
5 files changed, 35 insertions, 15 deletions
diff --git a/lib/replace/wscript b/lib/replace/wscript index 57b0a45faee..2c638b77212 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript @@ -70,7 +70,7 @@ def configure(conf): conf.SET_TARGET_TYPE('tirpc', 'EMPTY') conf.CHECK_HEADERS('rpc/rpc.h rpc/nettype.h') if not conf.CONFIG_SET('HAVE_RPC_RPC_H'): - if conf.CHECK_CFG(package='libtirpc', args='--cflags', + if conf.CHECK_CFG(package='libtirpc', args='--cflags --libs', msg='Checking for libtirpc headers', uselib_store='TIRPC'): conf.CHECK_HEADERS('rpc/rpc.h rpc/nettype.h', lib='tirpc', together=True) diff --git a/source3/lib/sysquotas_nfs.c b/source3/lib/sysquotas_nfs.c index fe46d3fa36a..dd2b12d0ffd 100644 --- a/source3/lib/sysquotas_nfs.c +++ b/source3/lib/sysquotas_nfs.c @@ -36,13 +36,22 @@ * This is based on the FreeBSD / SUNOS5 section of quotas.c */ +/* <rpc/xdr.h> uses TRUE and FALSE */ +#ifdef TRUE +#undef TRUE +#endif + +#ifdef FALSE +#undef FALSE +#endif + #include <rpc/rpc.h> #include <rpc/types.h> +#include <rpc/xdr.h> #include <rpcsvc/rquota.h> #ifdef HAVE_RPC_NETTYPE_H #include <rpc/nettype.h> #endif -#include <rpc/xdr.h> #ifndef RQ_PATHLEN #define RQ_PATHLEN 1024 diff --git a/source3/modules/nfs4acl_xattr_xdr.c b/source3/modules/nfs4acl_xattr_xdr.c index 524e69c0e1f..399c104faa4 100644 --- a/source3/modules/nfs4acl_xattr_xdr.c +++ b/source3/modules/nfs4acl_xattr_xdr.c @@ -27,6 +27,15 @@ #define DBGC_CLASS DBGC_VFS #ifdef HAVE_RPC_XDR_H +/* <rpc/xdr.h> uses TRUE and FALSE */ +#ifdef TRUE +#undef TRUE +#endif + +#ifdef FALSE +#undef FALSE +#endif + #include <rpc/xdr.h> #include "nfs41acl.h" #include "nfs4acl_xattr_xdr.h" diff --git a/source3/wscript b/source3/wscript index 1c711aa570b..8751833b221 100644 --- a/source3/wscript +++ b/source3/wscript @@ -1446,10 +1446,22 @@ main() { conf.CHECK_STRUCTURE_MEMBER('struct dqblk', 'dqb_curbytes', define='HAVE_STRUCT_DQBLK_DQB_CURBYTES', headers='sys/quota.h') if conf.CHECK_HEADERS('rpcsvc/rquota.h', lib='tirpc'): - conf.DEFINE('HAVE_NFS_QUOTAS', '1') + # Optional structure member conf.CHECK_STRUCTURE_MEMBER('struct getquota_rslt', 'getquota_rslt_u', define='HAVE_GETQUOTA_RSLT_GETQUOTA_RSLT_U', - headers='rpcsvc/rquota.h') + headers='rpcsvc/rquota.h', + lib='tirpc') + + # Required fucntion for NFS quote support + conf.CHECK_CODE(''' + clnt_create("", RQUOTAPROG, RQUOTAVERS, "udp"); + ''', + headers="rpc/rpc.h rpc/types.h rpcsvc/rquota.h rpc/nettype.h rpc/xdr.h", + define='HAVE_NFS_QUOTAS', + msg='checking for clnt_create()', + execute=True, + local_include=False, + lib='tirpc') if (host_os.rfind('linux') > -1): conf.DEFINE('HAVE_QUOTACTL_LINUX', '1') @@ -1476,16 +1488,6 @@ main() { execute=True, addmain=False) - conf.CHECK_CODE(''' - clnt_create("", RQUOTAPROG, RQUOTAVERS, "udp"); -''', - headers="rpc/rpc.h rpc/types.h rpcsvc/rquota.h rpc/nettype.h rpc/xdr.h", - define='HAVE_NFS_QUOTAS', - msg='for NFS QUOTAS', - execute=True, - local_include=False, - lib='tirpc') - if conf.CONFIG_SET('HAVE_QUOTACTL_LINUX') or \ conf.CONFIG_SET('HAVE_QUOTACTL_4A') or \ conf.CONFIG_SET('HAVE_QUOTACTL_4B') or \ diff --git a/source3/wscript_build b/source3/wscript_build index d4bc3cb1700..76c5d6e203b 100644 --- a/source3/wscript_build +++ b/source3/wscript_build @@ -594,7 +594,7 @@ bld.SAMBA3_SUBSYSTEM('sysquotas', lib/sysquotas_nfs.c ''', allow_warnings=True, - deps='samba3-util samba-util') + deps='samba3-util samba-util tirpc') NOTIFY_SOURCES='' NOTIFY_DEPS='' |