s3:mdssvc: move some code to a subsystem
[samba.git] / source3 / rpc_server / wscript_build
1 #!/usr/bin/env python
2
3 ### RPC_SERVER
4 bld.SAMBA3_SUBSYSTEM('rpc',
5                     source='',
6                     deps='RPC_PIPE_REGISTER')
7
8 bld.SAMBA3_SUBSYSTEM('RPC_CONFIG',
9                     source='rpc_config.c',
10                     deps='talloc')
11
12 bld.SAMBA3_SUBSYSTEM('RPC_NCACN_NP',
13                     source='rpc_ncacn_np.c rpc_handles.c rpc_contexts.c',
14                     deps='RPC_CONFIG auth common_auth RPC_PIPE_REGISTER npa_tstream')
15
16 bld.SAMBA3_SUBSYSTEM('RPC_SERVER_LOOP',
17                     source='rpc_server.c',
18                     deps='samba-util')
19
20 bld.SAMBA3_SUBSYSTEM('RPC_CRYPTO',
21                      source='dcesrv_auth_generic.c',
22                      deps = 'KRB5_PAC')
23
24 bld.SAMBA3_SUBSYSTEM('RPC_PIPE_REGISTER',
25                     source='srv_pipe_register.c',
26                     deps='samba-util')
27
28 bld.SAMBA3_SUBSYSTEM('SRV_ACCESS_CHECK',
29                     source='srv_access_check.c',
30                     deps='samba-util')
31
32 bld.SAMBA3_SUBSYSTEM('RPC_SERVER',
33                     source='srv_pipe_hnd.c srv_pipe.c',
34                     deps='''
35                     RPC_CONFIG
36                     RPC_NCACN_NP
37                     RPC_SERVER_LOOP
38                     RPC_CRYPTO
39                     NDR_NAMED_PIPE_AUTH
40                     ''')
41
42 bld.SAMBA3_SUBSYSTEM('RPC_MODULES',
43                     source='rpc_modules.c',
44                     deps='samba-util')
45
46 ### RPC_SERVICES
47 bld.SAMBA3_SUBSYSTEM('RPC_DSSETUP',
48                     source='''dssetup/srv_dssetup_nt.c
49                     ../../librpc/gen_ndr/srv_dssetup.c''',
50                     deps='samba-util')
51
52 bld.SAMBA3_SUBSYSTEM('RPC_EPMAPPER',
53                     source='''epmapper/srv_epmapper.c
54                     ../../librpc/gen_ndr/srv_epmapper.c''',
55                     deps='samba-util')
56
57 bld.SAMBA3_SUBSYSTEM('RPC_FSS_STATE',
58                     source='''fss/srv_fss_state.c''',
59                     deps='samba-util NDR_FSRVP_STATE')
60
61 bld.SAMBA3_SUBSYSTEM('RPC_FSS_AGENT',
62                     source='''fss/srv_fss_agent.c
63                     ../../librpc/gen_ndr/srv_fsrvp.c''',
64                     deps='samba-util RPC_FSS_STATE')
65
66 bld.SAMBA3_SUBSYSTEM('RPC_EVENTLOG',
67                     source='''eventlog/srv_eventlog_nt.c
68                     eventlog/srv_eventlog_reg.c
69                     ../../librpc/gen_ndr/srv_eventlog.c''',
70                     deps='LIBEVENTLOG LIBCLI_WINREG_INTERNAL')
71
72 bld.SAMBA3_SUBSYSTEM('RPC_INITSHUTDOWN',
73                     source='''initshutdown/srv_initshutdown_nt.c
74                     ../../librpc/gen_ndr/srv_initshutdown.c''',
75                     deps='samba-util')
76
77 bld.SAMBA3_SUBSYSTEM('RPC_LSARPC',
78                     source='''lsa/srv_lsa_nt.c
79                     ../../librpc/gen_ndr/srv_lsa.c''',
80                     deps='SRV_ACCESS_CHECK LIBLSA GNUTLS_HELPERS')
81
82 bld.SAMBA3_SUBSYSTEM('RPC_NETDFS',
83                     source='''dfs/srv_dfs_nt.c
84                     ../../librpc/gen_ndr/srv_dfs.c''',
85                     deps='samba-util')
86
87 bld.SAMBA3_SUBSYSTEM('RPC_NETLOGON',
88                      source='''netlogon/srv_netlog_nt.c
89                      ../../librpc/gen_ndr/srv_netlogon.c''')
90
91 bld.SAMBA3_SUBSYSTEM('RPC_NTSVCS',
92                     source='''ntsvcs/srv_ntsvcs_nt.c
93                     ../../librpc/gen_ndr/srv_ntsvcs.c''',
94                     deps='samba-util')
95
96 bld.SAMBA3_SUBSYSTEM('RPC_RPCECHO',
97                     source='''echo/srv_echo_nt.c
98                     ../../librpc/gen_ndr/srv_echo.c''',
99                     deps='samba-util')
100
101 bld.SAMBA3_SUBSYSTEM('RPC_SAMR',
102                     source='''samr/srv_samr_nt.c
103                     samr/srv_samr_util.c
104                     samr/srv_samr_chgpasswd.c
105                     ../../librpc/gen_ndr/srv_samr.c''',
106                     deps='PLAINTEXT_AUTH SRV_ACCESS_CHECK')
107
108 bld.SAMBA3_SUBSYSTEM('RPC_SPOOLSS',
109                     source='''spoolss/srv_spoolss_nt.c
110                     spoolss/srv_spoolss_util.c''',
111                     deps='PRINTING PRINTBACKEND LIBCLI_WINREG_INTERNAL')
112
113 bld.SAMBA3_SUBSYSTEM('RPC_IREMOTEWINSPOOL',
114                     source='''
115                     spoolss/srv_iremotewinspool_nt.c
116                     spoolss/srv_iremotewinspool.c
117                     ''',
118                     deps='RPC_SPOOLSS')
119
120 bld.SAMBA3_SUBSYSTEM('RPC_SRVSVC',
121                     source='''srvsvc/srv_srvsvc_nt.c
122                     ../../librpc/gen_ndr/srv_srvsvc.c''',
123                     deps='samba-util tdb')
124
125 bld.SAMBA3_SUBSYSTEM('RPC_SVCCTL',
126                     source='''svcctl/srv_svcctl_nt.c
127                     svcctl/srv_svcctl_reg.c
128                     ../../librpc/gen_ndr/srv_svcctl.c''',
129                     deps='SERVICES LIBCLI_WINREG_INTERNAL')
130
131 bld.SAMBA3_SUBSYSTEM('RPC_WINREG',
132                     source='''winreg/srv_winreg_nt.c
133                     ../../librpc/gen_ndr/srv_winreg.c''',
134                     deps='REG_FULL REGFIO NDR_PERFCOUNT')
135
136 bld.SAMBA3_SUBSYSTEM('RPC_WKSSVC',
137                     source='''wkssvc/srv_wkssvc_nt.c
138                     ../../librpc/gen_ndr/srv_wkssvc.c''',
139                     deps='LIBNET')
140
141 bld.SAMBA3_SUBSYSTEM('mdssvc',
142                     source='''
143                     mdssvc/dalloc.c
144                     mdssvc/marshalling.c
145                     ''')
146
147 rpc_mdssvc_sources = '''
148                      mdssvc/mdssvc.c
149                      mdssvc/srv_mdssvc_nt.c
150                      ../../librpc/gen_ndr/srv_mdssvc.c
151                      '''
152 rpc_mdssvc_deps = 'mdssvc samba-util '
153
154 if bld.env.spotlight_backend_tracker:
155     rpc_mdssvc_sources += '''
156                           mdssvc/mdssvc_tracker.c
157                           mdssvc/sparql_mapping.c
158                           mdssvc/sparql_parser.y
159                           mdssvc/sparql_lexer.l
160                           '''
161     rpc_mdssvc_deps += 'tevent-glib-glue ' + bld.env['libtracker']
162
163 bld.SAMBA3_MODULE('rpc_mdssvc_module',
164                   subsystem='rpc',
165                   allow_undefined_symbols=True,
166                   source=rpc_mdssvc_sources,
167                   init_function='',
168                   deps=rpc_mdssvc_deps,
169                   internal_module=bld.SAMBA3_IS_STATIC_MODULE('rpc_mdssvc_module'),
170                   enabled=bld.SAMBA3_IS_ENABLED_MODULE('rpc_mdssvc_module'))
171
172 # RPC_SERVICE
173 bld.SAMBA3_SUBSYSTEM('RPC_SERVER_REGISTER',
174                     source='rpc_ep_register.c ../librpc/rpc/dcerpc_ep.c',
175                     deps='samba-util')
176
177 bld.SAMBA3_SUBSYSTEM('RPC_SERVICE',
178                     source='rpc_service_setup.c',
179                     deps='''
180                     rpc
181                     RPC_SERVER
182                     RPC_SERVER_REGISTER
183                     RPC_MODULES
184                     RPC_SAMR
185                     RPC_LSARPC
186                     RPC_WINREG
187                     RPC_INITSHUTDOWN
188                     RPC_DSSETUP
189                     RPC_WKSSVC
190                     RPC_SVCCTL
191                     RPC_NTSVCS
192                     RPC_NETLOGON
193                     RPC_NETDFS
194                     RPC_SRVSVC
195                     RPC_SPOOLSS
196                     RPC_IREMOTEWINSPOOL
197                     RPC_EVENTLOG
198                     RPC_RPCECHO
199                     RPC_SERVER
200                     RPC_EPMAPPER
201                     RPC_FSS_AGENT
202                     ''')
203
204 # RPC_DAEMONS
205 bld.SAMBA3_SUBSYSTEM('RPC_SOCK_HELPER',
206                     source='rpc_sock_helper.c',
207                     deps='RPC_SERVER_REGISTER')
208
209 bld.SAMBA3_SUBSYSTEM('EPMD',
210                     source='epmd.c',
211                     deps='samba-util')
212
213 bld.SAMBA3_SUBSYSTEM('LSASD',
214                     source='lsasd.c',
215                     deps='RPC_SOCK_HELPER samba-util')
216
217 bld.SAMBA3_SUBSYSTEM('FSSD',
218                     source='fssd.c',
219                     deps='samba-util')
220
221 bld.SAMBA3_SUBSYSTEM('MDSSD',
222                     source='mdssd.c',
223                     deps='RPC_SOCK_HELPER RPC_MODULES samba-util tevent-glib-glue',
224                     enabled=bld.env.with_spotlight)