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_TRU64ACL_SRC
= '''vfs_tru64acl.c'''
26 VFS_CATIA_SRC
= 'vfs_catia.c'
27 VFS_STREAMS_XATTR_SRC
= 'vfs_streams_xattr.c'
28 VFS_STREAMS_DEPOT_SRC
= 'vfs_streams_depot.c'
29 VFS_CACHEPRIME_SRC
= 'vfs_cacheprime.c'
30 VFS_PREALLOC_SRC
= 'vfs_prealloc.c'
31 VFS_COMMIT_SRC
= 'vfs_commit.c'
32 VFS_GPFS_SRC
= 'vfs_gpfs.c gpfs.c'
33 VFS_NOTIFY_FAM_SRC
= 'vfs_notify_fam.c'
34 VFS_READAHEAD_SRC
= 'vfs_readahead.c'
35 VFS_TSMSM_SRC
= 'vfs_tsmsm.c'
36 VFS_FILEID_SRC
= 'vfs_fileid.c'
37 VFS_AIO_FORK_SRC
= 'vfs_aio_fork.c'
38 VFS_AIO_PTHREAD_SRC
= 'vfs_aio_pthread.c'
39 VFS_AIO_POSIX_SRC
= 'vfs_aio_posix.c'
40 VFS_AIO_LINUX_SRC
= 'vfs_aio_linux.c'
41 VFS_PREOPEN_SRC
= 'vfs_preopen.c'
42 VFS_SYNCOPS_SRC
= 'vfs_syncops.c'
43 VFS_ACL_XATTR_SRC
= 'vfs_acl_xattr.c'
44 VFS_ACL_TDB_SRC
= 'vfs_acl_tdb.c'
45 VFS_SMB_TRAFFIC_ANALYZER_SRC
= 'vfs_smb_traffic_analyzer.c'
46 VFS_DIRSORT_SRC
= 'vfs_dirsort.c'
47 VFS_SCANNEDONLY_SRC
= 'vfs_scannedonly.c'
48 VFS_CROSSRENAME_SRC
= 'vfs_crossrename.c'
49 VFS_LINUX_XFS_SGID_SRC
= 'vfs_linux_xfs_sgid.c'
50 VFS_TIME_AUDIT_SRC
= 'vfs_time_audit.c'
51 VFS_MEDIA_HARMONY_SRC
= 'vfs_media_harmony.c'
54 bld
.SAMBA3_SUBSYSTEM('NFS4_ACLS',
56 deps
='samba-util tdb')
58 bld
.SAMBA3_LIBRARY('non_posix_acls',
59 source
='non_posix_acls.c',
60 deps
='samba-util vfs',
63 bld
.SAMBA3_SUBSYSTEM('VFS_AIXACL_UTIL',
64 source
='vfs_aixacl_util.c',
67 bld
.SAMBA3_SUBSYSTEM('vfs',
72 bld
.SAMBA3_MODULE('vfs_default',
74 source
=VFS_DEFAULT_SRC
,
75 deps
='samba-util NDR_DFSBLOBS',
77 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_default'),
78 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_default'))
80 bld
.SAMBA3_MODULE('vfs_audit',
85 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_audit'),
86 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_audit'))
88 bld
.SAMBA3_MODULE('vfs_extd_audit',
90 source
=VFS_EXTD_AUDIT_SRC
,
93 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_extd_audit'),
94 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_extd_audit'))
96 bld
.SAMBA3_MODULE('vfs_full_audit',
98 source
=VFS_FULL_AUDIT_SRC
,
101 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_full_audit'),
102 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_full_audit'))
104 bld
.SAMBA3_MODULE('vfs_fake_perms',
106 source
=VFS_FAKE_PERMS_SRC
,
109 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_fake_perms'),
110 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_fake_perms'))
112 bld
.SAMBA3_MODULE('vfs_fake_acls',
114 source
=VFS_FAKE_ACLS_SRC
,
117 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_fake_acls'),
118 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_fake_acls'))
120 bld
.SAMBA3_MODULE('vfs_recycle',
122 source
=VFS_RECYCLE_SRC
,
125 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_recycle'),
126 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_recycle'))
128 bld
.SAMBA3_MODULE('vfs_netatalk',
130 source
=VFS_NETATALK_SRC
,
133 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_netatalk'),
134 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_netatalk'))
136 bld
.SAMBA3_MODULE('vfs_default_quota',
138 source
=VFS_DEFAULT_QUOTA_SRC
,
141 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_default_quota'),
142 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_default_quota'))
144 bld
.SAMBA3_MODULE('vfs_readonly',
146 source
=VFS_READONLY_SRC
,
149 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_readonly'),
150 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_readonly'))
152 bld
.SAMBA3_MODULE('vfs_cap',
157 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_cap'),
158 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_cap'))
160 bld
.SAMBA3_MODULE('vfs_expand_msdfs',
162 source
=VFS_EXPAND_MSDFS_SRC
,
165 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_expand_msdfs'),
166 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_expand_msdfs'))
168 bld
.SAMBA3_MODULE('vfs_shadow_copy',
170 source
=VFS_SHADOW_COPY_SRC
,
173 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_shadow_copy'),
174 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_shadow_copy'))
176 bld
.SAMBA3_MODULE('vfs_shadow_copy2',
178 source
=VFS_SHADOW_COPY2_SRC
,
179 deps
='samba-util tdb',
181 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_shadow_copy2'),
182 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_shadow_copy2'))
184 bld
.SAMBA3_MODULE('vfs_afsacl',
186 source
=VFS_AFSACL_SRC
,
189 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_afsacl'),
190 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_afsacl'))
192 bld
.SAMBA3_MODULE('vfs_xattr_tdb',
194 source
=VFS_XATTR_TDB_SRC
,
195 deps
='dbwrap xattr_tdb',
197 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_xattr_tdb'),
198 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_xattr_tdb'))
200 bld
.SAMBA3_MODULE('vfs_posix_eadb',
202 source
='vfs_posix_eadb.c',
203 deps
='tdb-wrap posix_eadb',
205 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_posix_eadb') and bld
.AD_DC_BUILD_IS_ENABLED(),
206 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_posix_eadb') and bld
.AD_DC_BUILD_IS_ENABLED())
208 bld
.SAMBA3_MODULE('vfs_posixacl',
210 source
=VFS_POSIXACL_SRC
,
213 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_posixacl'),
214 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_posixacl'))
216 bld
.SAMBA3_MODULE('vfs_aixacl',
218 source
=VFS_AIXACL_SRC
,
219 deps
='VFS_AIXACL_UTIL',
221 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aixacl'),
222 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aixacl'))
224 bld
.SAMBA3_MODULE('vfs_aixacl2',
226 source
=VFS_AIXACL2_SRC
,
227 deps
='NFS4_ACLS VFS_AIXACL_UTIL',
229 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aixacl2'),
230 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aixacl2'))
232 bld
.SAMBA3_MODULE('vfs_solarisacl',
234 source
=VFS_SOLARISACL_SRC
,
237 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_solarisacl'),
238 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_solarisacl'))
240 bld
.SAMBA3_MODULE('vfs_zfsacl',
242 source
=VFS_ZFSACL_SRC
,
243 deps
='NFS4_ACLS sunacl',
245 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_zfsacl'),
246 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_zfsacl'))
248 bld
.SAMBA3_MODULE('vfs_hpuxacl',
250 source
=VFS_HPUXACL_SRC
,
252 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_hpuxacl'),
253 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_hpuxacl'))
255 bld
.SAMBA3_MODULE('vfs_tru64acl',
257 source
=VFS_TRU64ACL_SRC
,
259 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_true64acl'),
260 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_true64acl'))
262 bld
.SAMBA3_MODULE('vfs_catia',
264 source
=VFS_CATIA_SRC
,
267 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_catia'),
268 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_catia'))
270 bld
.SAMBA3_MODULE('vfs_streams_xattr',
272 source
=VFS_STREAMS_XATTR_SRC
,
275 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_streams_xattr'),
276 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_streams_xattr'))
278 bld
.SAMBA3_MODULE('vfs_streams_depot',
280 source
=VFS_STREAMS_DEPOT_SRC
,
283 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_streams_depot'),
284 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_streams_depot'))
286 bld
.SAMBA3_MODULE('vfs_cacheprime',
288 source
=VFS_CACHEPRIME_SRC
,
291 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_cacheprime'),
292 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_cacheprime'))
294 bld
.SAMBA3_MODULE('vfs_prealloc',
296 source
=VFS_PREALLOC_SRC
,
299 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_prealloc'),
300 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_prealloc'))
302 bld
.SAMBA3_MODULE('vfs_commit',
304 source
=VFS_COMMIT_SRC
,
307 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_commit'),
308 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_commit'))
310 bld
.SAMBA3_MODULE('vfs_gpfs',
313 deps
='NFS4_ACLS non_posix_acls',
315 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_gpfs'),
316 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_gpfs'))
318 bld
.SAMBA3_MODULE('vfs_notify_fam',
320 source
=VFS_NOTIFY_FAM_SRC
,
322 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_notify_fam'),
323 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_notify_fam'))
325 bld
.SAMBA3_MODULE('vfs_readahead',
327 source
=VFS_READAHEAD_SRC
,
330 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_readahead'),
331 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_readahead'))
333 bld
.SAMBA3_MODULE('vfs_tsmsm',
335 source
=VFS_TSMSM_SRC
,
338 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_tsmsm'),
339 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_tsmsm'))
341 bld
.SAMBA3_MODULE('vfs_fileid',
343 source
=VFS_FILEID_SRC
,
346 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_fileid'),
347 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_fileid'))
349 bld
.SAMBA3_MODULE('vfs_aio_fork',
351 source
=VFS_AIO_FORK_SRC
,
352 deps
='samba-util tevent',
354 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aio_fork'),
355 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aio_fork'),
356 allow_undefined_symbols
=True)
358 bld
.SAMBA3_MODULE('vfs_aio_pthread',
360 source
=VFS_AIO_PTHREAD_SRC
,
361 deps
='samba-util tevent',
363 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aio_pthread'),
364 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aio_pthread'),
365 allow_undefined_symbols
=True)
367 bld
.SAMBA3_MODULE('vfs_aio_posix',
369 source
=VFS_AIO_POSIX_SRC
,
370 deps
='samba-util tevent',
372 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aio_posix'),
373 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aio_posix'),
374 allow_undefined_symbols
=True)
376 bld
.SAMBA3_MODULE('vfs_aio_linux',
378 source
=VFS_AIO_LINUX_SRC
,
379 deps
='samba-util aio',
381 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_aio_linux'),
382 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_aio_linux'),
383 allow_undefined_symbols
=True)
385 bld
.SAMBA3_MODULE('vfs_preopen',
387 source
=VFS_PREOPEN_SRC
,
390 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_preopen'),
391 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_preopen'))
393 bld
.SAMBA3_MODULE('vfs_syncops',
395 source
=VFS_SYNCOPS_SRC
,
398 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_syncops'),
399 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_syncops'))
401 bld
.SAMBA3_MODULE('vfs_acl_xattr',
403 source
=VFS_ACL_XATTR_SRC
,
406 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_acl_xattr'),
407 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_acl_xattr'))
409 bld
.SAMBA3_MODULE('vfs_acl_tdb',
411 source
=VFS_ACL_TDB_SRC
,
412 deps
='NDR_XATTR tdb',
414 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_acl_tdb'),
415 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_acl_tdb'))
417 bld
.SAMBA3_MODULE('vfs_smb_traffic_analyzer',
419 source
=VFS_SMB_TRAFFIC_ANALYZER_SRC
,
422 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_smb_traffic_analyzer'),
423 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_smb_traffic_analyzer'))
425 bld
.SAMBA3_MODULE('vfs_dirsort',
427 source
=VFS_DIRSORT_SRC
,
430 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_dirsort'),
431 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_dirsort'))
433 bld
.SAMBA3_MODULE('vfs_scannedonly',
435 source
=VFS_SCANNEDONLY_SRC
,
438 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_scannedonly'),
439 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_scannedonly'))
441 bld
.SAMBA3_MODULE('vfs_crossrename',
443 source
=VFS_CROSSRENAME_SRC
,
446 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_crossrename'),
447 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_crossrename'))
449 bld
.SAMBA3_MODULE('vfs_linux_xfs_sgid',
451 source
=VFS_LINUX_XFS_SGID_SRC
,
454 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_linux_xfs_sgid'),
455 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_linux_xfs_sgid'))
457 bld
.SAMBA3_MODULE('vfs_time_audit',
459 source
=VFS_TIME_AUDIT_SRC
,
462 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_time_audit'),
463 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_time_audit'))
465 bld
.SAMBA3_MODULE('vfs_media_harmony',
467 source
=VFS_MEDIA_HARMONY_SRC
,
470 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_media_harmony'),
471 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_media_harmony'))
473 bld
.SAMBA3_MODULE('vfs_dfs_samba4',
475 source
='vfs_dfs_samba4.c',
476 deps
='samba-util dfs_server_ad samdb tevent',
478 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('vfs_dfs_samba4') and bld
.AD_DC_BUILD_IS_ENABLED(),
479 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('vfs_dfs_samba4') and bld
.AD_DC_BUILD_IS_ENABLED())
481 PERFCOUNT_TEST_SRC
= 'perfcount_test.c'
483 bld
.SAMBA3_SUBSYSTEM('perfcount',
487 bld
.SAMBA3_MODULE('perfcount_test',
488 subsystem
='perfcount',
489 source
=PERFCOUNT_TEST_SRC
,
491 internal_module
=bld
.SAMBA3_IS_STATIC_MODULE('perfcount_test'),
492 enabled
=bld
.SAMBA3_IS_ENABLED_MODULE('perfcount_test'))