summaryrefslogtreecommitdiffstats
path: root/nsswitch/libwbclient/wscript
blob: e81cd92abc849465d32fd7ca43a14d81a1eab090 (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
#!/usr/bin/env python

from waflib import Options, Logs

# Remember to also update wbclient.h
VERSION="0.16"

# It may be useful at some point to allow Samba to build against a
# system libwbclient, such as the one provided by Likewise.  To to
# this, not only must the check below be activated but this must only
# be activated with an off-by-default option to disable the internal
# build of both winbindd implementations, and all the internal
# references to libwbclient.h will need to be fixed to point at the
# system libwbclient.  Finally, as a system libwbclient would probably
# not use the same version scheme as Samba, so this would need to
# reference Likewise version numbers instead.
#
#def configure(conf):
#    if conf.CHECK_BUNDLED_SYSTEM_PKG('wbclient', minversion=VERSION):
#        conf.define('USING_SYSTEM_LIBWBCLIENT', 1)
#

def build(bld):
#    if bld.CONFIG_SET('USING_SYSTEM_LIBWBCLIENT'):
#        Logs.info("\tSelected system libwbclient build")
#        return
#
#    Logs.info("\tSelected embedded libwbclient build")

    wbclient_internal_deps = 'replace'
    if bld.CONFIG_SET('HAVE_PTHREAD'):
        wbclient_internal_deps += ' pthread'

    bld.SAMBA_SUBSYSTEM('wbclient-internal',
        source='../wb_common.c',
        deps=wbclient_internal_deps,
        cflags='-DWINBINDD_SOCKET_DIR=\"%s\"' % bld.env.WINBINDD_SOCKET_DIR,
        hide_symbols=True,
        provide_builtin_linking=True,
        builtin_cflags='-DWINBINDD_SOCKET_DIR=\"%s\"' % bld.env.WINBINDD_SOCKET_DIR,
        )

    abi_match = 'wbc*'
    bld.SAMBA_LIBRARY('wbclient',
                      source='''
                             wbc_guid.c
                             wbc_idmap.c
                             wbclient.c
                             wbc_pam.c
                             wbc_pwd.c
                             wbc_sid.c
                             wbc_util.c''',
                      hide_symbols=True,
                      deps='wbclient-internal smb_strtox',
                      require_builtin_deps=True,
                      provide_builtin_linking=True,
                      pc_files='wbclient.pc',
                      public_headers='wbclient.h',
                      abi_directory='ABI',
                      abi_match=abi_match,
                      vnum=VERSION)