341df41a321f7fc4174a8ec50f8298fa73105913
[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='dcerpc-server-core')
7
8 bld.SAMBA_BINARY('samba-dcerpcd',
9                  source='rpc_host.c',
10                  deps='''
11                  samba3core
12                  CMDLINE_S3
13                  dcerpc-binding
14                  npa_tstream
15                  AUTH_COMMON
16                  RPC_SOCK_HELPER
17                  NDR_RPC_HOST
18                  ''',
19                  install_path='${SAMBA_LIBEXECDIR}')
20
21 bld.SAMBA_LIBRARY('RPC_WORKER',
22                   private_library=True,
23                   source='''
24                   rpc_worker.c
25                   ''',
26                   deps='''
27                   smbd_base
28                   CMDLINE_S3
29                   NDR_RPC_HOST
30                   RPC_SERVER
31                   RPC_NCACN_NP
32                   npa_tstream
33                   ''')
34
35 bld.SAMBA3_BINARY('rpcd_rpcecho',
36                   source='rpcd_rpcecho.c',
37                   deps='''
38                   RPC_WORKER
39                   RPC_RPCECHO
40                   ''',
41                   install_path='${SAMBA_LIBEXECDIR}')
42
43 bld.SAMBA3_BINARY('rpcd_classic',
44                   source='rpcd_classic.c',
45                   deps='''
46                   CMDLINE_S3
47                   RPC_WORKER
48                   RPC_SERVICE
49                   RPC_SOCK_HELPER
50                   smbd_base
51                   ''',
52                   install_path='${SAMBA_LIBEXECDIR}')
53
54 bld.SAMBA3_BINARY('rpcd_lsad',
55                   source='rpcd_lsad.c',
56                   deps='''
57                   CMDLINE_S3
58                   RPC_WORKER
59                   RPC_LSARPC
60                   RPC_SAMR
61                   RPC_DSSETUP
62                   RPC_NETLOGON
63                   RPC_SOCK_HELPER
64                   smbd_base
65                   ''',
66                   install_path='${SAMBA_LIBEXECDIR}')
67
68 bld.SAMBA3_BINARY('rpcd_winreg',
69                   source='rpcd_winreg.c',
70                   deps='''
71                   CMDLINE_S3
72                   RPC_WORKER
73                   RPC_WINREG
74                   smbd_base
75                   ''',
76                   install_path='${SAMBA_LIBEXECDIR}')
77
78 bld.SAMBA3_BINARY('rpcd_spoolss',
79                   source='rpcd_spoolss.c',
80                   deps='''
81                   CMDLINE_S3
82                   RPC_WORKER
83                   RPC_SPOOLSS
84                   smbd_base
85                   ''',
86                   install_path='${SAMBA_LIBEXECDIR}')
87
88 bld.SAMBA3_BINARY('rpcd_epmapper',
89                   source='rpcd_epmapper.c',
90                   deps='''
91                   CMDLINE_S3
92                   RPC_WORKER
93                   RPC_EPMAPPER
94                   smbd_base
95                   ''',
96                   install_path='${SAMBA_LIBEXECDIR}')
97
98 bld.SAMBA3_BINARY('rpcd_fsrvp',
99                   source='rpcd_fsrvp.c',
100                   deps='''
101                   CMDLINE_S3
102                   RPC_WORKER
103                   RPC_FSS_AGENT
104                   smbd_base
105                   ''',
106                   install_path='${SAMBA_LIBEXECDIR}')
107
108 bld.SAMBA3_SUBSYSTEM('RPC_CONFIG',
109                     source='rpc_config.c',
110                     deps='talloc')
111
112 bld.SAMBA3_SUBSYSTEM('RPC_NCACN_NP',
113                     source='rpc_ncacn_np.c rpc_handles.c',
114                     deps='auth common_auth npa_tstream')
115
116 bld.SAMBA3_LIBRARY('RPC_SERVER_LOOP',
117                    private_library=True,
118                    source='rpc_server.c',
119                    deps='''
120                    LIBTSOCKET
121                    dcerpc-server-core
122                    npa_tstream
123                    auth
124                    RPC_NCACN_NP
125                    samba3-util
126                    ''')
127
128 bld.SAMBA3_SUBSYSTEM('SRV_ACCESS_CHECK',
129                     source='srv_access_check.c',
130                     deps='samba-util')
131
132 bld.SAMBA3_SUBSYSTEM('RPC_SERVER',
133                     source='',
134                     deps='''
135                     dcerpc-server-core
136                     RPC_CONFIG
137                     RPC_SERVER_LOOP
138                     NDR_NAMED_PIPE_AUTH
139                     ''')
140
141 ### RPC_SERVICES
142 bld.SAMBA3_SUBSYSTEM('RPC_DSSETUP',
143                     source='''dssetup/srv_dssetup_nt.c''',
144                     deps='samba-util')
145
146 bld.SAMBA3_SUBSYSTEM('RPC_EPMAPPER',
147                     source='''epmapper/srv_epmapper.c''',
148                     deps='samba-util')
149
150 bld.SAMBA3_SUBSYSTEM('RPC_FSS_STATE',
151                     source='''fss/srv_fss_state.c''',
152                     deps='samba-util NDR_FSRVP_STATE')
153
154 bld.SAMBA3_SUBSYSTEM('RPC_FSS_AGENT',
155                     source='''fss/srv_fss_agent.c''',
156                     deps='samba-util RPC_FSS_STATE')
157
158 bld.SAMBA3_SUBSYSTEM('RPC_EVENTLOG',
159                     source='''eventlog/srv_eventlog_nt.c
160                     eventlog/srv_eventlog_reg.c''',
161                     deps='LIBEVENTLOG LIBCLI_WINREG_INTERNAL')
162
163 bld.SAMBA3_SUBSYSTEM('RPC_INITSHUTDOWN',
164                     source='''initshutdown/srv_initshutdown_nt.c''',
165                     deps='samba-util')
166
167 bld.SAMBA3_SUBSYSTEM('RPC_LSARPC',
168                     source='''lsa/srv_lsa_nt.c''',
169                     deps='SRV_ACCESS_CHECK LIBLSA GNUTLS_HELPERS')
170
171 bld.SAMBA3_SUBSYSTEM('RPC_NETDFS',
172                     source='''dfs/srv_dfs_nt.c''',
173                     deps='samba-util')
174
175 bld.SAMBA3_SUBSYSTEM('RPC_NETLOGON',
176                      source='''netlogon/srv_netlog_nt.c''',
177                     deps='LIBCLI_AUTH DCERPC_SERVER_NETLOGON')
178
179 bld.SAMBA3_SUBSYSTEM('RPC_NTSVCS',
180                     source='''ntsvcs/srv_ntsvcs_nt.c''',
181                     deps='samba-util')
182
183 bld.SAMBA3_SUBSYSTEM('RPC_RPCECHO',
184                     source='''echo/srv_echo_nt.c''',
185                     deps='samba-util')
186
187 bld.SAMBA3_SUBSYSTEM('RPC_SAMR',
188                     source='''samr/srv_samr_nt.c
189                     samr/srv_samr_util.c
190                     samr/srv_samr_chgpasswd.c''',
191                     deps='PLAINTEXT_AUTH SRV_ACCESS_CHECK DCERPC_HELPER')
192
193 bld.SAMBA3_SUBSYSTEM('RPC_SPOOLSS',
194                     source='''spoolss/srv_spoolss_nt.c
195                     spoolss/srv_spoolss_util.c''',
196                     deps='PRINTING PRINTBACKEND LIBCLI_WINREG_INTERNAL')
197
198 bld.SAMBA3_SUBSYSTEM('RPC_IREMOTEWINSPOOL',
199                     source='''
200                     spoolss/srv_iremotewinspool_nt.c
201                     spoolss/srv_iremotewinspool.c
202                     ''',
203                     deps='RPC_SPOOLSS')
204
205 bld.SAMBA3_SUBSYSTEM('RPC_SRVSVC',
206                     source='''srvsvc/srv_srvsvc_nt.c''',
207                     deps='samba-util tdb')
208
209 bld.SAMBA3_SUBSYSTEM('RPC_SVCCTL',
210                     source='''svcctl/srv_svcctl_nt.c
211                     svcctl/srv_svcctl_reg.c''',
212                     deps='SERVICES LIBCLI_WINREG_INTERNAL')
213
214 bld.SAMBA3_SUBSYSTEM('RPC_WINREG',
215                     source='''winreg/srv_winreg_nt.c''',
216                     deps='REG_FULL REGFIO NDR_PERFCOUNT')
217
218 bld.SAMBA3_SUBSYSTEM('RPC_WKSSVC',
219                     source='''wkssvc/srv_wkssvc_nt.c''',
220                     deps='LIBNET')
221
222 bld.SAMBA3_SUBSYSTEM('mdssvc',
223                     source='''
224                     mdssvc/dalloc.c
225                     mdssvc/marshalling.c
226                     ''')
227
228 rpc_mdssvc_sources = '''
229                      mdssvc/mdssvc.c
230                      mdssvc/mdssvc_noindex.c
231                      mdssvc/srv_mdssvc_nt.c
232                      '''
233 rpc_mdssvc_deps = 'mdssvc samba-util smbd_base '
234
235 if bld.env.spotlight_backend_tracker:
236     rpc_mdssvc_sources += '''
237                           mdssvc/mdssvc_tracker.c
238                           mdssvc/sparql_mapping.c
239                           mdssvc/sparql_parser.y
240                           mdssvc/sparql_lexer.l
241                           '''
242     rpc_mdssvc_deps += 'tevent-glib-glue ' + bld.env['libtracker']
243
244 if bld.env.spotlight_backend_es:
245     rpc_mdssvc_sources += '''
246                           mdssvc/mdssvc_es.c
247                           mdssvc/es_mapping.c
248                           mdssvc/es_parser.y
249                           mdssvc/es_lexer.l
250                           '''
251     rpc_mdssvc_deps += ' http jansson'
252
253     bld.INSTALL_FILES(bld.env.SAMBA_DATADIR,
254                       'mdssvc/elasticsearch_mappings.json')
255
256 bld.SAMBA3_BINARY('rpcd_mdssvc',
257                   source='rpcd_mdssvc.c ' + rpc_mdssvc_sources,
258                   deps='''
259                   CMDLINE_S3
260                   RPC_WORKER
261                   smbd_base
262                   ''' + rpc_mdssvc_deps,
263                   install_path='${SAMBA_LIBEXECDIR}')
264
265 bld.SAMBA3_SUBSYSTEM('RPC_SERVICE',
266                      source='',
267                     deps='''
268                     rpc
269                     RPC_SERVER
270                     RPC_SAMR
271                     RPC_LSARPC
272                     RPC_WINREG
273                     RPC_INITSHUTDOWN
274                     RPC_DSSETUP
275                     RPC_WKSSVC
276                     RPC_SVCCTL
277                     RPC_NTSVCS
278                     RPC_NETLOGON
279                     RPC_NETDFS
280                     RPC_SRVSVC
281                     RPC_IREMOTEWINSPOOL
282                     RPC_EVENTLOG
283                     RPC_RPCECHO
284                     RPC_EPMAPPER
285                     RPC_FSS_AGENT
286                     ''')
287
288 # RPC_DAEMONS
289 bld.SAMBA3_SUBSYSTEM('RPC_SOCK_HELPER',
290                     source='rpc_sock_helper.c',
291                     deps='')