Rename 'errors' to 'samba-errors' and make it public.
[samba.git] / lib / util / wscript_build
1 #!/usr/bin/env python
2
3 # Please add any new SAMBA_SUBSYSTEM/SAMBA_LIBRARY to the bottom of the file
4 # unless they are also required to build standalone ctdb.
5
6 bld.SAMBA_LIBRARY('time-basic',
7                   source='time_basic.c',
8                   deps='replace',
9                   private_library=True,
10                   local_include=False)
11
12 bld.SAMBA_SUBSYSTEM('tini',
13                     source='tini.c',
14                     deps='',
15                     local_include=False)
16
17 bld.SAMBA_SUBSYSTEM('tiniparser',
18                     source='tiniparser.c',
19                     deps='tini',
20                     local_include=False)
21
22 bld.SAMBA_SUBSYSTEM('strv',
23                     source='strv.c',
24                     deps='talloc',
25                     local_include=False)
26
27 bld.SAMBA_SUBSYSTEM('close-low-fd',
28                     source='close_low_fd.c',
29                     deps='replace',
30                     local_include=False)
31
32 samba_debug_add_deps = ''
33 samba_debug_add_inc  = ''
34
35 if bld.CONFIG_SET('HAVE_GPFS'):
36     bld.SAMBA_SUBSYSTEM('gpfswrap',
37                         source='gpfswrap.c',
38                         deps='replace',
39                         local_include=False,
40                         includes=bld.CONFIG_GET('CPPPATH_GPFS'))
41     samba_debug_add_deps += ' gpfswrap'
42     samba_debug_add_inc  += bld.CONFIG_GET('CPPPATH_GPFS')
43
44 bld.SAMBA_LIBRARY('samba-debug',
45                   source='debug.c',
46                   deps='replace time-basic close-low-fd talloc socket-blocking' + samba_debug_add_deps,
47                   public_deps='systemd systemd-journal lttng-ust',
48                   local_include=False,
49                   includes=samba_debug_add_inc,
50                   private_library=True)
51
52 bld.SAMBA_LIBRARY('socket-blocking',
53                   source='blocking.c',
54                   local_include=False,
55                   private_library=True)
56
57 bld.SAMBA_LIBRARY('talloc_report',
58                   source='talloc_report.c',
59                   local_include=False,
60                   public_deps='talloc',
61                   private_library=True
62                   )
63
64 bld.SAMBA_SUBSYSTEM('samba-util-core',
65                     source='''xfile.c data_blob.c util_file.c time.c
66                               signal.c util.c idtree.c fault.c
67                               substitute.c util_process.c''',
68                     deps='''time-basic samba-debug socket-blocking talloc
69                             tevent execinfo pthread''',
70                     local_include=False)
71
72 bld.SAMBA_LIBRARY('tevent-unix-util',
73                   source='tevent_unix.c',
74                   local_include=False,
75                   deps='tevent',
76                   public_headers='tevent_unix.h',
77                   header_path=[ ('*', 'util') ],
78                   pc_files=[],
79                   vnum='0.0.1')
80
81 if not bld.env.SAMBA_UTIL_CORE_ONLY:
82
83     bld.env.public_headers_skip.append('charset_compat.h')
84
85     bld.SAMBA_LIBRARY('genrand',
86                       source='genrand.c',
87                       deps='replace socket-blocking sys_rw',
88                       local_include=False,
89                       private_library=True)
90
91     bld.SAMBA_BINARY('genrandperf',
92                      source='tests/genrandperf.c',
93                      deps='genrand replace',
94                      local_include=False,
95                      install=False)
96
97     bld.SAMBA_LIBRARY('samba-util',
98                   source='''talloc_stack.c smb_threads.c
99                     rbtree.c rfc1738.c become_daemon.c system.c select.c getpass.c
100                     genrand_util.c fsusage.c
101                     params.c util_id.c util_net.c
102                     util_strlist.c util_paths.c idtree_random.c base64.c
103                     util_str.c util_str_common.c ms_fnmatch.c
104                     server_id.c dprintf.c bitmap.c pidfile.c
105                     tevent_debug.c memcache.c''',
106                   deps='samba-util-core DYNCONFIG close-low-fd tini tiniparser genrand',
107                   public_deps='talloc tevent execinfo pthread LIBCRYPTO charset util_setid systemd systemd-daemon',
108                   public_headers='debug.h attr.h byteorder.h data_blob.h memory.h safe_string.h time.h talloc_stack.h xfile.h string_wrappers.h idtree.h idtree_random.h blocking.h signal.h substitute.h fault.h genrand.h',
109                   header_path= [ ('dlinklist.h samba_util.h', '.'), ('*', 'util') ],
110                   local_include=False,
111                   vnum='0.0.1',
112                   pc_files='samba-util.pc'
113                   )
114
115     bld.SAMBA_LIBRARY('samba-modules',
116                       source='modules.c',
117                       deps='samba-errors samba-util',
118                       local_include=False,
119                       private_library=True)
120
121     bld.SAMBA_LIBRARY('asn1util',
122                       source='asn1.c',
123                       deps='talloc samba-util',
124                       private_library=True,
125                       local_include=False)
126
127
128     bld.SAMBA_SUBSYSTEM('UNIX_PRIVS',
129                         source='unix_privs.c',
130                         autoproto='unix_privs.h',
131                         deps='replace talloc',
132                         local_include=False,
133                         )
134
135
136     bld.SAMBA_LIBRARY('util_tdb',
137                       source='util_tdb.c',
138                       local_include=False,
139                       public_deps='tdb talloc',
140                       private_library=True
141                       )
142
143     bld.SAMBA_LIBRARY('tevent-util',
144                       source='tevent_ntstatus.c tevent_werror.c',
145                       local_include=False,
146                       public_deps='tevent samba-errors tevent-unix-util',
147                       public_headers='tevent_ntstatus.h tevent_werror.h',
148                       header_path=[ ('*', 'util') ],
149                       pc_files=[],
150                       vnum='0.0.1'
151                       )
152
153     bld.SAMBA_LIBRARY('util_setid',
154                       source='setid.c',
155                       local_include=False,
156                       private_library=True
157                       )
158
159     bld.SAMBA_SUBSYSTEM('util_ldb',
160                         source='util_ldb.c',
161                         local_include=False,
162                         public_deps='ldb',
163                         public_headers='util_ldb.h'
164                         )
165
166
167     bld.SAMBA_SUBSYSTEM('UTIL_RUNCMD',
168                         source='util_runcmd.c',
169                         local_include=False,
170                         public_deps='tevent'
171                         )
172
173     bld.SAMBA_SUBSYSTEM('UTIL_PW',
174                         source='util_pw.c',
175                         local_include=False,
176                         public_deps='talloc'
177                         )
178
179     bld.SAMBA_LIBRARY('server_id_db',
180                       source='server_id_db.c',
181                       deps='talloc tdb strv util_tdb tdb-wrap samba-util',
182                       local_include=False,
183                       private_library=True)
184
185     bld.SAMBA_LIBRARY('iov_buf',
186                       source='iov_buf.c',
187                       local_include=False,
188                       private_library=True)
189
190     bld.SAMBA3_LIBRARY('sys_rw',
191                        source='sys_rw.c sys_rw_data.c',
192                        deps='replace iov_buf',
193                        local_include=False,
194                        private_library=True)