mirror of
https://github.com/samba-team/samba.git
synced 2025-01-11 05:18:09 +03:00
s3:modules: fix the build of vfs_notify_fam (bug #9545)
This adds the --with-fam option and configure checks. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org>
This commit is contained in:
parent
821171e422
commit
0d75c90225
@ -316,9 +316,13 @@ bld.SAMBA3_MODULE('vfs_gpfs',
|
||||
internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_gpfs'),
|
||||
enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_gpfs'))
|
||||
|
||||
vfs_notify_fam_deps='samba-util '
|
||||
if bld.CONFIG_SET('SAMBA_FAM_LIBS'):
|
||||
vfs_notify_fam_deps += bld.CONFIG_GET('SAMBA_FAM_LIBS')
|
||||
bld.SAMBA3_MODULE('vfs_notify_fam',
|
||||
subsystem='vfs',
|
||||
source=VFS_NOTIFY_FAM_SRC,
|
||||
deps=vfs_notify_fam_deps,
|
||||
init_function='',
|
||||
internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_notify_fam'),
|
||||
enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_notify_fam'))
|
||||
|
@ -42,6 +42,7 @@ def set_options(opt):
|
||||
opt.SAMBA3_ADD_OPTION('automount')
|
||||
opt.SAMBA3_ADD_OPTION('aio-support')
|
||||
opt.SAMBA3_ADD_OPTION('dmapi', default=False, help="build with DMAPI support")
|
||||
opt.SAMBA3_ADD_OPTION('fam', default=None) # None means autodetection
|
||||
opt.SAMBA3_ADD_OPTION('profiling-data', default=False)
|
||||
|
||||
opt.SAMBA3_ADD_OPTION('cluster-support', default=None)
|
||||
@ -163,6 +164,32 @@ main() {
|
||||
}''', 'HAVE_KERNEL_SHARE_MODES', addmain=False, execute=True,
|
||||
msg="Checking for kernel share modes")
|
||||
|
||||
# check for fam libs
|
||||
samba_fam_libs=None
|
||||
check_for_fam=False
|
||||
if Options.options.with_fam is None:
|
||||
check_for_fam=True
|
||||
elif Options.options.with_fam == True:
|
||||
check_for_fam=True
|
||||
|
||||
if check_for_fam and conf.CHECK_HEADERS('fam.h'):
|
||||
if conf.CHECK_FUNCS_IN('FAMOpen2', 'fam'):
|
||||
samba_fam_libs='fam'
|
||||
elif conf.CHECK_FUNCS_IN('FAMOpen2', 'fam C'):
|
||||
samba_fam_libs='fam C'
|
||||
conf.CHECK_TYPE('enum FAMCodes', headers='fam.h',
|
||||
define='HAVE_FAM_H_FAMCODES_TYPEDEF',
|
||||
msg='Checking whether enum FAMCodes is available')
|
||||
conf.CHECK_FUNCS_IN('FAMNoExists', 'fam')
|
||||
|
||||
if samba_fam_libs is not None:
|
||||
conf.DEFINE('SAMBA_FAM_LIBS', samba_fam_libs)
|
||||
else:
|
||||
if Options.options.with_fam == True:
|
||||
conf.fatal('FAM support requested, but no suitable FAM library found')
|
||||
elif check_for_fam:
|
||||
Logs.warn('no suitable FAM library found')
|
||||
|
||||
# check for DMAPI libs
|
||||
Logs.info("Checking for DMAPI library existence")
|
||||
conf.env['dmapi_lib'] = ''
|
||||
@ -1736,6 +1763,9 @@ main() {
|
||||
if conf.CONFIG_SET('HAVE_LINUX_IOCTL'):
|
||||
default_shared_modules.extend(TO_LIST('vfs_btrfs'))
|
||||
|
||||
if conf.CONFIG_SET('SAMBA_FAM_LIBS'):
|
||||
default_shared_modules.extend(TO_LIST('vfs_notify_fam'))
|
||||
|
||||
explicit_shared_modules = TO_LIST(Options.options.shared_modules, delimiter=',')
|
||||
explicit_static_modules = TO_LIST(Options.options.static_modules, delimiter=',')
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user