#!/usr/bin/env python

RPC_LSARPC_SRC = '''srv_lsa_nt.c'''
RPC_NETLOGON_SRC = '''srv_netlog_nt.c ../../librpc/gen_ndr/srv_netlogon.c'''
RPC_SAMR_SRC = '''srv_samr_nt.c
               srv_samr_util.c
               srv_samr_chgpasswd.c'''
RPC_INITSHUTDOWN_SRC = '''srv_initshutdown_nt.c ../../librpc/gen_ndr/srv_initshutdown.c'''
RPC_WINREG_SRC = '''srv_winreg_nt.c ../../librpc/gen_ndr/srv_winreg.c'''
RPC_DSSETUP_SRC = '''srv_dssetup_nt.c ../../librpc/gen_ndr/srv_dssetup.c'''
RPC_SRVSVC_SRC = '''srv_srvsvc_nt.c ../../librpc/gen_ndr/srv_srvsvc.c'''
RPC_WKSSVC_SRC = '''srv_wkssvc_nt.c ../../librpc/gen_ndr/srv_wkssvc.c'''
RPC_SVCCTL_SRC = '''srv_svcctl_nt.c ../../librpc/gen_ndr/srv_svcctl.c'''
RPC_NTSVCS_SRC = '''srv_ntsvcs_nt.c ../../librpc/gen_ndr/srv_ntsvcs.c'''
RPC_NETDFS_SRC = '''srv_dfs_nt.c ../../librpc/gen_ndr/srv_dfs.c'''
RPC_SPOOLSS_SRC = '''srv_spoolss_nt.c ../../librpc/gen_ndr/srv_spoolss.c
                     srv_spoolss_util.c'''
RPC_EVENTLOG_SRC = '''srv_eventlog_nt.c ../../librpc/gen_ndr/srv_eventlog.c'''
RPC_RPCECHO_SRC = '''srv_echo_nt.c ../../librpc/gen_ndr/srv_echo.c'''

bld.SAMBA_SUBSYSTEM('rpc',
                    source='',
                    deps='RPC_PIPE_REGISTER',
                    vars=locals())

bld.SAMBA_SUBSYSTEM('RPC_SAMR',
                    source=RPC_SAMR_SRC,
                    deps='PLAINTEXT_AUTH',
                    vars=locals())

bld.SAMBA_SUBSYSTEM('RPC_LSARPC',
                    source=RPC_LSARPC_SRC,
                    vars=locals())

bld.SAMBA_SUBSYSTEM('RPC_NCACN_NP',
                    source='rpc_ncacn_np.c rpc_handles.c')

bld.SAMBA_SUBSYSTEM('RPC_SERVICE',
                    source='rpc_server.c')

bld.SAMBA_SUBSYSTEM('RPC_CRYPTO',
                    source='dcesrv_ntlmssp.c dcesrv_gssapi.c dcesrv_spnego.c')

bld.SAMBA_SUBSYSTEM('RPC_PIPE_REGISTER',
                    source='srv_pipe_register.c')

bld.SAMBA_SUBSYSTEM('RPC_SERVER',
                    source='srv_pipe_hnd.c srv_pipe.c',
                    deps='RPC_NCACN_NP RPC_SERVICE RPC_CRYPTO')

bld.SAMBA_MODULE('rpc_lsarpc',
                 subsystem='rpc',
                 source='../../librpc/gen_ndr/srv_lsa.c',
                 deps='RPC_LSARPC',
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_lsarpc'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_lsarpc'))

bld.SAMBA_MODULE('rpc_samr',
                 subsystem='rpc',
                 source='../../librpc/gen_ndr/srv_samr.c',
                 deps='RPC_SAMR',
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_samr'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_samr'))

bld.SAMBA_MODULE('rpc_winreg',
                 subsystem='rpc',
                 source=RPC_WINREG_SRC,
                 deps='REGFIO REG_API_REGF NDR_PERFCOUNT',
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_winreg'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_winreg'))

bld.SAMBA_MODULE('rpc_initshutdown',
                 subsystem='rpc',
                 source=RPC_INITSHUTDOWN_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_initshutdown'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_initshutdown'))

bld.SAMBA_MODULE('rpc_dssetup',
                 subsystem='rpc',
                 source=RPC_DSSETUP_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_dssetup'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_dssetup'))

bld.SAMBA_MODULE('rpc_wkssvc',
                 subsystem='rpc',
                 source=RPC_WKSSVC_SRC,
                 deps='LIBNET',
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_wkssvc'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_wkssvc'))

bld.SAMBA_MODULE('rpc_svcctl',
                 subsystem='rpc',
                 source=RPC_SVCCTL_SRC,
                 deps='SERVICES',
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_svcctl'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_svcctl'))

bld.SAMBA_MODULE('rpc_ntsvcs',
                 subsystem='rpc',
                 source=RPC_NTSVCS_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_ntsvcs'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_ntsvcs'))

bld.SAMBA_MODULE('rpc_netlogon',
                 subsystem='rpc',
                 source=RPC_NETLOGON_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_netlogon'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_netlogon'))

bld.SAMBA_MODULE('rpc_netdfs',
                 subsystem='rpc',
                 source=RPC_NETDFS_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_netdfs'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_netdfs'))

bld.SAMBA_MODULE('rpc_srvsvc',
                 subsystem='rpc',
                 source=RPC_SRVSVC_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_srvsvc'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_srvsvc'))

bld.SAMBA_MODULE('rpc_spoolss',
                 subsystem='rpc',
                 source=RPC_SPOOLSS_SRC,
                 deps='cups PRINTING PRINTBACKEND RPCCLI_WINREG',
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_spoolss'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_spoolss'))

bld.SAMBA_MODULE('rpc_eventlog',
                 subsystem='rpc',
                 source=RPC_EVENTLOG_SRC,
                 deps='LIBEVENTLOG',
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_eventlog'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_eventlog'))

bld.SAMBA_MODULE('rpc_rpcecho',
                 subsystem='rpc',
                 source=RPC_RPCECHO_SRC,
                 init_function='',
                 internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_rpcecho'),
                 enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_rpcecho'))