bld.RECURSE('samdb/ldb_modules')
-bld.SAMBA_SUBSYSTEM('SAMDB',
+bld.SAMBA_LIBRARY('samdb',
source='samdb/samdb.c samdb/samdb_privilege.c samdb/cracknames.c repl/replicated_objects.c',
+ pc_files='samdb.pc',
autoproto='samdb/samdb_proto.h',
- public_deps='HEIMDAL_KRB5',
- deps='LIBNDR NDR_DRSUAPI NDR_DRSBLOBS NSS_WRAPPER auth_system_session LIBCLI_AUTH LIBNDR SAMDB_SCHEMA LDBSAMBA SAMDB_COMMON LIBCLI_DRSUAPI LIBCLI_LDAP_NDR LIBSAMBA-UTIL'
+ public_deps='krb5',
+ public_headers='',
+ vnum='0.0.1',
+ deps='ndr NDR_DRSUAPI NDR_DRSBLOBS auth_system_session LIBCLI_AUTH ndr SAMDB_SCHEMA ldbsamba samdb-common LIBCLI_DRSUAPI cli-ldap-common samba-util com_err authkrb5 samba-credentials ldbwrap samba-errors krb5samba ldb',
)
-
-bld.SAMBA_SUBSYSTEM('SAMDB_COMMON',
- source='common/util.c common/util_samr.c common/dsdb_dn.c common/dsdb_access.c ../../libds/common/flag_mapping.c',
+bld.SAMBA_LIBRARY('samdb-common',
+ source='common/util.c common/util_trusts.c common/util_groups.c common/util_samr.c common/dsdb_dn.c common/dsdb_access.c',
autoproto='common/proto.h',
- deps='ldb NDR_DRSBLOBS LIBCLI_LDAP_NDR UTIL_LDB LIBCLI_AUTH DSDB_MODULE_HELPERS'
+ private_library=True,
+ deps='ldb NDR_DRSBLOBS util_ldb LIBCLI_AUTH samba-hostconfig samba_socket cli-ldap-common flag_mapping'
)
bld.SAMBA_SUBSYSTEM('SAMDB_SCHEMA',
- source='schema/schema_init.c schema/schema_set.c schema/schema_query.c schema/schema_syntax.c schema/schema_description.c schema/schema_convert_to_ol.c schema/schema_inferiors.c schema/schema_prefixmap.c schema/schema_info_attr.c schema/schema_filtered.c',
+ source='schema/schema_init.c schema/schema_set.c schema/schema_query.c schema/schema_syntax.c schema/schema_description.c schema/schema_convert_to_ol.c schema/schema_inferiors.c schema/schema_prefixmap.c schema/schema_info_attr.c schema/schema_filtered.c schema/dsdb_dn.c',
autoproto='schema/proto.h',
- deps='SAMDB_COMMON NDR_DRSUAPI NDR_DRSBLOBS LDBSAMBA tevent'
+ deps='samdb-common NDR_DRSUAPI NDR_DRSBLOBS ldbsamba tevent'
)
-bld.SAMBA_MODULE('DREPL_SRV',
- source='repl/drepl_service.c repl/drepl_periodic.c repl/drepl_partitions.c repl/drepl_out_pull.c repl/drepl_out_helpers.c repl/drepl_notify.c repl/drepl_ridalloc.c',
+bld.SAMBA_MODULE('service_drepl',
+ source='repl/drepl_service.c repl/drepl_periodic.c repl/drepl_partitions.c repl/drepl_out_pull.c repl/drepl_out_helpers.c repl/drepl_notify.c repl/drepl_ridalloc.c repl/drepl_extended.c repl/drepl_fsmo.c repl/drepl_secret.c repl/drepl_replica.c',
autoproto='repl/drepl_service_proto.h',
subsystem='service',
init_function='server_service_drepl_init',
- deps='SAMDB process_model RPC_NDR_DRSUAPI'
+ deps='samdb process_model RPC_NDR_DRSUAPI',
+ internal_module=False,
+ enabled=bld.AD_DC_BUILD_IS_ENABLED()
)
-bld.SAMBA_MODULE('KCC_SRV',
+bld.SAMBA_MODULE('service_kcc',
source='kcc/kcc_service.c kcc/kcc_connection.c kcc/kcc_topology.c kcc/kcc_deleted.c kcc/kcc_periodic.c kcc/kcc_drs_replica_info.c',
autoproto='kcc/kcc_service_proto.h',
subsystem='service',
init_function='server_service_kcc_init',
- deps='SAMDB process_model RPC_NDR_DRSUAPI'
+ deps='samdb process_model RPC_NDR_IRPC RPC_NDR_DRSUAPI UTIL_RUNCMD',
+ internal_module=False,
+ enabled=bld.AD_DC_BUILD_IS_ENABLED()
)
-bld.SAMBA_MODULE('DNS_UPDATE_SRV',
+bld.SAMBA_MODULE('service_dns_update',
source='dns/dns_update.c',
subsystem='service',
init_function='server_service_dnsupdate_init',
- deps='SAMDB process_model UTIL_RUNCMD'
+ deps='samdb UTIL_RUNCMD samba-util ldb samdb-common samba-errors talloc auth_system_session samba-hostconfig',
+ internal_module=False,
+ enabled=bld.AD_DC_BUILD_IS_ENABLED()
)
bld.SAMBA_PYTHON('python_dsdb',
- source='pydsdb.c',
- deps='SAMDB pyldb_util',
- realname='samba/dsdb.so'
- )
+ source='pydsdb.c',
+ # the dependency on dcerpc here is because gensec
+ # depends on dcerpc but the waf circular dependency finder
+ # removes it so we end up with unresolved symbols.
+ deps='samdb pyldb-util dcerpc com_err pyrpc_util',
+ realname='samba/dsdb.so'
+ )