3 from samba_utils
import *
4 import samba_version
, samba3
8 config_h
= "../include/config.h"
10 bld
.SAMBA_BLDOPTIONS('smbd/build_options.c')
12 t
= bld
.SAMBA_GENERATOR('build_env.h',
13 source
='script/build_env.sh',
14 target
='include/build_env.h',
15 rule
='${SRC} ${SRCDIR} ${BUILDDIR} ${CC} > ${TGT}')
16 # todo: work out what is really wanted here
17 t
.env
.SRCDIR
= bld
.path
.abspath()
18 t
.env
.BUILDDIR
= bld
.path
.abspath()
20 bld
.SETUP_BUILD_GROUPS()
22 ######################## SUBSYSTEMS #################################
24 bld
.SAMBA3_LIBRARY('netapi',
25 source
='''lib/netapi/netapi.c
27 lib/netapi/libnetapi.c
28 lib/netapi/joindomain.c
29 lib/netapi/serverinfo.c
30 lib/netapi/wkstainfo.c
34 lib/netapi/localgroup.c
40 lib/netapi/netlogon.c''',
54 public_headers
='../source3/lib/netapi/netapi.h',
55 pc_files
='libnet/netapi.pc',
58 bld
.SAMBA3_LIBRARY('gse',
59 source
='librpc/crypto/gse_krb5.c librpc/crypto/gse.c',
60 deps
='krb5samba gensec param KRBCLIENT secrets3',
63 bld
.SAMBA3_LIBRARY('msrpc3',
64 source
='''rpc_client/cli_pipe.c
65 rpc_client/rpc_transport_np.c
66 rpc_client/rpc_transport_sock.c
67 rpc_client/rpc_transport_tstream.c
68 librpc/rpc/dcerpc_helpers.c''',
69 deps
='''ndr ndr-standard
70 RPC_NDR_EPMAPPER NTLMSSP_COMMON COMMON_SCHANNEL LIBCLI_AUTH
71 LIBTSOCKET gse dcerpc-binding
72 libsmb ndr-table NETLOGON_CREDS_CLI
76 bld
.SAMBA3_LIBRARY('gpo',
77 source
='''../libgpo/gpo_ldap.c
84 deps
='talloc ads TOKEN_UTIL gpext auth',
87 bld
.SAMBA3_SUBSYSTEM('AVAHI',
88 source
='lib/avahi.c smbd/avahi_register.c',
89 deps
='avahi-common avahi-client',
90 enabled
=bld
.env
.with_avahi
)
92 bld
.SAMBA3_SUBSYSTEM('GROUPDB',
93 source
='groupdb/mapping.c groupdb/mapping_tdb.c',
96 bld
.SAMBA3_SUBSYSTEM('TLDAP',
100 deps
='asn1util LIBTSOCKET')
102 # libpdb.so should not expose internal symbols that are only usable
103 # to the statically linked modules that are merged into libpdb.
104 # Note that we always filter these symbols out in libpdb, even
105 # when modules are not linked statically. In the latter case
106 # symbols will not be present in the libpdb anyway so no hurt is
107 # done to the version script.
108 static_pdb_match
= ['tdbsam', 'smbpasswd', 'wbc_sam']
109 private_pdb_match
= []
111 # AD DC module when linked statically will pull in few source4/winbind
112 # dependencies which are not used outside AD DC module
113 static_pdb_match
.append('samba_dsdb')
114 private_pdb_match
.append('!idmap_init')
115 private_pdb_match
.append('!idmap_sids_to_xids')
116 private_pdb_match
.append('!idmap_xids_to_sids')
118 # ldap module is actually three modules merged together: ldapsam, ipa, and nds
119 static_pdb_match
= static_pdb_match
+ ['ldap', 'ipa', 'nds']
120 ldapsam_pdb_match
= ['!priv2ld', '!smbldap_search_domain_info',
121 '!ldapsam_*', '!groupmap_attr_list*', '!get_userattr_list',
122 '!dominfo_attr_list', '!get_attr_key2string',
123 '!sidmap_attr_list', '!attrib_map_*', '!idpool_attr_list',
125 private_pdb_match
.append('!pdb_nds_*')
126 private_pdb_match
.append('!pdb_init_ldapsam')
127 private_pdb_match
.append('!pdb_ldapsam_init*')
128 private_pdb_match
= private_pdb_match
+ ldapsam_pdb_match
130 private_pdb_match
= private_pdb_match
+ map(lambda x
: '!pdb_%s_init' % x
, static_pdb_match
)
132 bld
.SAMBA3_LIBRARY('samba-passdb',
135 private_library
=False,
136 grouping_library
=True,
138 public_headers_install
=True,
142 passdb/lookup_sid.h''',
143 abi_match
=private_pdb_match
,
144 abi_directory
='passdb/ABI',
147 bld
.SAMBA3_SUBSYSTEM('pdb',
148 source
='''passdb/pdb_get_set.c
153 lib/util_sid_passdb.c
162 passdb/pdb_interface.c
164 passdb/pdb_unixid.c''',
165 deps
='secrets3 GROUPDB SERVER_MUTEX wbclient LIBCLI_AUTH flag_mapping samba-credentials')
167 bld
.SAMBA3_LIBRARY('smbldaphelper',
168 source
='passdb/pdb_ldap_schema.c passdb/pdb_ldap_util.c',
169 deps
='smbldap secrets3',
170 allow_undefined_symbols
=True,
171 enabled
=bld
.CONFIG_SET('HAVE_LDAP'),
172 private_library
=True)
174 bld
.SAMBA3_SUBSYSTEM('SERVER_MUTEX',
175 source
='lib/server_mutex.c',
178 bld
.SAMBA3_SUBSYSTEM('param',
179 source
='''param/loadparm.c
181 lib/ldap_debug_handler.c
183 deps
='samba-util PARAM_UTIL ldap lber LOADPARM_CTX samba3core smbconf param_local.h param_global.h cups''')
185 # this includes only the low level parse code, not stuff
186 # that requires knowledge of security contexts
187 bld.SAMBA3_SUBSYSTEM('REG_PARSE_PRS
',
188 source='registry
/reg_parse_prs
.c
')
190 bld.SAMBA3_SUBSYSTEM('REGFIO
',
191 source='registry
/regfio
.c
',
192 deps='samba
-util REG_PARSE_PRS
')
194 bld.SAMBA3_SUBSYSTEM('REG_API_REGF
',
195 source='registry
/reg_api_regf
.c
',
198 bld.SAMBA3_LIBRARY('smbregistry
',
199 source='''registry/reg_api.c
200 registry/reg_dispatcher.c
201 registry/reg_cachehook.c
202 registry/reg_objects.c
203 registry/reg_util_internal.c
205 registry/reg_backend_db.c
206 registry/reg_parse_internal.c
209 registry/reg_init_basic.c''',
210 deps='''smbd_shim tdb-wrap3 NDR_SECURITY util_tdb talloc
211 replace util_reg samba-util samba-security
212 errors3 dbwrap samba3-util''',
213 allow_undefined_symbols=True,
214 private_library=True)
216 bld.SAMBA3_SUBSYSTEM('REG_SMBCONF
',
217 source='''registry/reg_backend_smbconf.c
218 registry/reg_init_smbconf.c
219 registry/reg_util_token.c
220 registry/reg_api_util.c''',
223 bld.SAMBA3_SUBSYSTEM('REG_FULL
',
224 source='''registry/reg_backend_printing.c
225 registry/reg_backend_shares.c
226 registry/reg_backend_netlogon_params.c
227 registry/reg_backend_prod_options.c
228 registry/reg_backend_tcpip_params.c
229 registry/reg_backend_hkpt_params.c
230 registry/reg_backend_current_version.c
231 registry/reg_backend_perflib.c
232 registry/reg_init_full.c
233 registry/reg_perfcount.c''',
234 deps='REG_SMBCONF tdb
-wrap3
')
236 bld.SAMBA3_LIBRARY('popt_samba3
',
237 source='lib
/popt_common
.c
',
238 deps='popt samba
-util util_cmdline
',
239 private_library=True)
241 bld.SAMBA3_LIBRARY('util_cmdline
',
242 source='lib
/util_cmdline
.c
',
244 private_library=True)
246 bld.SAMBA3_SUBSYSTEM('KRBCLIENT
',
247 source='libads
/kerberos
.c libads
/ads_status
.c
',
248 public_deps='krb5samba k5crypto gssapi LIBTSOCKET CLDAP LIBNMB
')
250 bld.SAMBA3_LIBRARY('sys_rw
',
251 source='lib
/sys_rw
.c lib
/sys_rw_data
.c
',
252 deps='replace iov_buf
',
253 private_library=True)
255 bld.SAMBA3_LIBRARY('iov_buf
',
256 source='lib
/iov_buf
.c
',
258 private_library=True)
260 bld.SAMBA3_SUBSYSTEM('samba3util
',
261 source='''lib/system.c
269 lib/util_transfer_file.c
271 deps='ndr samba
-security NDR_SECURITY samba
-util util_tdb ccan
-hash sys_rw iov_buf
')
273 if bld.CONFIG_GET("CTDB_CFLAGS") and bld.CONFIG_GET("CTDB_INCLUDE"):
274 SAMBA_CLUSTER_SUPPORT_SOURCES='''
275 lib/cluster_support.c
276 lib/dbwrap/dbwrap_ctdb.c
280 torture/test_ctdbconn.c
282 SAMBA_CLUSTER_SUPPORT_DEPS='''
288 SAMBA_CLUSTER_SUPPORT_SOURCES='''
289 lib/cluster_support.c
292 SAMBA_CLUSTER_SUPPORT_DEPS='''
297 bld.SAMBA3_LIBRARY('samba
-cluster
-support
',
298 source=SAMBA_CLUSTER_SUPPORT_SOURCES,
299 deps=SAMBA_CLUSTER_SUPPORT_DEPS,
300 cflags=bld.CONFIG_GET("CTDB_CFLAGS"),
301 includes=bld.CONFIG_GET("CTDB_INCLUDE"),
302 allow_undefined_symbols=True,
303 private_library=True)
305 bld.SAMBA3_SUBSYSTEM('TDB_LIB
',
306 source='''lib/dbwrap/dbwrap_open.c
307 lib/dbwrap/dbwrap_watch.c
309 deps='dbwrap samba
-cluster
-support
')
311 bld.SAMBA3_LIBRARY('messages_dgm
',
312 source='''lib/messages_dgm.c lib/messages_dgm_ref.c''',
313 deps='talloc UNIX_MSG POLL_FUNCS_TEVENT samba
-debug
',
314 private_library=True)
316 bld.SAMBA3_LIBRARY('messages_util
',
317 source='''lib/messages_util.c''',
319 private_library=True)
321 bld.SAMBA3_SUBSYSTEM('samba3core
',
322 source='''lib/messages.c
328 ../lib/util/debug_s3.c
332 lib/access.c lib/smbrun.c
335 lib/substitute_generic.c
342 lib/server_contexts.c
344 lib/server_prefork_util.c
375 bld.SAMBA3_LIBRARY('smbd_shim
',
376 source='''lib/smbd_shim.c''',
378 private_library=True)
380 bld.SAMBA3_SUBSYSTEM('LIBNTLMSSP
',
381 source='''libsmb/ntlmssp.c
382 libsmb/ntlmssp_wrap.c''',
383 deps='NDR_NTLMSSP NTLMSSP_COMMON wbclient
')
385 bld.SAMBA3_SUBSYSTEM('auth_generic
',
386 source='libsmb
/auth_generic
.c
',
387 deps='LIBNTLMSSP gse gensec
')
389 bld.SAMBA3_LIBRARY('libsmb
',
390 source='''libsmb/clientgen.c
397 libsmb/clireadwrite.c
410 libsmb/reparse_symlink.c
412 libsmb/smbsock_connect.c
413 libsmb/cli_smb2_fnum.c''',
425 private_library=True)
427 bld.SAMBA3_SUBSYSTEM('CLDAP
',
428 source='libads
/cldap
.c
',
429 deps='cli
-ldap
-common cli_cldap LIBTSOCKET
')
431 # NOTE: The secrets3 library is a low level library used by several subsystems.
432 # PLEASE DO NOT make it depend on high level libraries like PDB, if you are
433 # doing that your design is wrong and needs changing. -SSS
434 bld.SAMBA3_LIBRARY('secrets3
',
435 source='''passdb/secrets.c
436 passdb/machine_account_secrets.c
438 passdb/secrets_lsa.c''',
439 deps='NDR_SECRETS param samba3util dbwrap
',
440 private_library=True)
442 bld.SAMBA3_LIBRARY('smbldap
',
443 source='lib
/smbldap
.c
',
444 deps='ldap lber samba
-util param
',
445 enabled=bld.CONFIG_SET("HAVE_LDAP"),
446 private_library=False,
447 abi_directory='lib
/ABI
',
448 abi_match='smbldap_
*',
451 public_headers='include
/smbldap
.h include
/smb_ldap
.h
')
453 bld.SAMBA3_LIBRARY('ads
',
454 source='''libads/ldap.c
456 libads/sasl_wrapping.c
458 libads/kerberos_util.c
461 libads/kerberos_keytab.c
467 deps='cli
-ldap
-common krb5samba ldap lber KRBCLIENT param LIBNMB libsmb DCUTIL smbldap
',
468 private_library=True)
470 bld.SAMBA3_SUBSYSTEM('LIBADS_SERVER
',
471 source='libads
/authdata
.c
',
472 deps='SERVER_MUTEX ndr
-krb5pac krb5samba gssapi
')
474 bld.SAMBA3_SUBSYSTEM('LIBADS_PRINTER
',
475 source='libads
/ldap_printer
.c
',
476 deps='samba
-util krb5samba
')
478 bld.SAMBA3_LIBRARY('smbconf
',
479 source='''lib/smbconf/smbconf_init.c
480 lib/smbconf/smbconf_reg.c''',
495 public_headers='../lib
/smbconf
/smbconf
.h
',
499 bld.SAMBA3_LIBRARY('smbd_conn
',
500 source='smbd
/conn
.c
',
501 deps='samba3
-util samba
-util
',
502 private_library=True)
504 bld.SAMBA3_SUBSYSTEM('sysquotas
',
507 lib/sysquotas_linux.c
514 deps='samba3
-util samba
-util
')
518 if bld.CONFIG_SET("HAVE_INOTIFY"):
519 NOTIFY_SOURCES += ' smbd
/notify_inotify
.c
'
521 bld.SAMBA3_LIBRARY('smbd_base
',
561 printing/printspoolss.c
569 smbd/aio.c smbd/statvfs.c
573 smbd/dnsregister.c smbd/globals.c
577 smbd/smb2_sesssetup.c
586 smbd/smb2_ioctl_dfs.c
587 smbd/smb2_ioctl_filesys.c
588 smbd/smb2_ioctl_named_pipe.c
589 smbd/smb2_ioctl_network_fs.c
590 smbd/smb2_keepalive.c
596 smbd/smbXsrv_version.c
597 smbd/smbXsrv_session.c
610 smbd/notify_internal.c
611 smbd/build_options.c''' + NOTIFY_SOURCES,
641 ''' + bld.env['dmapi_lib
'],
642 private_library=True)
644 bld.SAMBA3_SUBSYSTEM('LOCKING
',
645 source='''locking/locking.c
648 locking/share_mode_lock.c''',
656 bld.SAMBA3_SUBSYSTEM('LEASES_DB
',
657 source='locking
/leases_db
.c
',
658 deps='NDR_LEASES_DB
')
660 if bld.CONFIG_GET("WITH_PROFILE"):
661 bld.SAMBA3_SUBSYSTEM('PROFILE
',
662 source='profile
/profile
.c
',
665 bld.SAMBA3_SUBSYSTEM('PROFILE
',
666 source='profile
/profile_dummy
.c
',
669 bld.SAMBA3_SUBSYSTEM('PRINTBASE
',
670 source='''printing/notify.c printing/printing_db.c''',
671 deps='samba
-util tdb_compat
')
673 bld.SAMBA3_SUBSYSTEM('PRINTBACKEND
',
674 source='''printing/printing.c
675 printing/nt_printing.c
676 printing/nt_printing_tdb.c
677 printing/nt_printing_migrate_internal.c
678 printing/nt_printing_ads.c
679 printing/queue_process.c''',
680 deps='PRINTBASE LIBADS_PRINTER tdb_compat printing_migrate
')
682 bld.SAMBA3_LIBRARY('printing_migrate
',
683 source='printing
/nt_printing_migrate
.c rpc_client
/cli_winreg_spoolss
.c printing
/nt_printing_os2
.c
',
684 deps='NDR_NTPRINTING cli_spoolss RPC_NDR_WINREG LIBCLI_WINREG param
',
685 private_library=True)
687 bld.SAMBA3_SUBSYSTEM('PRINTING
',
688 source='''printing/pcap.c
689 printing/print_svid.c
691 printing/print_cups.c
692 printing/print_generic.c
695 printing/print_standard.c
696 printing/print_iprint.c
697 printing/printer_list.c''',
698 deps='NDR_PRINTCAP tdb_compat cups
')
700 bld.SAMBA3_SUBSYSTEM('PASSWD_UTIL
',
701 source='utils
/passwd_util
.c
',
704 bld.SAMBA3_SUBSYSTEM('FNAME_UTIL
',
705 source='lib
/filename_util
.c
',
708 bld.SAMBA3_SUBSYSTEM('LIBNET
',
709 source='libnet
/libnet_join
.c
',
710 deps='NDR_LIBNET_JOIN INIT_SAMR net_keytab pdb
')
712 bld.SAMBA3_LIBRARY('net_keytab
',
713 source='libnet
/libnet_keytab
.c
',
714 deps='krb5samba ads
',
715 private_library=True)
718 bld.SAMBA3_SUBSYSTEM('LIBNET_DSSYNC
',
719 source='''libnet/libnet_dssync.c
720 libnet/libnet_dssync_passdb.c
721 libnet/libnet_dssync_keytab.c''',
723 deps='LIBNET RPC_NDR_DRSUAPI
')
725 bld.SAMBA3_SUBSYSTEM('LIBNET_SAMSYNC
',
726 source='''libnet/libnet_samsync.c
727 libnet/libnet_samsync_ldif.c
728 libnet/libnet_samsync_passdb.c
729 libnet/libnet_samsync_display.c
730 libnet/libnet_samsync_keytab.c''',
731 deps='LIBNET LIBCLI_SAMSYNC
')
733 bld.SAMBA3_SUBSYSTEM('LIBEVENTLOG
',
734 source='lib
/eventlog
/eventlog
.c
',
735 deps='NDR_EVENTLOG tdb_compat
')
737 bld.SAMBA3_SUBSYSTEM('LIBNMB
',
738 source='''libsmb/unexpected.c
743 libads/sitename_cache.c''',
744 deps='addns lmhosts resolv
')
746 bld.SAMBA3_SUBSYSTEM('SERVICES
',
747 source='''services/svc_spoolss.c
748 services/svc_rcinit.c
749 services/svc_winreg_glue.c
750 services/svc_netlogon.c
751 services/svc_winreg.c
752 services/svc_wins.c''',
755 bld.SAMBA3_SUBSYSTEM('PLAINTEXT_AUTH
',
756 source='''auth/pampass.c auth/pass_check.c''',
757 deps='pam PAM_ERRORS
')
759 bld.SAMBA3_SUBSYSTEM('PASSCHANGE
',
760 source='libsmb
/passchange
.c
',
766 bld.SAMBA3_SUBSYSTEM('SAMBA_VERSION
',
767 source='lib
/version
.c
',
770 bld.SAMBA3_SUBSYSTEM('SLCACHE
',
771 source='libsmb
/samlogon_cache
.c
',
772 deps='samba
-util tdb_compat
')
774 bld.SAMBA3_SUBSYSTEM('DCUTIL
',
775 source='''libsmb/namequery_dc.c
776 libsmb/trustdom_cache.c
777 libsmb/dsgetdcname.c''',
778 deps='ads msrpc3 libcli_lsa3
')
780 bld.SAMBA3_LIBRARY('trusts_util
',
781 source='libsmb
/trusts_util
.c
',
782 deps='libcli_netlogon3 msrpc3 samba
-passdb
',
783 private_library=True)
785 bld.SAMBA3_SUBSYSTEM('tdb
-wrap3
',
786 source='lib
/util_tdb
.c
',
787 deps='talloc samba3
-util
')
789 bld.SAMBA3_LIBRARY('msghdr
',
790 source='lib
/msghdr
.c
',
791 deps='replace iov_buf
',
792 private_library=True)
794 bld.SAMBA3_LIBRARY('samba3
-util
',
795 source='''lib/util_sec.c lib/util_str.c lib/adt_tree.c lib/util_malloc.c lib/namearray.c lib/file_id.c''',
796 deps='samba
-util charset
',
797 private_library=True)
799 bld.SAMBA_LIBRARY('xattr_tdb
',
800 source='lib
/xattr_tdb
.c
',
801 deps='NDR_XATTR dbwrap samba3
-util
',
802 private_library=True)
804 bld.SAMBA3_LIBRARY('CHARSET3
',
805 source='''lib/charcnv.c lib/fstring.c''',
806 public_deps='ICONV_WRAPPER charset
',
807 deps='samba
-util samba3
-util
',
808 private_library=True)
810 bld.SAMBA3_SUBSYSTEM('errors3
',
811 source='libsmb
/errormap
.c libsmb
/smberr
.c lib
/errmap_unix
.c
',
814 bld.SAMBA3_SUBSYSTEM('LIBCLI_SAMR
',
815 source='rpc_client
/cli_samr
.c
',
818 bld.SAMBA3_LIBRARY('libcli_lsa3
',
819 source='rpc_client
/cli_lsarpc
.c
',
820 deps='RPC_NDR_LSA INIT_LSA
',
821 private_library=True)
823 bld.SAMBA3_LIBRARY('libcli_netlogon3
',
824 source='rpc_client
/cli_netlogon
.c rpc_client
/util_netlogon
.c
',
825 deps='msrpc3 RPC_NDR_NETLOGON INIT_NETLOGON cliauth param NETLOGON_CREDS_CLI
',
826 private_library=True)
828 bld.SAMBA3_LIBRARY('cli_spoolss
',
829 source='''rpc_client/cli_spoolss.c
830 rpc_client/init_spoolss.c''',
831 deps='RPC_NDR_SPOOLSS param secrets3
',
832 private_library=True)
834 bld.SAMBA3_SUBSYSTEM('LIBCLI_WINREG
',
835 source='rpc_client
/cli_winreg
.c
',
836 deps='RPC_NDR_WINREG
')
838 bld.SAMBA3_SUBSYSTEM('LIBCLI_WINREG_INTERNAL
',
839 source='rpc_client
/cli_winreg_int
.c
',
840 deps='LIBCLI_WINREG RPC_SERVER
')
842 bld.SAMBA3_SUBSYSTEM('RPC_CLIENT_SCHANNEL
',
843 source='rpc_client
/cli_pipe_schannel
.c
',
844 deps='samba
-util krb5samba
')
846 bld.SAMBA3_SUBSYSTEM('INIT_LSA
',
847 source='rpc_client
/init_lsa
.c
',
850 bld.SAMBA3_SUBSYSTEM('INIT_NETLOGON
',
851 source='rpc_client
/init_netlogon
.c
',
854 bld.SAMBA3_SUBSYSTEM('INIT_SAMR
',
855 source='rpc_client
/init_samr
.c
',
858 bld.SAMBA3_SUBSYSTEM('LIBLSA
',
861 ########################## BINARIES #################################
863 bld.SAMBA3_BINARY('smbd
/smbd
',
864 source='smbd
/server
.c
',
865 deps='smbd_base EPMD LSASD
',
866 install_path='${SBINDIR}
')
868 bld.SAMBA3_BINARY('nmbd
/nmbd
',
869 source='''nmbd/asyncdns.c nmbd/nmbd.c nmbd/nmbd_become_dmb.c
870 nmbd/nmbd_become_lmb.c nmbd/nmbd_browserdb.c
871 nmbd/nmbd_browsesync.c nmbd/nmbd_elections.c
872 nmbd/nmbd_incomingdgrams.c nmbd/nmbd_incomingrequests.c
873 nmbd/nmbd_lmhosts.c nmbd/nmbd_logonnames.c nmbd/nmbd_mynames.c
874 nmbd/nmbd_namelistdb.c nmbd/nmbd_namequery.c
875 nmbd/nmbd_nameregister.c nmbd/nmbd_namerelease.c
876 nmbd/nmbd_nodestatus.c nmbd/nmbd_packets.c
877 nmbd/nmbd_processlogon.c nmbd/nmbd_responserecordsdb.c
878 nmbd/nmbd_sendannounce.c nmbd/nmbd_serverlistdb.c
879 nmbd/nmbd_subnetdb.c nmbd/nmbd_winsproxy.c nmbd/nmbd_winsserver.c
880 nmbd/nmbd_workgroupdb.c nmbd/nmbd_synclists.c''',
888 install_path='${SBINDIR}
')
891 bld.SAMBA3_SUBSYSTEM('TDB_VALIDATE
',
892 source='lib
/tdb_validate
.c
',
896 bld.SAMBA3_BINARY('winbindd
/winbindd
',
897 source='''winbindd/winbindd.c
898 winbindd/winbindd_group.c
899 winbindd/winbindd_util.c
900 winbindd/winbindd_cache.c
901 winbindd/winbindd_pam.c
902 winbindd/winbindd_misc.c
903 winbindd/winbindd_cm.c
904 winbindd/winbindd_wins_byip.c
905 winbindd/winbindd_wins_byname.c
906 winbindd/winbindd_msrpc.c
907 winbindd/winbindd_rpc.c
908 winbindd/winbindd_reconnect.c
909 winbindd/winbindd_ads.c
910 winbindd/winbindd_samr.c
911 winbindd/winbindd_dual.c
912 winbindd/winbindd_dual_ndr.c
913 winbindd/winbindd_dual_srv.c
914 winbindd/winbindd_async.c
915 winbindd/winbindd_creds.c
916 winbindd/winbindd_cred_cache.c
917 winbindd/winbindd_ccache_access.c
918 winbindd/winbindd_domain.c
919 winbindd/winbindd_idmap.c
920 winbindd/winbindd_locator.c
921 winbindd/winbindd_ndr.c
923 winbindd/wb_lookupsid.c
924 winbindd/wb_lookupsids.c
925 winbindd/wb_lookupname.c
926 winbindd/wb_uid2sid.c
927 winbindd/wb_gid2sid.c
928 winbindd/wb_sids2xids.c
929 winbindd/wb_queryuser.c
930 winbindd/wb_lookupuseraliases.c
931 winbindd/wb_lookupusergroups.c
932 winbindd/wb_getpwsid.c
933 winbindd/wb_gettoken.c
935 winbindd/wb_seqnums.c
936 winbindd/wb_group_members.c
937 winbindd/wb_getgrsid.c
938 winbindd/wb_query_user_list.c
939 winbindd/wb_fill_pwent.c
940 winbindd/wb_next_pwent.c
941 winbindd/wb_next_grent.c
942 winbindd/wb_dsgetdcname.c
943 winbindd/winbindd_lookupsid.c
944 winbindd/winbindd_lookupsids.c
945 winbindd/winbindd_lookupname.c
946 winbindd/winbindd_sid_to_uid.c
947 winbindd/winbindd_sid_to_gid.c
948 winbindd/winbindd_uid_to_sid.c
949 winbindd/winbindd_gid_to_sid.c
950 winbindd/winbindd_sids_to_xids.c
951 winbindd/winbindd_allocate_uid.c
952 winbindd/winbindd_allocate_gid.c
953 winbindd/winbindd_getpwsid.c
954 winbindd/winbindd_getpwnam.c
955 winbindd/winbindd_getpwuid.c
956 winbindd/winbindd_getsidaliases.c
957 winbindd/winbindd_getuserdomgroups.c
958 winbindd/winbindd_getgroups.c
959 winbindd/winbindd_show_sequence.c
960 winbindd/winbindd_getgrgid.c
961 winbindd/winbindd_getgrnam.c
962 winbindd/winbindd_getusersids.c
963 winbindd/winbindd_lookuprids.c
964 winbindd/winbindd_setpwent.c
965 winbindd/winbindd_getpwent.c
966 winbindd/winbindd_endpwent.c
967 winbindd/winbindd_setgrent.c
968 winbindd/winbindd_getgrent.c
969 winbindd/winbindd_endgrent.c
970 winbindd/winbindd_dsgetdcname.c
971 winbindd/winbindd_getdcname.c
972 winbindd/winbindd_list_users.c
973 winbindd/winbindd_list_groups.c
974 winbindd/winbindd_check_machine_acct.c
975 winbindd/winbindd_change_machine_acct.c
976 winbindd/winbindd_irpc.c
977 winbindd/winbindd_ping_dc.c
978 winbindd/winbindd_pam_auth.c
979 winbindd/winbindd_pam_logoff.c
980 winbindd/winbindd_pam_chauthtok.c
981 winbindd/winbindd_pam_auth_crap.c
982 winbindd/winbindd_pam_chng_pswd_auth_crap.c''',
1007 enabled=bld.env.build_winbind,
1008 install_path='${SBINDIR}
')
1010 bld.SAMBA3_BINARY('rpcclient
/rpcclient
',
1011 source='''rpcclient/rpcclient.c
1012 rpcclient/cmd_lsarpc.c
1013 rpcclient/cmd_samr.c
1014 rpcclient/cmd_spoolss.c
1015 rpcclient/cmd_netlogon.c
1016 rpcclient/cmd_srvsvc.c
1018 rpcclient/cmd_epmapper.c
1019 rpcclient/cmd_dssetup.c
1020 rpcclient/cmd_echo.c
1021 rpcclient/cmd_shutdown.c
1022 rpcclient/cmd_test.c
1023 rpcclient/cmd_wkssvc.c
1024 rpcclient/cmd_ntsvcs.c
1025 rpcclient/cmd_drsuapi.c
1026 rpcclient/cmd_eventlog.c
1027 rpcclient/cmd_winreg.c
1029 rpcclient/cmd_witness.c''',
1060 bld.SAMBA3_BINARY('client
/smbclient
',
1061 source='''client/client.c
1063 client/dnsbrowse.c''',
1074 ''' + bld.env['archive_lib
'])
1076 bld.SAMBA3_BINARY('net
',
1077 source='''utils/net.c
1082 utils/net_rpc_samsync.c
1086 utils/net_groupmap.c
1088 utils/net_idmap_check.c
1091 utils/net_rpc_printer.c
1092 utils/net_rpc_rights.c
1093 utils/net_rpc_service.c
1094 utils/net_rpc_registry.c
1095 utils/net_usershare.c
1098 utils/net_rpc_shell.c
1100 utils/net_rpc_sh_acct.c
1101 utils/net_rpc_audit.c
1105 utils/net_conf_util.c
1110 utils/net_registry.c
1111 utils/net_registry_check.c
1115 utils/net_serverid.c
1116 utils/net_eventlog.c
1117 utils/net_printing.c
1118 utils/net_rpc_trust.c
1119 utils/net_rpc_conf.c
1121 registry/reg_parse.c
1122 registry/reg_format.c
1123 registry/reg_import.c
1124 utils/net_registry_util.c
1125 utils/net_help_common.c''',
1160 RPC_NDR_INITSHUTDOWN
1163 IDMAP_AUTORID_TDB''')
1165 bld.SAMBA3_BINARY('profiles
',
1166 source='utils
/profiles
.c
',
1173 bld.SAMBA3_BINARY('smbspool
',
1174 source='client
/smbspool
.c
',
1182 bld.SAMBA3_BINARY('testparm
',
1183 source='utils
/testparm
.c
',
1189 bld.SAMBA3_BINARY('smbta
-util
',
1190 source='utils
/smbta
-util
.c
',
1196 smbstatus_source = 'utils
/status
.c smbd
/notify_internal
.c
'
1198 if bld.CONFIG_GET("WITH_PROFILE"):
1199 smbstatus_source += ' utils
/status_profile
.c
'
1201 smbstatus_source += ' utils
/status_profile_dummy
.c
'
1203 bld.SAMBA3_BINARY('smbstatus
',
1204 source=smbstatus_source,
1213 bld.SAMBA3_BINARY('smbcontrol
',
1214 source='utils
/smbcontrol
.c
',
1221 bld.SAMBA3_BINARY('smbtree
',
1222 source='utils
/smbtree
.c
',
1231 bld.SAMBA3_BINARY('smbpasswd
',
1232 source='utils
/smbpasswd
.c
',
1240 bld.SAMBA3_BINARY('pdbedit
',
1241 source='utils
/pdbedit
.c
',
1249 bld.SAMBA3_BINARY('smbget
',
1250 source='utils
/smbget
.c
',
1256 bld.SAMBA3_BINARY('nmblookup
',
1257 source='utils
/nmblookup
.c
',
1264 bld.SAMBA3_BINARY('smbtorture
' + bld.env.suffix3,
1265 source='''torture/torture.c
1270 torture/mangle_test.c
1272 torture/test_async_echo.c
1273 torture/test_addrchange.c
1274 torture/test_posix_append.c
1275 torture/test_nttrans_create.c
1276 torture/test_nttrans_fsctl.c
1277 torture/test_case_insensitive.c
1278 torture/test_notify_online.c
1279 torture/test_chain3.c
1281 torture/test_authinfo_structs.c
1282 torture/test_smbsock_any_connect.c
1283 torture/test_cleanup.c
1284 torture/test_notify.c
1285 lib/tevent_barrier.c
1286 torture/test_dbwrap_watch.c
1287 torture/test_idmap_tdb_common.c
1288 torture/test_dbwrap_ctdb.c
1289 torture/test_buffersize.c
1290 torture/test_messaging_read.c
1291 torture/test_messaging_fd_passing.c
1292 torture/test_oplock_cancel.c
1293 torture/t_strappend.c
1294 torture/bench_pthreadpool.c
1295 torture/wbc_async.c''',
1307 samba-cluster-support
1309 cflags='-DWINBINDD_SOCKET_DIR
=\"%s\"' % bld.env.WINBINDD_SOCKET_DIR,
1312 bld.SAMBA3_BINARY('smbconftort
',
1313 source='lib
/smbconf
/testsuite
.c
',
1320 bld.SAMBA3_BINARY('replacetort
',
1321 source='../lib
/replace
/test
/main
.c
',
1322 deps='replace replace
-test
',
1325 bld.SAMBA3_BINARY('msgtest
',
1326 source='torture
/msgtest
.c
',
1332 bld.SAMBA3_BINARY('msg_sink
',
1333 source='torture
/msg_sink
.c
',
1339 bld.SAMBA3_BINARY('msg_source
',
1340 source='torture
/msg_source
.c
',
1346 bld.SAMBA3_BINARY('smbcacls
',
1347 source='utils
/smbcacls
.c
',
1355 bld.SAMBA3_BINARY('smbcquotas
',
1356 source='utils
/smbcquotas
.c
',
1364 bld.SAMBA3_BINARY('eventlogadm
',
1365 source='utils
/eventlogadm
.c
',
1371 bld.SAMBA3_BINARY('sharesec
',
1372 source='utils
/sharesec
.c
',
1377 bld.SAMBA3_BINARY('pdbtest
',
1378 source='torture
/pdbtest
.c
',
1387 bld.SAMBA3_BINARY('vfstest
',
1388 source='''torture/cmd_vfs.c
1390 torture/vfstest_chain.c''',
1397 bld.SAMBA3_BINARY('log2pcap
',
1398 source='utils
/log2pcaphex
.c
',
1399 deps='''talloc popt''',
1402 bld.SAMBA3_BINARY('locktest2
',
1403 source='torture
/locktest2
.c
',
1411 bld.SAMBA3_BINARY('debug2html
',
1412 source='''utils/debug2html.c utils/debugparse.c''',
1413 deps='''talloc popt''',
1416 bld.SAMBA3_BINARY('smbfilter
',
1417 source='utils
/smbfilter
.c
',
1424 bld.SAMBA3_BINARY('versiontest
',
1425 source='lib
/version_test
.c
',
1431 bld.SAMBA3_BINARY('ntlm_auth
',
1432 source='''utils/ntlm_auth.c utils/ntlm_auth_diagnostics.c''',
1439 LIBNTLMSSP gse gensec''')
1441 bld.SAMBA3_BINARY('timelimit
',
1442 source='script
/tests
/timelimit
.c
',
1445 bld.SAMBA3_BINARY('rpc_open_tcp
',
1446 source='torture
/rpc_open_tcp
.c
',
1452 bld.SAMBA3_BINARY('dbwrap_tool
',
1453 source='utils
/dbwrap_tool
.c
',
1458 bld.SAMBA3_BINARY('dbwrap_torture
',
1459 source='utils
/dbwrap_torture
.c
',
1465 bld.SAMBA3_BINARY('split_tokens
',
1466 source='utils
/split_tokens
.c
',
1472 bld.SAMBA3_BINARY('vlp
',
1473 source='printing
/tests
/vlp
.c
',
1479 bld.SAMBA3_PYTHON('pysmbd
',
1480 source='smbd
/pysmbd
.c
',
1481 deps='smbd_base pyrpc_util
',
1482 realname='samba
/samba3
/smbd
.so
'
1485 bld.SAMBA3_PYTHON('pylibsmb
',
1486 source='libsmb
/pylibsmb
.c
',
1487 deps='smbclient samba
-credentials
',
1488 realname='samba
/samba3
/libsmb_samba_internal
.so
'
1491 bld.SAMBA3_BINARY('samba
-regedit
',
1492 source="""utils/regedit.c utils/regedit_samba3.c
1493 utils/regedit_wrap.c utils/regedit_treeview.c
1494 utils/regedit_valuelist.c utils/regedit_dialog.c
1495 utils/regedit_hexedit.c utils/regedit_list.c""",
1496 deps='ncurses menu panel form registry param popt_samba3 smbregistry
',
1497 enabled=bld.env.build_regedit)
1499 ########################## INCLUDES #################################
1502 bld.RECURSE('libgpo
/gpext
')
1503 bld.RECURSE('lib
/pthreadpool
')
1504 bld.RECURSE('lib
/asys
')
1505 bld.RECURSE('lib
/poll_funcs
')
1506 bld.RECURSE('lib
/unix_msg
')
1507 bld.RECURSE('librpc
')
1508 bld.RECURSE('librpc
/idl
')
1509 bld.RECURSE('libsmb
')
1510 bld.RECURSE('modules
')
1511 bld.RECURSE('pam_smbpass
')
1512 bld.RECURSE('param
')
1513 bld.RECURSE('passdb
')
1514 bld.RECURSE('rpc_server
')
1515 bld.RECURSE('script
')
1516 bld.RECURSE('winbindd
')
1517 bld.RECURSE('../examples
/auth
')
1518 bld.RECURSE('../examples
/libsmbclient
')
1519 bld.RECURSE('../examples
/pdb
')
1520 bld.RECURSE('../examples
/VFS
')
1521 bld.RECURSE('lib
/netapi
/tests
')
1522 bld.RECURSE('lib
/netapi
/examples
')
1524 bld.ENFORCE_GROUP_ORDERING()
1525 bld.CHECK_PROJECT_RULES()