summaryrefslogtreecommitdiff
path: root/source4/kdc/wscript_build
blob: 24d89f4c89b8e92a032d33606530b69dc94a0036 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
#!/usr/bin/env python

# We do this because we do not want to depend on the KDC, only find and use it's header files.  We do not want 
if not bld.CONFIG_SET("USING_SYSTEM_KDC"):
    kdc_include = "../heimdal/kdc"
else:
    kdc_include = getattr(bld.env, "CPPPATH_KDC")

bld.SAMBA_MODULE('service_kdc',
                 source='kdc-heimdal.c',
                 subsystem='service',
                 init_function='server_service_kdc_init',
                 deps='''
                      kdc
                      HDB_SAMBA4
                      WDC_SAMBA4
                      samba-hostconfig
                      com_err
                      samba_server_gensec
                      PAC_GLUE
                      KDC-GLUE
                      KDC-SERVER
                      KPASSWD-SERVICE
                      KPASSWD_GLUE
                 ''',
                 internal_module=False)

bld.SAMBA_LIBRARY('HDB_SAMBA4',
                  source='hdb-samba4.c hdb-samba4-plugin.c',
                  deps='ldb auth4_sam auth_sam_reply samba-credentials hdb db-glue samba-hostconfig com_err sdb_hdb',
                  includes=kdc_include,
                  private_library=True,
                  enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
                  )

# A plugin for Heimdal's kadmin for users who need to operate that tool
bld.SAMBA_LIBRARY('HDB_SAMBA4_PLUGIN',
                  source='hdb-samba4-plugin.c',
                  deps='hdb HDB_SAMBA4 samba-util samba-hostconfig ',
                  includes=kdc_include,
                  link_name='modules/hdb/hdb_samba4.so',
                  realname='hdb_samba4.so',
                  install_path='${MODULESDIR}/hdb',
                  enabled = (bld.CONFIG_SET("USING_SYSTEM_KRB5") and bld.CONFIG_SET("USING_SYSTEM_HDB"))
                  )

bld.SAMBA_SUBSYSTEM('KDC-SERVER',
                    source='kdc-server.c kdc-proxy.c',
                    includes=kdc_include,
                    deps='''
                         krb5samba
                         ldb
                         LIBTSOCKET
                         LIBSAMBA_TSOCKET
                    ''',
                    enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL'))

kpasswd_flavor_src = 'kpasswd-service.c kpasswd-helper.c'
if bld.CONFIG_SET('SAMBA4_USES_HEIMDAL'):
    kpasswd_flavor_src = kpasswd_flavor_src + ' kpasswd-service-heimdal.c'

bld.SAMBA_SUBSYSTEM('KPASSWD-SERVICE',
                    source=kpasswd_flavor_src,
                    includes=kdc_include,
                    deps='''
                         krb5samba
                         samba_server_gensec
                         KPASSWD_GLUE
                         ''')

bld.SAMBA_SUBSYSTEM('KDC-GLUE',
	source='kdc-glue.c',
        includes=kdc_include,
	deps='hdb PAC_GLUE',
	enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
	)

bld.SAMBA_SUBSYSTEM('WDC_SAMBA4',
	source='wdc-samba4.c',
        includes=kdc_include,
	deps='ldb auth4_sam auth_sam_reply samba-credentials hdb PAC_GLUE samba-hostconfig com_err KDC-GLUE',
	enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
	)

bld.SAMBA_SUBSYSTEM('sdb',
	source='sdb.c',
	includes=kdc_include,
	deps='talloc krb5',
	)

bld.SAMBA_SUBSYSTEM('sdb_hdb',
	source='sdb_to_hdb.c',
	includes=kdc_include,
	deps='talloc sdb hdb',
	autoproto='sdb_hdb.h',
	enabled=bld.CONFIG_SET('SAMBA4_USES_HEIMDAL')
	)

bld.SAMBA_SUBSYSTEM('sdb_kdb',
	source='sdb_to_kdb.c',
	includes=kdc_include,
	deps='sdb kdb5',
	autoproto='sdb_kdb.h',
	enabled=bld.CONFIG_SET('HAVE_KDB_H')
	)

bld.SAMBA_SUBSYSTEM('PAC_GLUE',
	source='pac-glue.c',
        includes=kdc_include,
	deps='ldb auth4_sam auth_sam_reply samba-credentials samba-hostconfig com_err'
	)

bld.SAMBA_LIBRARY('pac',
	source=[],
	deps='PAC_GLUE',
	private_library=True,
	grouping_library=True)


bld.SAMBA_LIBRARY('db-glue',
	source='db-glue.c',
	deps='ldb auth4_sam auth_sam_reply samba-credentials sdb samba-hostconfig com_err',
	private_library=True,
        includes=kdc_include,
	)

bld.SAMBA_SUBSYSTEM('KPASSWD_GLUE',
        source='kpasswd_glue.c',
        includes=kdc_include,
        deps='ldb com_err')

bld.SAMBA_SUBSYSTEM('MIT_SAMBA',
                    source='mit_samba.c',
                    deps='''
                         ldb
                         auth4_sam
                         auth_sam_reply
                         samba-credentials
                         db-glue
                         PAC_GLUE
                         KPASSWD_GLUE
                         samba-hostconfig
                         com_err
                         sdb_kdb
                         kdb5
                         ''',
                    enabled=(not bld.CONFIG_SET('SAMBA4_USES_HEIMDAL') and bld.CONFIG_SET('HAVE_KDB_H')) )

bld.SAMBA_BINARY('samba4ktutil',
                 'ktutil.c',
                 deps='krb5samba',
                 install=False)

bld.RECURSE('mit-kdb')