From 8f1b809d2ccb083cb84532e98b04a12fb1039e22 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sat, 20 Mar 2010 16:27:48 +1100 Subject: build: nearly there on samba4 build --- source4/dsdb/wscript_build | 4 +- source4/dynconfig/wscript_build | 2 - source4/heimdal_build/wscript_build | 125 +++++++++++++------------------- source4/heimdal_build/wscript_configure | 1 - source4/lib/tls/wscript | 4 +- source4/librpc/idl/wscript_build | 5 +- source4/librpc/wscript_build | 5 +- source4/wscript | 43 +++++++---- source4/wscript_build | 46 ++---------- 9 files changed, 97 insertions(+), 138 deletions(-) delete mode 100644 source4/dynconfig/wscript_build (limited to 'source4') diff --git a/source4/dsdb/wscript_build b/source4/dsdb/wscript_build index cc2f3fb901..3d3a35768f 100644 --- a/source4/dsdb/wscript_build +++ b/source4/dsdb/wscript_build @@ -12,14 +12,14 @@ bld.SAMBA_SUBSYSTEM('SAMDB', bld.SAMBA_SUBSYSTEM('SAMDB_COMMON', - source='common/util.c ./samdb/ldb_modules/util.c common/dsdb_dn.c ./common/tests/dsdb_dn.c ../../libds/common/flag_mapping.c', + source='common/util.c ./samdb/ldb_modules/util.c common/dsdb_dn.c ../../libds/common/flag_mapping.c', autoproto='common/proto.h', deps='ldb NDR_DRSBLOBS LIBCLI_LDAP_NDR UTIL_LDB LIBCLI_AUTH' ) bld.SAMBA_SUBSYSTEM('SAMDB_SCHEMA', - source='schema/schema_init.c schema/schema_set.c schema/schema_query.c schema/schema_syntax.c ./schema/tests/schema_syntax.c schema/schema_description.c schema/schema_convert_to_ol.c schema/schema_inferiors.c schema/schema_prefixmap.c', + source='schema/schema_init.c schema/schema_set.c schema/schema_query.c schema/schema_syntax.c schema/schema_description.c schema/schema_convert_to_ol.c schema/schema_inferiors.c schema/schema_prefixmap.c', autoproto='schema/proto.h', deps='SAMDB_COMMON NDR_DRSUAPI NDR_DRSBLOBS LDBSAMBA' ) diff --git a/source4/dynconfig/wscript_build b/source4/dynconfig/wscript_build deleted file mode 100644 index 62b2311a8b..0000000000 --- a/source4/dynconfig/wscript_build +++ /dev/null @@ -1,2 +0,0 @@ -bld.SAMBA_SUBSYSTEM('DYNCONFIG', - 'dynconfig.c') diff --git a/source4/heimdal_build/wscript_build b/source4/heimdal_build/wscript_build index 49307f39b0..3117095824 100644 --- a/source4/heimdal_build/wscript_build +++ b/source4/heimdal_build/wscript_build @@ -1,83 +1,52 @@ -#! /usr/bin/env python - -# we sould call out to a new bld.SAMBA_XXXXX() function -# I want to hide gory details from samba devels inside the wafsamba tool - -bld( +bld.SAMBA_GENERATOR( + name="HEIMDAL_ERRORLIST", rule="${PYTHON} ${SRC[0].abspath()} ${SRC[1].abspath()} ${SRC[1].parent.abspath(env)}", source = '../heimdal/lib/wind/gen-errorlist.py ../heimdal/lib/wind/rfc3454.txt ../heimdal/lib/wind/stringprep.py', - target = '../heimdal/lib/wind/errorlist_table.c ../heimdal/lib/wind/errorlist_table.h', - before = 'cc', - name="HEIMDAL_ERRORLIST" -) + target = '../heimdal/lib/wind/errorlist_table.c ../heimdal/lib/wind/errorlist_table.h' + ) -# normalize_table.c rules -#$(heimdalsrcdir)/lib/wind/normalize_table.h $(heimdalsrcdir)/lib/wind/normalize_table.c: $(heimdalsrcdir)/lib/wind/UnicodeData.txt $(heimdalsrcdir)/lib/wind/CompositionExclusions-3.2.0.txt $(heimdalsrcdir)/lib/wind/gen-normalize.py -# $(PYTHON) $(heimdalsrcdir)/lib/wind/gen-normalize.py $(heimdalsrcdir)/lib/wind/UnicodeData.txt $(heimdalsrcdir)/lib/wind/CompositionExclusions-3.2.0.txt $(heimdalsrcdir)/lib/wind/ - -bld(rule="${PYTHON} ${SRC[0].abspath()} ${SRC[1].abspath()} ${SRC[2].abspath()} ${SRC[1].parent.abspath(env)}", +bld.SAMBA_GENERATOR( + name = 'HEIMDAL_NORMALIZE_TABLE', + rule="${PYTHON} ${SRC[0].abspath()} ${SRC[1].abspath()} ${SRC[2].abspath()} ${SRC[1].parent.abspath(env)}", source = '../heimdal/lib/wind/gen-normalize.py ../heimdal/lib/wind/UnicodeData.txt ../heimdal/lib/wind/CompositionExclusions-3.2.0.txt', - target = '../heimdal/lib/wind/normalize_table.h ../heimdal/lib/wind/normalize_table.c', - before = 'cc', - name = 'HEIMDAL_NORMALIZE_TABLE' + target = '../heimdal/lib/wind/normalize_table.h ../heimdal/lib/wind/normalize_table.c' ) -# combining_table.[ch] rules -#$(heimdalsrcdir)/lib/wind/combining_table.h $(heimdalsrcdir)/lib/wind/combining_table.c: $(heimdalsrcdir)/lib/wind/UnicodeData.txt $(heimdalsrcdir)/lib/wind/gen-combining.py -# $(PYTHON) $(heimdalsrcdir)/lib/wind/gen-combining.py $(heimdalsrcdir)/lib/wind/UnicodeData.txt $(heimdalsrcdir)/lib/wind/ - - -bld(rule="${PYTHON} ${SRC[0].abspath()} ${SRC[1].abspath()} ${SRC[1].parent.abspath(env)}", +bld.SAMBA_GENERATOR( + name = 'HEIMDAL_COMBINING_TABLE', + rule="${PYTHON} ${SRC[0].abspath()} ${SRC[1].abspath()} ${SRC[1].parent.abspath(env)}", source = '../heimdal/lib/wind/gen-combining.py ../heimdal/lib/wind/UnicodeData.txt', - target = '../heimdal/lib/wind/combining_table.h ../heimdal/lib/wind/combining_table.c', - before = 'cc', - name = 'HEIMDAL_COMBINING_TABLE' + target = '../heimdal/lib/wind/combining_table.h ../heimdal/lib/wind/combining_table.c' ) -# bidi_table rules -#$(heimdalsrcdir)/lib/wind/bidi_table.h $(heimdalsrcdir)/lib/wind/bidi_table.c: $(heimdalsrcdir)/lib/wind/rfc3454.txt $(heimdalsrcdir)/lib/wind/gen-bidi.py -# $(PYTHON) $(heimdalsrcdir)/lib/wind/gen-bidi.py $(heimdalsrcdir)/lib/wind/rfc3454.txt $(heimdalsrcdir)/lib/wind/ - - -bld(rule="${PYTHON} ${SRC[0].abspath()} ${SRC[1].abspath()} ${SRC[1].parent.abspath(env)}", +bld.SAMBA_GENERATOR( + name = 'HEIMDAL_BIDI_TABLE', + rule="${PYTHON} ${SRC[0].abspath()} ${SRC[1].abspath()} ${SRC[1].parent.abspath(env)}", source = '../heimdal/lib/wind/gen-bidi.py ../heimdal/lib/wind/rfc3454.txt', - target = '../heimdal/lib/wind/bidi_table.h ../heimdal/lib/wind/bidi_table.c', - before = 'cc', - name = 'HEIMDAL_BIDI_TABLE' + target = '../heimdal/lib/wind/bidi_table.h ../heimdal/lib/wind/bidi_table.c' ) -# map_table rules -#$(heimdalsrcdir)/lib/wind/map_table.h $(heimdalsrcdir)/lib/wind/map_table.c: $(heimdalsrcdir)/lib/wind/rfc3454.txt $(heimdalsrcdir)/lib/wind/gen-map.py $(heimdalsrcdir)/lib/wind/stringprep.py -# $(PYTHON) $(heimdalsrcdir)/lib/wind/gen-map.py $(heimdalsrcdir)/lib/wind/rfc3454.txt $(heimdalsrcdir)/lib/wind/ - - -bld(rule="${PYTHON} ${SRC[0].abspath()} ${SRC[2].abspath()} ${SRC[2].parent.abspath(env)}", +bld.SAMBA_GENERATOR( + name = 'HEIMDAL_MAP_TABLE', + rule="${PYTHON} ${SRC[0].abspath()} ${SRC[2].abspath()} ${SRC[2].parent.abspath(env)}", source = '../heimdal/lib/wind/gen-map.py ../heimdal/lib/wind/stringprep.py ../heimdal/lib/wind/rfc3454.txt', - target = '../heimdal/lib/wind/map_table.h ../heimdal/lib/wind/map_table.c', - before = 'cc', - name = 'HEIMDAL_MAP_TABLE' + target = '../heimdal/lib/wind/map_table.h ../heimdal/lib/wind/map_table.c' ) -# look at the example below - the output dir is lib/gssapi, the source asn1 file is lib/gssapi/spnego/spnego.asn1 -# well ... hmm, it depens if any heimdal C file uses a #include that depends on the path. We can try a different location -# but I'm guessing it will break the heimdal C files -# too hard to use a different output dir from input? -# the restriction is we can't modify the existing C source of heimdal. -# ok, symlink hacks to solve? it should be similar to the gen_ndr hackery of PIDL -# as that is also a different out dir from input file -# ok, but is it OK for PIDL? pidl is putting output in ../gen_ndr/ndr_$NAME.[ch] etc bld.SAMBA_ASN1('HEIMDAL_SPNEGO_ASN1', source='../heimdal/lib/gssapi/spnego/spnego.asn1', options='--sequence=MechTypeList', + includes='../heimdal/lib/asn1', directory='lib/gssapi' ) bld.SAMBA_ASN1('HEIMDAL_GSSAPI_ASN1', '../heimdal/lib/gssapi/mech/gssapi.asn1', + includes='../heimdal/lib/asn1', directory='lib/gssapi' ) @@ -136,6 +105,7 @@ bld.SAMBA_ASN1('HEIMDAL_CMS_ASN1', bld.SAMBA_ASN1('HEIMDAL_OCSP_ASN1', '../heimdal/lib/hx509/ocsp.asn1', options='--preserve-binary=OCSPTBSRequest --preserve-binary=OCSPResponseData', + includes='../heimdal/lib/asn1', directory='lib/hx509' ) @@ -149,12 +119,14 @@ bld.SAMBA_ASN1('HEIMDAL_KX509_ASN1', bld.SAMBA_ASN1('HEIMDAL_PKCS10_ASN1', '../heimdal/lib/hx509/pkcs10.asn1', options='--preserve-binary=CertificationRequestInfo', + includes='../heimdal/lib/asn1', directory='lib/hx509' ) bld.SAMBA_ASN1('HEIMDAL_HDB_ASN1', '../heimdal/lib/hdb/hdb.asn1', + includes='../heimdal/lib/asn1', directory='lib/hdb' ) @@ -212,17 +184,16 @@ bld.SAMBA_ERRTABLE('HEIMDAL_WIND_ERR_ET', ) -# try it here bld.SAMBA_SUBSYSTEM('HEIMDAL_ROKEN', '../heimdal/lib/roken/base64.c ../heimdal/lib/roken/ct.c ../heimdal/lib/roken/hex.c ../heimdal/lib/roken/bswap.c ../heimdal/lib/roken/dumpdata.c ../heimdal/lib/roken/emalloc.c ../heimdal/lib/roken/ecalloc.c ../heimdal/lib/roken/getarg.c ../heimdal/lib/roken/get_window_size.c ../heimdal/lib/roken/getdtablesize.c ../heimdal/lib/roken/h_errno.c ../heimdal/lib/roken/issuid.c ../heimdal/lib/roken/net_read.c ../heimdal/lib/roken/net_write.c ../heimdal/lib/roken/socket.c ../heimdal/lib/roken/parse_time.c ../heimdal/lib/roken/parse_units.c ../heimdal/lib/roken/resolve.c ../heimdal/lib/roken/roken_gethostby.c ../heimdal/lib/roken/signal.c ../heimdal/lib/roken/vis.c ../heimdal/lib/roken/strlwr.c ../heimdal/lib/roken/strsep_copy.c ../heimdal/lib/roken/strsep.c ../heimdal/lib/roken/strupr.c ../heimdal/lib/roken/strpool.c ../heimdal/lib/roken/estrdup.c ../heimdal/lib/roken/erealloc.c ../heimdal/lib/roken/simple_exec.c ../heimdal/lib/roken/strcollect.c ../heimdal/lib/roken/rtbl.c ../heimdal/lib/roken/cloexec.c ../heimdal/lib/roken/xfree.c replace.c', - includes='. ../heimdal/lib/roken ../heimdal/include ../../lib/socket_wrapper', + includes='../heimdal/lib/roken ../heimdal/include ../../lib/socket_wrapper', deps='HEIMDAL_ROKEN_PROGNAME HEIMDAL_ROKEN_CLOSEFROM resolv LIBREPLACE_NETWORK UID_WRAPPER' ) bld.SAMBA_SUBSYSTEM('HEIMDAL_KDC', source='../heimdal/kdc/default_config.c ../heimdal/kdc/kerberos5.c ../heimdal/kdc/krb5tgs.c ../heimdal/kdc/pkinit.c ../heimdal/kdc/log.c ../heimdal/kdc/misc.c ../heimdal/kdc/kaserver.c ../heimdal/kdc/digest.c ../heimdal/kdc/process.c ../heimdal/kdc/windc.c ../heimdal/kdc/kx509.c', - includes='. ../heimdal/kdc', + includes='../heimdal/kdc', heimdal_autoproto='../heimdal/kdc/kdc-protos.h', heimdal_autoproto_private='../heimdal/kdc/kdc-private.h', deps='HEIMDAL_ROKEN HEIMDAL_KRB5 HEIMDAL_HDB HEIMDAL_HEIM_ASN1 HEIMDAL_DIGEST_ASN1 HEIMDAL_KX509_ASN1 HEIMDAL_NTLM HEIMDAL_HCRYPTO' @@ -231,7 +202,7 @@ bld.SAMBA_SUBSYSTEM('HEIMDAL_KDC', bld.SAMBA_SUBSYSTEM('HEIMDAL_NTLM', source='../heimdal/lib/ntlm/ntlm.c', - includes='. ../heimdal/lib/ntlm', + includes='../heimdal/lib/ntlm', heimdal_autoproto='../heimdal/lib/ntlm/heimntlm-protos.h', deps='HEIMDAL_ROKEN HEIMDAL_HCRYPTO HEIMDAL_KRB5' ) @@ -239,15 +210,15 @@ bld.SAMBA_SUBSYSTEM('HEIMDAL_NTLM', bld.SAMBA_SUBSYSTEM('HEIMDAL_HDB_KEYS', '../heimdal/lib/hdb/keys.c', - includes='. ../heimdal/lib/hdb', + includes='../heimdal/lib/hdb', deps='HEIMDAL_ROKEN HEIMDAL_HCRYPTO HEIMDAL_KRB5 HEIMDAL_HDB_ASN1' ) bld.SAMBA_SUBSYSTEM('HEIMDAL_HDB', - source='''../heimdal/lib/hdb/db.c ../heimdal/lib/hdb/dbinfo.c ../heimdal/lib/hdb/ext.c ../heimdal/lib/hdb/keytab.c + source='''../heimdal/lib/hdb/db.c ../heimdal/lib/hdb/dbinfo.c ../heimdal/lib/hdb/hdb.c ../heimdal/lib/hdb/ext.c ../heimdal/lib/hdb/keytab.c ../heimdal/lib/hdb/mkey.c ../heimdal/lib/hdb/ndbm.c ../heimdal/lib/hdb/hdb_err.c hdb-glue.c''', - includes='. ../heimdal/lib/hdb', + includes='../heimdal/lib/hdb', heimdal_autoproto='../heimdal/lib/hdb/hdb-protos.h', heimdal_autoproto_private='../heimdal/lib/hdb/hdb-private.h', deps='HDB_LDB HEIMDAL_KRB5 HEIMDAL_HDB_KEYS HEIMDAL_ROKEN HEIMDAL_HCRYPTO HEIMDAL_COM_ERR HEIMDAL_HDB_ASN1' @@ -295,16 +266,17 @@ bld.SAMBA_SUBSYSTEM('HEIMDAL_GSSAPI', ../heimdal/lib/gssapi/mech/gss_import_name.c ../heimdal/lib/gssapi/mech/gss_duplicate_name.c ../heimdal/lib/gssapi/mech/gss_unwrap.c ../heimdal/lib/gssapi/mech/gss_export_sec_context.c ../heimdal/lib/gssapi/mech/gss_inquire_context.c ../heimdal/lib/gssapi/mech/gss_release_name.c ../heimdal/lib/gssapi/mech/gss_set_cred_option.c ../heimdal/lib/gssapi/mech/gss_pseudo_random.c gssapi-glue.c''', - includes='. ../heimdal/lib/gssapi ../heimdal/lib/gssapi/gssapi ../heimdal/lib/gssapi/spnego ../heimdal/lib/gssapi/krb5 ../heimdal/lib/gssapi/mech', + includes='../heimdal/lib/gssapi ../heimdal/lib/gssapi/gssapi ../heimdal/lib/gssapi/spnego ../heimdal/lib/gssapi/krb5 ../heimdal/lib/gssapi/mech', deps='HEIMDAL_HCRYPTO HEIMDAL_HEIM_ASN1 HEIMDAL_SPNEGO_ASN1 HEIMDAL_GSSAPI_ASN1 HEIMDAL_ROKEN HEIMDAL_KRB5' ) bld.SAMBA_SUBSYSTEM('HEIMDAL_KRB5', '../heimdal/lib/krb5/acache.c ../heimdal/lib/krb5/add_et_list.c ../heimdal/lib/krb5/addr_families.c ../heimdal/lib/krb5/appdefault.c ../heimdal/lib/krb5/asn1_glue.c ../heimdal/lib/krb5/auth_context.c ../heimdal/lib/krb5/build_ap_req.c ../heimdal/lib/krb5/build_auth.c ../heimdal/lib/krb5/cache.c ../heimdal/lib/krb5/changepw.c ../heimdal/lib/krb5/codec.c ../heimdal/lib/krb5/config_file.c ../heimdal/lib/krb5/constants.c ../heimdal/lib/krb5/context.c ../heimdal/lib/krb5/convert_creds.c ../heimdal/lib/krb5/copy_host_realm.c ../heimdal/lib/krb5/crc.c ../heimdal/lib/krb5/creds.c ../heimdal/lib/krb5/crypto.c ../heimdal/lib/krb5/data.c ../heimdal/lib/krb5/eai_to_heim_errno.c ../heimdal/lib/krb5/error_string.c ../heimdal/lib/krb5/expand_hostname.c ../heimdal/lib/krb5/fcache.c ../heimdal/lib/krb5/free.c ../heimdal/lib/krb5/free_host_realm.c ../heimdal/lib/krb5/generate_seq_number.c ../heimdal/lib/krb5/generate_subkey.c ../heimdal/lib/krb5/get_addrs.c ../heimdal/lib/krb5/get_cred.c ../heimdal/lib/krb5/get_default_principal.c ../heimdal/lib/krb5/get_default_realm.c ../heimdal/lib/krb5/get_for_creds.c ../heimdal/lib/krb5/get_host_realm.c ../heimdal/lib/krb5/get_in_tkt.c ../heimdal/lib/krb5/get_port.c ../heimdal/lib/krb5/init_creds.c ../heimdal/lib/krb5/init_creds_pw.c ../heimdal/lib/krb5/kcm.c ../heimdal/lib/krb5/keyblock.c ../heimdal/lib/krb5/keytab.c ../heimdal/lib/krb5/keytab_any.c ../heimdal/lib/krb5/keytab_file.c ../heimdal/lib/krb5/keytab_memory.c ../heimdal/lib/krb5/keytab_keyfile.c ../heimdal/lib/krb5/krbhst.c ../heimdal/lib/krb5/log.c ../heimdal/lib/krb5/mcache.c ../heimdal/lib/krb5/misc.c ../heimdal/lib/krb5/mk_error.c ../heimdal/lib/krb5/mk_priv.c ../heimdal/lib/krb5/mk_rep.c ../heimdal/lib/krb5/mk_req.c ../heimdal/lib/krb5/mk_req_ext.c ../heimdal/lib/krb5/mit_glue.c ../heimdal/lib/krb5/n-fold.c ../heimdal/lib/krb5/padata.c ../heimdal/lib/krb5/pkinit.c ../heimdal/lib/krb5/plugin.c ../heimdal/lib/krb5/principal.c ../heimdal/lib/krb5/prog_setup.c ../heimdal/lib/krb5/pac.c ../heimdal/lib/krb5/prompter_posix.c ../heimdal/lib/krb5/rd_cred.c ../heimdal/lib/krb5/rd_error.c ../heimdal/lib/krb5/rd_priv.c ../heimdal/lib/krb5/rd_rep.c ../heimdal/lib/krb5/rd_req.c ../heimdal/lib/krb5/replay.c ../heimdal/lib/krb5/send_to_kdc.c ../heimdal/lib/krb5/set_default_realm.c ../heimdal/lib/krb5/store.c ../heimdal/lib/krb5/store_emem.c ../heimdal/lib/krb5/store_fd.c ../heimdal/lib/krb5/store_mem.c ../heimdal/lib/krb5/ticket.c ../heimdal/lib/krb5/time.c ../heimdal/lib/krb5/transited.c ../heimdal/lib/krb5/v4_glue.c ../heimdal/lib/krb5/version.c ../heimdal/lib/krb5/warn.c ../heimdal/lib/krb5/krb5_err.c ../heimdal/lib/krb5/heim_err.c ../heimdal/lib/krb5/k524_err.c krb5-glue.c', - includes='. ../heimdal/lib/krb5 ../heimdal/lib/asn1 ../heimdal/lib/com_err', + includes='../heimdal/lib/krb5 ../heimdal/lib/asn1 ../heimdal/lib/com_err', public_deps='HEIMDAL_COM_ERR', heimdal_autoproto='../heimdal/lib/krb5/krb5-protos.h', + heimdal_autoproto_options='-E KRB5_LIB -q -P comment -o', heimdal_autoproto_private='../heimdal/lib/krb5/krb5-private.h', deps='HEIMDAL_ROKEN HEIMDAL_PKINIT_ASN1 HEIMDAL_WIND HEIMDAL_KRB5_ASN1 HEIMDAL_HX509 HEIMDAL_HCRYPTO LIBNETIF LIBSAMBA-HOSTCONFIG INTL' ) @@ -312,35 +284,35 @@ bld.SAMBA_SUBSYSTEM('HEIMDAL_KRB5', bld.SAMBA_SUBSYSTEM('HEIMDAL_HEIM_ASN1', '../heimdal/lib/asn1/der_get.c ../heimdal/lib/asn1/der_put.c ../heimdal/lib/asn1/der_free.c ../heimdal/lib/asn1/der_format.c ../heimdal/lib/asn1/der_length.c ../heimdal/lib/asn1/der_copy.c ../heimdal/lib/asn1/der_cmp.c ../heimdal/lib/asn1/extra.c ../heimdal/lib/asn1/timegm.c ../heimdal/lib/asn1/asn1_err.c', - includes='. ../heimdal/lib/asn1', + includes='../heimdal/lib/asn1', deps='HEIMDAL_ROKEN HEIMDAL_COM_ERR' ) bld.SAMBA_SUBSYSTEM('HEIMDAL_HCRYPTO_IMATH', '../heimdal/lib/hcrypto/imath/imath.c ../heimdal/lib/hcrypto/imath/iprime.c', - includes='. ../heimdal/lib/hcrypto/imath', + includes='../heimdal/lib/hcrypto/imath', deps='HEIMDAL_ROKEN' ) bld.SAMBA_SUBSYSTEM('HEIMDAL_HCRYPTO', '../heimdal/lib/hcrypto/aes.c ../heimdal/lib/hcrypto/bn.c ../heimdal/lib/hcrypto/dh.c ../heimdal/lib/hcrypto/dh-imath.c ../heimdal/lib/hcrypto/des.c ../heimdal/lib/hcrypto/dsa.c ../heimdal/lib/hcrypto/engine.c ../heimdal/lib/hcrypto/md2.c ../heimdal/lib/hcrypto/md4.c ../heimdal/lib/hcrypto/md5.c ../heimdal/lib/hcrypto/rsa.c ../heimdal/lib/hcrypto/rsa-imath.c ../heimdal/lib/hcrypto/rc2.c ../heimdal/lib/hcrypto/rc4.c ../heimdal/lib/hcrypto/rijndael-alg-fst.c ../heimdal/lib/hcrypto/rnd_keys.c ../heimdal/lib/hcrypto/sha.c ../heimdal/lib/hcrypto/sha256.c ../heimdal/lib/hcrypto/ui.c ../heimdal/lib/hcrypto/evp.c ../heimdal/lib/hcrypto/evp-hcrypto.c ../heimdal/lib/hcrypto/evp-cc.c ../heimdal/lib/hcrypto/pkcs5.c ../heimdal/lib/hcrypto/pkcs12.c ../heimdal/lib/hcrypto/rand.c ../heimdal/lib/hcrypto/rand-egd.c ../heimdal/lib/hcrypto/rand-unix.c ../heimdal/lib/hcrypto/rand-fortuna.c ../heimdal/lib/hcrypto/rand-timer.c ../heimdal/lib/hcrypto/hmac.c ../heimdal/lib/hcrypto/camellia.c ../heimdal/lib/hcrypto/camellia-ntt.c', - includes='. ../heimdal/lib/hcrypto ../heimdal/lib', + includes='../heimdal/lib/hcrypto ../heimdal/lib', deps='HEIMDAL_ROKEN HEIMDAL_HEIM_ASN1 HEIMDAL_HCRYPTO_IMATH HEIMDAL_RFC2459_ASN1' ) bld.SAMBA_SUBSYSTEM('HEIMDAL_HX509', '../heimdal/lib/hx509/ca.c ../heimdal/lib/hx509/cert.c ../heimdal/lib/hx509/cms.c ../heimdal/lib/hx509/collector.c ../heimdal/lib/hx509/crypto.c ../heimdal/lib/hx509/error.c ../heimdal/lib/hx509/env.c ../heimdal/lib/hx509/file.c ../heimdal/lib/hx509/keyset.c ../heimdal/lib/hx509/ks_dir.c ../heimdal/lib/hx509/ks_file.c ../heimdal/lib/hx509/ks_keychain.c ../heimdal/lib/hx509/ks_mem.c ../heimdal/lib/hx509/ks_null.c ../heimdal/lib/hx509/ks_p11.c ../heimdal/lib/hx509/ks_p12.c ../heimdal/lib/hx509/lock.c ../heimdal/lib/hx509/name.c ../heimdal/lib/hx509/peer.c ../heimdal/lib/hx509/print.c ../heimdal/lib/hx509/req.c ../heimdal/lib/hx509/revoke.c ../heimdal/lib/hx509/sel.c ../heimdal/lib/hx509/hx509_err.c ../heimdal/lib/hx509/sel-lex.c ../heimdal/lib/hx509/sel-gram.c', - includes='. ../heimdal/lib/hx509', + includes='../heimdal/lib/hx509', deps='HEIMDAL_ROKEN HEIMDAL_COM_ERR HEIMDAL_HEIM_ASN1 HEIMDAL_HCRYPTO HEIMDAL_CMS_ASN1 HEIMDAL_RFC2459_ASN1 HEIMDAL_OCSP_ASN1 HEIMDAL_PKCS8_ASN1 HEIMDAL_PKCS9_ASN1 HEIMDAL_PKCS12_ASN1 HEIMDAL_PKINIT_ASN1 HEIMDAL_PKCS10_ASN1 HEIMDAL_WIND' ) bld.SAMBA_SUBSYSTEM('HEIMDAL_WIND', '../heimdal/lib/wind/wind_err.c ../heimdal/lib/wind/stringprep.c ../heimdal/lib/wind/errorlist.c ../heimdal/lib/wind/errorlist_table.c ../heimdal/lib/wind/normalize.c ../heimdal/lib/wind/normalize_table.c ../heimdal/lib/wind/combining.c ../heimdal/lib/wind/combining_table.c ../heimdal/lib/wind/utf8.c ../heimdal/lib/wind/bidi.c ../heimdal/lib/wind/bidi_table.c ../heimdal/lib/wind/ldap.c ../heimdal/lib/wind/map.c ../heimdal/lib/wind/map_table.c', - includes='. ../heimdal/lib/wind', + includes='../heimdal/lib/wind', deps='HEIMDAL_ROKEN HEIMDAL_COM_ERR' ) @@ -377,7 +349,7 @@ bld.SAMBA_SUBSYSTEM('HEIMDAL_ROKEN_CLOSEFROM_H', bld.SAMBA_SUBSYSTEM('HEIMDAL_ROKEN_H', '../heimdal/lib/roken/base64.c ../heimdal/lib/roken/ct.c ../heimdal/lib/roken/hex.c ../heimdal/lib/roken/bswap.c ../heimdal/lib/roken/dumpdata.c ../heimdal/lib/roken/emalloc.c ../heimdal/lib/roken/ecalloc.c ../heimdal/lib/roken/getarg.c ../heimdal/lib/roken/get_window_size.c ../heimdal/lib/roken/getdtablesize.c ../heimdal/lib/roken/h_errno.c ../heimdal/lib/roken/issuid.c ../heimdal/lib/roken/net_read.c ../heimdal/lib/roken/net_write.c ../heimdal/lib/roken/socket.c ../heimdal/lib/roken/parse_time.c ../heimdal/lib/roken/parse_units.c ../heimdal/lib/roken/resolve.c ../heimdal/lib/roken/roken_gethostby.c ../heimdal/lib/roken/signal.c ../heimdal/lib/roken/vis.c ../heimdal/lib/roken/strlwr.c ../heimdal/lib/roken/strsep_copy.c ../heimdal/lib/roken/strsep.c ../heimdal/lib/roken/strupr.c ../heimdal/lib/roken/strpool.c ../heimdal/lib/roken/estrdup.c ../heimdal/lib/roken/erealloc.c ../heimdal/lib/roken/simple_exec.c ../heimdal/lib/roken/strcollect.c ../heimdal/lib/roken/rtbl.c ../heimdal/lib/roken/cloexec.c ../heimdal/lib/roken/xfree.c replace.c', - includes='. ../heimdal/lib/roken', + includes='../heimdal/lib/roken', cflags='-DSOCKET_WRAPPER_DISABLE=1 -DNSS_WRAPPER_DISABLE=1', deps='HEIMDAL_ROKEN_PROGNAME_H HEIMDAL_ROKEN_CLOSEFROM_H resolv LIBREPLACE_NETWORK' ) @@ -385,7 +357,7 @@ bld.SAMBA_SUBSYSTEM('HEIMDAL_ROKEN_H', bld.SAMBA_SUBSYSTEM('HEIMDAL_COM_ERR', '../heimdal/lib/com_err/com_err.c ../heimdal/lib/com_err/error.c', - includes='. ../heimdal/lib/com_err', + includes='../heimdal/lib/com_err', deps='HEIMDAL_ROKEN', config_option='HAVE_COM_ERR' ) @@ -395,8 +367,8 @@ bld.SAMBA_SUBSYSTEM('HEIMDAL_COM_ERR', bld.SAMBA_BINARY('asn1_compile', '../heimdal/lib/asn1/main.c ../heimdal/lib/asn1/gen.c ../heimdal/lib/asn1/gen_copy.c ../heimdal/lib/asn1/gen_decode.c ../heimdal/lib/asn1/gen_encode.c ../heimdal/lib/asn1/gen_free.c ../heimdal/lib/asn1/gen_glue.c ../heimdal/lib/asn1/gen_length.c ../heimdal/lib/asn1/gen_seq.c ../heimdal/lib/asn1/hash.c ../heimdal/lib/asn1/symbol.c ../heimdal/lib/asn1/asn1parse.c ../heimdal/lib/asn1/lex.c ../heimdal/lib/vers/print_version.c', use_hostcc=True, - cflags='-DSOCKET_WRAPPER_DISABLE=1 -DNSS_WRAPPER_DISABLE=1 -D_SAMBA_HOSTCC_', - includes='. ../heimdal/lib/asn1 ../heimdal/lib/roken', + cflags='-DSOCKET_WRAPPER_DISABLE=1 -DNSS_WRAPPER_DISABLE=1 -D_SAMBA_HOSTCC_ -DFOO1', + includes='../heimdal/lib/asn1 ../heimdal/lib/roken', group='build_compilers', deps='HEIMDAL_ROKEN_H replace', ) @@ -406,8 +378,7 @@ bld.SAMBA_BINARY('compile_et', '../heimdal/lib/vers/print_version.c ../heimdal/lib/com_err/parse.c ../heimdal/lib/com_err/lex.c ../heimdal/lib/com_err/compile_et.c', use_hostcc=True, group='build_compilers', - cflags='-DSOCKET_WRAPPER_DISABLE=1 -DNSS_WRAPPER_DISABLE=1 -D_SAMBA_HOSTCC_', - includes='.', + cflags='-DSOCKET_WRAPPER_DISABLE=1 -DNSS_WRAPPER_DISABLE=1 -D_SAMBA_HOSTCC_ -DFOO2', deps='HEIMDAL_ROKEN_H replace' ) @@ -421,6 +392,7 @@ bld.SAMBA_BINARY('samba4kinit', bld.SAMBA_BINARY('samba4kpasswd', '../heimdal/kpasswd/kpasswd.c ../heimdal/lib/vers/print_version.c', + cflags='-DFOO3', includes='../heimdal/lib/roken', deps='HEIMDAL_KRB5 HEIMDAL_NTLM' ) @@ -428,7 +400,8 @@ bld.SAMBA_BINARY('samba4kpasswd', bld.SAMBA_BINARY('rkpty', '../heimdal/lib/roken/rkpty.c ../../lib/socket_wrapper/socket_wrapper.c', - deps='HEIMDAL_ROKEN OPENPTY' + deps='HEIMDAL_ROKEN OPENPTY', + cflags='-DPACKAGE="Samba"' ) HEIMDAL_GSSAPI_SPNEGO_SOURCE = ''' @@ -527,11 +500,11 @@ HEIMDAL_HX509_OBJH_SOURCE = ''' ''' bld.HEIMDAL_AUTOPROTO('../heimdal/lib/hx509/hx509-protos.h', - HEIMDAL_GSSAPI_KRB5_SOURCE, + HEIMDAL_HX509_OBJH_SOURCE, options="-R '^(_|^C)' -E HX509_LIB -q -P comment -o") bld.HEIMDAL_AUTOPROTO('../heimdal/lib/hx509/hx509-private.h', - HEIMDAL_GSSAPI_KRB5_SOURCE, + HEIMDAL_HX509_OBJH_SOURCE, options="-q -P comment -p") HEIMDAL_HEIM_ASN1_DER_SOURCE = ''' diff --git a/source4/heimdal_build/wscript_configure b/source4/heimdal_build/wscript_configure index a5a637ec4a..dd31166dd5 100644 --- a/source4/heimdal_build/wscript_configure +++ b/source4/heimdal_build/wscript_configure @@ -39,7 +39,6 @@ conf.CHECK_FUNCS_IN('openpty', 'util') conf.CHECK_FUNCS_IN('gettext', 'intl') -conf.DEFINE('HAVE_COM_ERR',1) conf.DEFINE('HAVE_KRB5',1) conf.DEFINE('HAVE_GSSAPI',1) diff --git a/source4/lib/tls/wscript b/source4/lib/tls/wscript index 24929e4c80..7b30a89215 100644 --- a/source4/lib/tls/wscript +++ b/source4/lib/tls/wscript @@ -15,6 +15,8 @@ def configure(conf): if 'HAVE_GNUTLS' in conf.env and not Options.options.disable_gnutls: conf.DEFINE('ENABLE_GNUTLS', 1) + conf.CHECK_FUNCS_IN('gnutls_global_init', 'gnutls') + conf.CHECK_HEADERS('gnutls/gnutls.h') # check for gnutls_datum types @@ -28,5 +30,5 @@ def configure(conf): def build(bld): bld.SAMBA_SUBSYSTEM('LIBTLS', source='tls.c tlscert.c', - public_deps='talloc GNUTLS GCRYPT LIBSAMBA-HOSTCONFIG samba_socket' + public_deps='talloc gnutls gcrypt LIBSAMBA-HOSTCONFIG samba_socket' ) diff --git a/source4/librpc/idl/wscript_build b/source4/librpc/idl/wscript_build index 6f51a9cc94..3ebe6b8e9e 100644 --- a/source4/librpc/idl/wscript_build +++ b/source4/librpc/idl/wscript_build @@ -2,5 +2,6 @@ bld.SAMBA_PIDL_LIST('PIDL_S4', source='''irpc.idl nfs4acl.idl notify.idl ntp_signd.idl opendb.idl sasl_helpers.idl server_id.idl winbind.idl winsif.idl winsrepl.idl winstation.idl''', - options="--includedir=../../librpc/idl" - ) + options="--includedir=../librpc/idl --header --ndr-parser --client --python --server", + output_dir='../gen_ndr') + diff --git a/source4/librpc/wscript_build b/source4/librpc/wscript_build index 7bafb61725..225a7f172b 100644 --- a/source4/librpc/wscript_build +++ b/source4/librpc/wscript_build @@ -4,7 +4,7 @@ bld.BUILD_SUBDIR('../../librpc/idl') bld.BUILD_SUBDIR('idl') bld.SAMBA_LIBRARY('LIBNDR', - source='ndr/ndr_string.c ../../librpc/ndr/ndr_basic.c ../../librpc/ndr/uuid.c ../torture/ndr/ndr.c ../../librpc/ndr/ndr_misc.c ../../librpc/gen_ndr/ndr_misc.c', + source='ndr/ndr_string.c ../../librpc/ndr/ndr_basic.c ../../librpc/ndr/uuid.c ../../librpc/ndr/ndr.c ../../librpc/ndr/ndr_misc.c ../../librpc/gen_ndr/ndr_misc.c', # PC_FILES='../librpc/ndr.pc', public_deps='LIBSAMBA-ERRORS talloc LIBSAMBA-UTIL CHARSET LIBSAMBA-HOSTCONFIG', public_headers='../../librpc/ndr/libndr.h PIDL_COMMON/misc.h PIDL_COMMON/ndr_misc.h', @@ -625,6 +625,7 @@ bld.SAMBA_PYTHON('python_winreg', bld.SAMBA_PYTHON('python_dcerpc_misc', source='ndr/py_misc.c', deps='PYTALLOC python_dcerpc NDR_MISC NDR_KRB5PAC', + enabled=False, realname='samba/dcerpc/misc.so' ) @@ -723,6 +724,7 @@ bld.SAMBA_PYTHON('python_drsuapi', bld.SAMBA_PYTHON('python_dcerpc_security', source='ndr/py_security.c', deps='PYTALLOC python_dcerpc_misc python_dcerpc NDR_SECURITY', + enabled=False, realname='samba/dcerpc/security.so' ) @@ -730,6 +732,7 @@ bld.SAMBA_PYTHON('python_dcerpc_security', bld.SAMBA_PYTHON('python_dcerpc_xattr', source='ndr/py_xattr.c', deps='PYTALLOC python_dcerpc_misc python_dcerpc python_dcerpc_security NDR_XATTR RPC_NDR_XATTR', + enabled=False, realname='samba/dcerpc/xattr.so' ) diff --git a/source4/wscript b/source4/wscript index ca2cd68c6a..31bc3070d0 100644 --- a/source4/wscript +++ b/source4/wscript @@ -5,21 +5,19 @@ blddir = 'bin' import sys sys.path.insert(0, srcdir+"/buildtools/wafsamba") -import wafsamba - -LIBREPLACE_DIR= srcdir + '/lib/replace' -LIBLDB_DIR= srcdir + '/source4/lib/ldb' +import wafsamba, Options def set_options(opt): - opt.recurse(LIBREPLACE_DIR) - opt.recurse(LIBLDB_DIR) + opt.recurse('../lib/replace') + opt.recurse('dynconfig') + opt.recurse('scripting/python') + opt.recurse('lib/ldb') opt.recurse('selftest') opt.recurse('lib/tls') opt.recurse('../lib/nss_wrapper') opt.recurse('../lib/socket_wrapper') opt.recurse('../lib/uid_wrapper') - def configure(conf): conf.define('PACKAGE_NAME', 'samba') conf.define('PACKAGE_STRING', 'samba 4') @@ -28,11 +26,33 @@ def configure(conf): conf.define('PACKAGE_VERSION', "4") conf.define('PACKAGE_BUGREPORT', 'samba-technical@samba.org') - conf.DEFINE('_SAMBA_BUILD_', 4) + conf.DEFINE('CONFIG_H_IS_FROM_SAMBA', 1) + conf.DEFINE('_SAMBA_BUILD_', 4, add_to_cflags=True) + conf.DEFINE('HAVE_CONFIG_H', 1, add_to_cflags=True) + if Options.options.developer: + conf.ADD_CFLAGS('-DDEVELOPER -DDEBUG_PASSWORD') + + # set a lower limit on recursing in waf preprocessor + conf.env.preprocessor_recursion_limit = 10 + + # we should use the PIC options in waf instead + conf.ADD_CFLAGS('-fPIC') + + conf.ADD_EXTRA_INCLUDES('#source4 #lib #source4/lib #source4/include #lib/replace #lib/talloc') + + conf.sub_config('../lib/replace') + conf.find_program('python', var='PYTHON', mandatory=True) conf.find_program('perl', var='PERL', mandatory=True) - conf.sub_config(LIBREPLACE_DIR) - conf.sub_config(LIBLDB_DIR) + + # enable tool to build python extensions + conf.check_tool('python') + conf.check_python_version((2,4,2)) + conf.check_python_headers() + + conf.sub_config('dynconfig') + conf.sub_config('scripting/python') + conf.sub_config('lib/ldb') conf.sub_config('heimdal_build') conf.sub_config('lib/tls') conf.sub_config('ntvfs/sysdep') @@ -44,7 +64,4 @@ def configure(conf): conf.sub_config('../lib/socket_wrapper') conf.sub_config('../lib/uid_wrapper') - conf.DEFINE('CONFIG_H_IS_FROM_SAMBA', 1) - conf.ADD_EXTRA_INCLUDES('#source4 #lib #source4/lib #source4/include #lib/socket_wrapper #lib/talloc #lib/replace #lib/event') - conf.SAMBA_CONFIG_H('include/config.h') diff --git a/source4/wscript_build b/source4/wscript_build index aa834eea18..a924dad2ee 100644 --- a/source4/wscript_build +++ b/source4/wscript_build @@ -11,40 +11,15 @@ bld.SETUP_BUILD_GROUPS() bld.SAMBA_MKVERSION('version.h') -bld.ENABLE_MAGIC_ORDERING() +# bld.ENABLE_MAGIC_ORDERING() -bld.PREDECLARE('LIBNDR', 'LIBRARY') -bld.PREDECLARE('LIBSAMBA-UTIL', 'LIBRARY') -bld.PREDECLARE('torture', 'LIBRARY') -bld.PREDECLARE('TORTURE_RAW', 'MODULE') -bld.PREDECLARE('TORTURE_RAP', 'MODULE') -bld.PREDECLARE('TORTURE_LDAP', 'MODULE') -bld.PREDECLARE('python_dcerpc_misc', 'PYTHON') -bld.PREDECLARE('python_dcerpc_security', 'PYTHON') -bld.PREDECLARE('pycredentials', 'PYTHON') -bld.PREDECLARE('pyauth', 'PYTHON') -bld.PREDECLARE('gensec', 'LIBRARY') -bld.PREDECLARE('registry', 'LIBRARY') -bld.PREDECLARE('HEIMDAL_HDB_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_SPNEGO_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_GSSAPI_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_KRB5_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_DIGEST_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_PKCS8_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_PKCS9_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_PKCS12_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_RFC2459_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_PKINIT_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_CMS_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_OCSP_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_KX509_ASN1', 'ASN1') -bld.PREDECLARE('HEIMDAL_PKCS10_ASN1', 'ASN1') +bld.TARGET_ALIAS('attr', 'XATTR') +bld.TARGET_ALIAS('execinfo', 'EXECINFO') +bld.TARGET_ALIAS('popt', 'LIBPOPT') # missing subsystems bld.SAMBA_SUBSYSTEM('pyldb_util', '') bld.SAMBA_SUBSYSTEM('pyldb', '') -bld.SAMBA_SUBSYSTEM('LIBPOPT', '') -bld.SAMBA_SUBSYSTEM('LIBCLI_SMB2', '') bld.SAMBA_SUBSYSTEM('dcerpc_mgmt', '') bld.SAMBA_SUBSYSTEM('TORTURE_LDB_MODULE', '') bld.SAMBA_SUBSYSTEM('INTL', '') @@ -52,32 +27,23 @@ bld.SAMBA_SUBSYSTEM('NDR_SAMR', '') bld.SAMBA_SUBSYSTEM('LIBLDB_CMDLINE', '') bld.SAMBA_SUBSYSTEM('NETAPI', '') bld.SAMBA_SUBSYSTEM('HDB_LDB', '') -bld.SAMBA_SUBSYSTEM('HDB_LDB', '') bld.SAMBA_SUBSYSTEM('SMBREADLINE', '') bld.SAMBA_SUBSYSTEM('OPENPTY', '') bld.SAMBA_SUBSYSTEM('SMBCLIENT', '') bld.SAMBA_SUBSYSTEM('BLKID', '') bld.SAMBA_SUBSYSTEM('LIBTEVENT_EXT', '') -bld.SAMBA_SUBSYSTEM('LIBTEVENT_EXT', '') bld.SAMBA_SUBSYSTEM('PTHREAD', '') bld.SAMBA_SUBSYSTEM('CRYPT', '') bld.SAMBA_SUBSYSTEM('PAM', '') -bld.SAMBA_SUBSYSTEM('HDB_LDB', '') bld.SAMBA_SUBSYSTEM('SASL', '') bld.SAMBA_SUBSYSTEM('smbcalls', '') -bld.SAMBA_SUBSYSTEM('SMBREADLINE', '') -bld.SAMBA_SUBSYSTEM('SMBREADLINE', '') bld.SAMBA_SUBSYSTEM('SETPROCTITLE', '') bld.SAMBA_SUBSYSTEM('ZLIB', '') bld.SAMBA_SUBSYSTEM('NDR_SRVSVC', '') -bld.SAMBA_SUBSYSTEM('HDB_LDB', '') -bld.SAMBA_SUBSYSTEM('HDB_LDB', '') -bld.SAMBA_SUBSYSTEM('HDB_LDB', '') -bld.SAMBA_SUBSYSTEM('SETPROCTITLE', '') -bld.SAMBA_SUBSYSTEM('HDB_LDB', '') bld.SAMBA_SUBSYSTEM('ICONV', '') bld.SAMBA_SUBSYSTEM('NDR_MISC', '') bld.SAMBA_SUBSYSTEM('SCHANNELDB', '') +bld.SAMBA_SUBSYSTEM('DCOM_PROXY_DCOM', '') bld.BUILD_SUBDIR('../lib/replace') @@ -149,5 +115,5 @@ bld.BUILD_SUBDIR('../libgpo') bld.BUILD_SUBDIR('../libcli/named_pipe_auth') bld.BUILD_SUBDIR('heimdal_build') -bld.CHECK_DEPENDENCIES() bld.ENFORCE_GROUP_ORDERING() +bld.CHECK_ORPANED_TARGETS() -- cgit