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_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_tru64acl',
252 source=VFS_TRU64ACL_SRC,
254 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_true64acl'),
255 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_true64acl'))
257 bld.SAMBA3_MODULE('vfs_catia',
259 source=VFS_CATIA_SRC,
262 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_catia'),
263 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_catia'))
265 bld.SAMBA3_MODULE('vfs_streams_xattr',
267 source=VFS_STREAMS_XATTR_SRC,
270 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_streams_xattr'),
271 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_streams_xattr'))
273 bld.SAMBA3_MODULE('vfs_streams_depot',
275 source=VFS_STREAMS_DEPOT_SRC,
278 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_streams_depot'),
279 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_streams_depot'))
281 bld.SAMBA3_MODULE('vfs_cacheprime',
283 source=VFS_CACHEPRIME_SRC,
286 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_cacheprime'),
287 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_cacheprime'))
289 bld.SAMBA3_MODULE('vfs_prealloc',
291 source=VFS_PREALLOC_SRC,
294 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_prealloc'),
295 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_prealloc'))
297 bld.SAMBA3_MODULE('vfs_commit',
299 source=VFS_COMMIT_SRC,
302 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_commit'),
303 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_commit'))
305 bld.SAMBA3_MODULE('vfs_gpfs',
310 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_gpfs'),
311 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_gpfs'))
313 bld.SAMBA3_MODULE('vfs_notify_fam',
315 source=VFS_NOTIFY_FAM_SRC,
317 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_notify_fam'),
318 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_notify_fam'))
320 bld.SAMBA3_MODULE('vfs_readahead',
322 source=VFS_READAHEAD_SRC,
325 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_readahead'),
326 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_readahead'))
328 bld.SAMBA3_MODULE('vfs_tsmsm',
330 source=VFS_TSMSM_SRC,
333 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_tsmsm'),
334 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_tsmsm'))
336 bld.SAMBA3_MODULE('vfs_fileid',
338 source=VFS_FILEID_SRC,
341 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_fileid'),
342 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_fileid'))
344 bld.SAMBA3_MODULE('vfs_aio_fork',
346 source=VFS_AIO_FORK_SRC,
347 deps='samba-util tevent',
349 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_aio_fork'),
350 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_aio_fork'),
351 allow_undefined_symbols=True)
353 bld.SAMBA3_MODULE('vfs_aio_pthread',
355 source=VFS_AIO_PTHREAD_SRC,
356 deps='samba-util tevent',
358 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_aio_pthread'),
359 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_aio_pthread'),
360 allow_undefined_symbols=True)
362 bld.SAMBA3_MODULE('vfs_aio_posix',
364 source=VFS_AIO_POSIX_SRC,
365 deps='samba-util tevent',
367 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_aio_posix'),
368 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_aio_posix'),
369 allow_undefined_symbols=True)
371 bld.SAMBA3_MODULE('vfs_aio_linux',
373 source=VFS_AIO_LINUX_SRC,
374 deps='samba-util aio',
376 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_aio_linux'),
377 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_aio_linux'),
378 allow_undefined_symbols=True)
380 bld.SAMBA3_MODULE('vfs_preopen',
382 source=VFS_PREOPEN_SRC,
385 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_preopen'),
386 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_preopen'))
388 bld.SAMBA3_MODULE('vfs_syncops',
390 source=VFS_SYNCOPS_SRC,
393 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_syncops'),
394 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_syncops'))
396 bld.SAMBA3_MODULE('vfs_acl_xattr',
398 source=VFS_ACL_XATTR_SRC,
401 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_acl_xattr'),
402 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_acl_xattr'))
404 bld.SAMBA3_MODULE('vfs_acl_tdb',
406 source=VFS_ACL_TDB_SRC,
407 deps='NDR_XATTR tdb',
409 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_acl_tdb'),
410 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_acl_tdb'))
412 bld.SAMBA3_MODULE('vfs_smb_traffic_analyzer',
414 source=VFS_SMB_TRAFFIC_ANALYZER_SRC,
417 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_smb_traffic_analyzer'),
418 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_smb_traffic_analyzer'))
420 bld.SAMBA3_MODULE('vfs_dirsort',
422 source=VFS_DIRSORT_SRC,
425 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_dirsort'),
426 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_dirsort'))
428 bld.SAMBA3_MODULE('vfs_scannedonly',
430 source=VFS_SCANNEDONLY_SRC,
433 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_scannedonly'),
434 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_scannedonly'))
436 bld.SAMBA3_MODULE('vfs_crossrename',
438 source=VFS_CROSSRENAME_SRC,
441 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_crossrename'),
442 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_crossrename'))
444 bld.SAMBA3_MODULE('vfs_linux_xfs_sgid',
446 source=VFS_LINUX_XFS_SGID_SRC,
449 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_linux_xfs_sgid'),
450 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_linux_xfs_sgid'))
452 bld.SAMBA3_MODULE('vfs_time_audit',
454 source=VFS_TIME_AUDIT_SRC,
457 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_time_audit'),
458 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_time_audit'))
460 bld.SAMBA3_MODULE('vfs_media_harmony',
462 source=VFS_MEDIA_HARMONY_SRC,
465 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_media_harmony'),
466 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_media_harmony'))
468 bld.SAMBA3_MODULE('vfs_dfs_samba4',
470 source='vfs_dfs_samba4.c',
471 deps='samba-util dfs_server_ad samdb tevent',
473 internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_dfs_samba4') and bld.AD_DC_BUILD_IS_ENABLED(),
474 enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_dfs_samba4') and bld.AD_DC_BUILD_IS_ENABLED())
476 PERFCOUNT_TEST_SRC = 'perfcount_test.c'
478 bld.SAMBA3_SUBSYSTEM('perfcount',
482 bld.SAMBA3_MODULE('perfcount_test',
483 subsystem='perfcount',
484 source=PERFCOUNT_TEST_SRC,
486 internal_module=bld.SAMBA3_IS_STATIC_MODULE('perfcount_test'),
487 enabled=bld.SAMBA3_IS_ENABLED_MODULE('perfcount_test'))