3 VFS_DEFAULT_SRC
= '''vfs_default.c'''
4 VFS_AUDIT_SRC
= '''vfs_audit.c'''
5 VFS_EXTD_AUDIT_SRC
= '''vfs_extd_audit.c'''
6 VFS_FULL_AUDIT_SRC
= '''vfs_full_audit.c'''
7 VFS_FAKE_PERMS_SRC
= '''vfs_fake_perms.c'''
8 VFS_FAKE_ACLS_SRC
= '''vfs_fake_acls.c'''
9 VFS_RECYCLE_SRC
= '''vfs_recycle.c'''
10 VFS_NETATALK_SRC
= '''vfs_netatalk.c'''
11 VFS_DEFAULT_QUOTA_SRC
= '''vfs_default_quota.c'''
12 VFS_READONLY_SRC
= '''vfs_readonly.c getdate.c'''
13 VFS_CAP_SRC
= '''vfs_cap.c'''
14 VFS_EXPAND_MSDFS_SRC
= '''vfs_expand_msdfs.c'''
15 VFS_SHADOW_COPY_SRC
= '''vfs_shadow_copy.c'''
16 VFS_SHADOW_COPY2_SRC
= '''vfs_shadow_copy2.c'''
17 VFS_AFSACL_SRC
= '''vfs_afsacl.c'''
18 VFS_XATTR_TDB_SRC
= '''vfs_xattr_tdb.c'''
19 VFS_POSIXACL_SRC
= '''vfs_posixacl.c'''
20 VFS_AIXACL_SRC
= '''vfs_aixacl.c'''
21 VFS_AIXACL2_SRC
= '''vfs_aixacl2.c'''
22 VFS_SOLARISACL_SRC
= '''vfs_solarisacl.c'''
23 VFS_ZFSACL_SRC
= '''vfs_zfsacl.c'''
24 VFS_HPUXACL_SRC
= '''vfs_hpuxacl.c'''
25 VFS_IRIXACL_SRC
= '''vfs_irixacl.c'''
26 VFS_TRU64ACL_SRC
= '''vfs_tru64acl.c'''
27 VFS_CATIA_SRC
= 'vfs_catia.c'
28 VFS_STREAMS_XATTR_SRC
= 'vfs_streams_xattr.c'
29 VFS_STREAMS_DEPOT_SRC
= 'vfs_streams_depot.c'
30 VFS_CACHEPRIME_SRC
= 'vfs_cacheprime.c'
31 VFS_PREALLOC_SRC
= 'vfs_prealloc.c'
32 VFS_COMMIT_SRC
= 'vfs_commit.c'
33 VFS_GPFS_SRC
= 'vfs_gpfs.c gpfs.c'
34 VFS_NOTIFY_FAM_SRC
= 'vfs_notify_fam.c'
35 VFS_READAHEAD_SRC
= 'vfs_readahead.c'
36 VFS_TSMSM_SRC
= 'vfs_tsmsm.c'
37 VFS_FILEID_SRC
= 'vfs_fileid.c'
38 VFS_AIO_FORK_SRC
= 'vfs_aio_fork.c'
39 VFS_AIO_PTHREAD_SRC
= 'vfs_aio_pthread.c'
40 VFS_AIO_POSIX_SRC
= 'vfs_aio_posix.c'
41 VFS_AIO_LINUX_SRC
= 'vfs_aio_linux.c'
42 VFS_PREOPEN_SRC
= 'vfs_preopen.c'
43 VFS_SYNCOPS_SRC
= 'vfs_syncops.c'
44 VFS_ACL_XATTR_SRC
= 'vfs_acl_xattr.c'
45 VFS_ACL_TDB_SRC
= 'vfs_acl_tdb.c'
46 VFS_SMB_TRAFFIC_ANALYZER_SRC
= 'vfs_smb_traffic_analyzer.c'
47 VFS_DIRSORT_SRC
= 'vfs_dirsort.c'
48 VFS_SCANNEDONLY_SRC
= 'vfs_scannedonly.c'
49 VFS_CROSSRENAME_SRC
= 'vfs_crossrename.c'
50 VFS_LINUX_XFS_SGID_SRC
= 'vfs_linux_xfs_sgid.c'
51 VFS_TIME_AUDIT_SRC
= 'vfs_time_audit.c'
54 bld
.SAMBA3_SUBSYSTEM('NFS4_ACLS',
56 deps
='samba-util tdb')
58 bld
.SAMBA3_SUBSYSTEM('VFS_AIXACL_UTIL',
59 source
='vfs_aixacl_util.c',
62 bld
.SAMBA3_SUBSYSTEM('vfs',
67 bld
.SAMBA3_MODULE('vfs_default',
69 source
=VFS_DEFAULT_SRC
,
70 deps
='samba-util NDR_DFSBLOBS',
72 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_default'),
73 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_default'))
75 bld
.SAMBA3_MODULE('vfs_audit',
80 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_audit'),
81 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_audit'))
83 bld
.SAMBA3_MODULE('vfs_extd_audit',
85 source
=VFS_EXTD_AUDIT_SRC
,
88 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_extd_audit'),
89 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_extd_audit'))
91 bld
.SAMBA3_MODULE('vfs_full_audit',
93 source
=VFS_FULL_AUDIT_SRC
,
96 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_full_audit'),
97 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_full_audit'))
99 bld
.SAMBA3_MODULE('vfs_fake_perms',
101 source
=VFS_FAKE_PERMS_SRC
,
104 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_fake_perms'),
105 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_fake_perms'))
107 bld
.SAMBA3_MODULE('vfs_fake_acls',
109 source
=VFS_FAKE_ACLS_SRC
,
112 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_fake_acls'),
113 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_fake_acls'))
115 bld
.SAMBA3_MODULE('vfs_recycle',
117 source
=VFS_RECYCLE_SRC
,
120 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_recycle'),
121 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_recycle'))
123 bld
.SAMBA3_MODULE('vfs_netatalk',
125 source
=VFS_NETATALK_SRC
,
128 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_netatalk'),
129 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_netatalk'))
131 bld
.SAMBA3_MODULE('vfs_default_quota',
133 source
=VFS_DEFAULT_QUOTA_SRC
,
136 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_default_quota'),
137 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_default_quota'))
139 bld
.SAMBA3_MODULE('vfs_readonly',
141 source
=VFS_READONLY_SRC
,
144 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_readonly'),
145 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_readonly'))
147 bld
.SAMBA3_MODULE('vfs_cap',
152 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_cap'),
153 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_cap'))
155 bld
.SAMBA3_MODULE('vfs_expand_msdfs',
157 source
=VFS_EXPAND_MSDFS_SRC
,
160 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_expand_msdfs'),
161 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_expand_msdfs'))
163 bld
.SAMBA3_MODULE('vfs_shadow_copy',
165 source
=VFS_SHADOW_COPY_SRC
,
168 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_shadow_copy'),
169 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_shadow_copy'))
171 bld
.SAMBA3_MODULE('vfs_shadow_copy2',
173 source
=VFS_SHADOW_COPY2_SRC
,
174 deps
='samba-util tdb',
176 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_shadow_copy2'),
177 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_shadow_copy2'))
179 bld
.SAMBA3_MODULE('vfs_afsacl',
181 source
=VFS_AFSACL_SRC
,
184 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_afsacl'),
185 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_afsacl'))
187 bld
.SAMBA3_MODULE('vfs_xattr_tdb',
189 source
=VFS_XATTR_TDB_SRC
,
190 deps
='dbwrap xattr_tdb',
192 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_xattr_tdb'),
193 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_xattr_tdb'))
195 bld
.SAMBA3_MODULE('vfs_posix_eadb',
197 source
='vfs_posix_eadb.c',
198 deps
='tdb-wrap posix_eadb',
200 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_posix_eadb') and bld
.AD_DC_BUILD_IS_ENABLED(),
201 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_posix_eadb') and bld
.AD_DC_BUILD_IS_ENABLED())
203 bld
.SAMBA3_MODULE('vfs_posixacl',
205 source
=VFS_POSIXACL_SRC
,
208 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_posixacl'),
209 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_posixacl'))
211 bld
.SAMBA3_MODULE('vfs_aixacl',
213 source
=VFS_AIXACL_SRC
,
214 deps
='VFS_AIXACL_UTIL',
216 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aixacl'),
217 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aixacl'))
219 bld
.SAMBA3_MODULE('vfs_aixacl2',
221 source
=VFS_AIXACL2_SRC
,
222 deps
='NFS4_ACLS VFS_AIXACL_UTIL',
224 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aixacl2'),
225 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aixacl2'))
227 bld
.SAMBA3_MODULE('vfs_solarisacl',
229 source
=VFS_SOLARISACL_SRC
,
232 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_solarisacl'),
233 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_solarisacl'))
235 bld
.SAMBA3_MODULE('vfs_zfsacl',
237 source
=VFS_ZFSACL_SRC
,
238 deps
='NFS4_ACLS sunacl',
240 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_zfsacl'),
241 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_zfsacl'))
243 bld
.SAMBA3_MODULE('vfs_hpuxacl',
245 source
=VFS_HPUXACL_SRC
,
247 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_hpuxacl'),
248 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_hpuxacl'))
250 bld
.SAMBA3_MODULE('vfs_irixacl',
252 source
=VFS_IRIXACL_SRC
,
254 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_irixacl'),
255 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_irixacl'))
257 bld
.SAMBA3_MODULE('vfs_tru64acl',
259 source
=VFS_TRU64ACL_SRC
,
261 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_true64acl'),
262 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_true64acl'))
264 bld
.SAMBA3_MODULE('vfs_catia',
266 source
=VFS_CATIA_SRC
,
269 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_catia'),
270 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_catia'))
272 bld
.SAMBA3_MODULE('vfs_streams_xattr',
274 source
=VFS_STREAMS_XATTR_SRC
,
277 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_streams_xattr'),
278 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_streams_xattr'))
280 bld
.SAMBA3_MODULE('vfs_streams_depot',
282 source
=VFS_STREAMS_DEPOT_SRC
,
285 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_streams_depot'),
286 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_streams_depot'))
288 bld
.SAMBA3_MODULE('vfs_cacheprime',
290 source
=VFS_CACHEPRIME_SRC
,
293 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_cacheprime'),
294 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_cacheprime'))
296 bld
.SAMBA3_MODULE('vfs_prealloc',
298 source
=VFS_PREALLOC_SRC
,
301 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_prealloc'),
302 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_prealloc'))
304 bld
.SAMBA3_MODULE('vfs_commit',
306 source
=VFS_COMMIT_SRC
,
309 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_commit'),
310 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_commit'))
312 bld
.SAMBA3_MODULE('vfs_gpfs',
317 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_gpfs'),
318 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_gpfs'))
320 bld
.SAMBA3_MODULE('vfs_notify_fam',
322 source
=VFS_NOTIFY_FAM_SRC
,
324 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_notify_fam'),
325 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_notify_fam'))
327 bld
.SAMBA3_MODULE('vfs_readahead',
329 source
=VFS_READAHEAD_SRC
,
332 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_readahead'),
333 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_readahead'))
335 bld
.SAMBA3_MODULE('vfs_tsmsm',
337 source
=VFS_TSMSM_SRC
,
340 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_tsmsm'),
341 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_tsmsm'))
343 bld
.SAMBA3_MODULE('vfs_fileid',
345 source
=VFS_FILEID_SRC
,
348 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_fileid'),
349 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_fileid'))
351 bld
.SAMBA3_MODULE('vfs_aio_fork',
353 source
=VFS_AIO_FORK_SRC
,
354 deps
='samba-util tevent',
356 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aio_fork'),
357 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aio_fork'),
358 allow_undefined_symbols
=True)
360 bld
.SAMBA3_MODULE('vfs_aio_pthread',
362 source
=VFS_AIO_PTHREAD_SRC
,
363 deps
='samba-util tevent',
365 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aio_pthread'),
366 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aio_pthread'),
367 allow_undefined_symbols
=True)
369 bld
.SAMBA3_MODULE('vfs_aio_posix',
371 source
=VFS_AIO_POSIX_SRC
,
372 deps
='samba-util tevent',
374 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aio_posix'),
375 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aio_posix'),
376 allow_undefined_symbols
=True)
378 bld
.SAMBA3_MODULE('vfs_aio_linux',
380 source
=VFS_AIO_LINUX_SRC
,
381 deps
='samba-util aio',
383 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aio_linux'),
384 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aio_linux'),
385 allow_undefined_symbols
=True)
387 bld
.SAMBA3_MODULE('vfs_preopen',
389 source
=VFS_PREOPEN_SRC
,
392 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_preopen'),
393 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_preopen'))
395 bld
.SAMBA3_MODULE('vfs_syncops',
397 source
=VFS_SYNCOPS_SRC
,
400 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_syncops'),
401 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_syncops'))
403 bld
.SAMBA3_MODULE('vfs_acl_xattr',
405 source
=VFS_ACL_XATTR_SRC
,
408 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_acl_xattr'),
409 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_acl_xattr'))
411 bld
.SAMBA3_MODULE('vfs_acl_tdb',
413 source
=VFS_ACL_TDB_SRC
,
414 deps
='NDR_XATTR tdb',
416 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_acl_tdb'),
417 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_acl_tdb'))
419 bld
.SAMBA3_MODULE('vfs_smb_traffic_analyzer',
421 source
=VFS_SMB_TRAFFIC_ANALYZER_SRC
,
424 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_smb_traffic_analyzer'),
425 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_smb_traffic_analyzer'))
427 bld
.SAMBA3_MODULE('vfs_dirsort',
429 source
=VFS_DIRSORT_SRC
,
432 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_dirsort'),
433 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_dirsort'))
435 bld
.SAMBA3_MODULE('vfs_scannedonly',
437 source
=VFS_SCANNEDONLY_SRC
,
440 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_scannedonly'),
441 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_scannedonly'))
443 bld
.SAMBA3_MODULE('vfs_crossrename',
445 source
=VFS_CROSSRENAME_SRC
,
448 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_crossrename'),
449 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_crossrename'))
451 bld
.SAMBA3_MODULE('vfs_linux_xfs_sgid',
453 source
=VFS_LINUX_XFS_SGID_SRC
,
456 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_linux_xfs_sgid'),
457 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_linux_xfs_sgid'))
459 bld
.SAMBA3_MODULE('vfs_time_audit',
461 source
=VFS_TIME_AUDIT_SRC
,
464 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_time_audit'),
465 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_time_audit'))
467 bld
.SAMBA3_MODULE('vfs_dfs_samba4',
469 source
='vfs_dfs_samba4.c',
470 deps
='samba-util dfs_server_ad samdb tevent',
472 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_dfs_samba4') and bld
.AD_DC_BUILD_IS_ENABLED(),
473 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_dfs_samba4') and bld
.AD_DC_BUILD_IS_ENABLED())
475 PERFCOUNT_TEST_SRC
= 'perfcount_test.c'
477 bld
.SAMBA3_SUBSYSTEM('perfcount',
481 bld
.SAMBA3_MODULE('perfcount_test',
482 subsystem
='perfcount',
483 source
=PERFCOUNT_TEST_SRC
,
485 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('perfcount_test'),
486 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('perfcount_test'))