mkinclude credentials/config.mk
[SUBSYSTEM::auth_session]
-PRIVATE_PROTO_HEADER = session_proto.h
PUBLIC_DEPENDENCIES = CREDENTIALS
PUBLIC_HEADERS += $(authsrcdir)/session.h
auth_session_OBJ_FILES = $(addprefix $(authsrcdir)/, session.o)
+$(call proto_header_template,$(authsrcdir)/session_proto.h,$(auth_session_OBJ_FILES:.o=.c))
+
[SUBSYSTEM::auth_system_session]
-PRIVATE_PROTO_HEADER = system_session_proto.h
PUBLIC_DEPENDENCIES = CREDENTIALS
PRIVATE_DEPENDENCIES = auth_session LIBSAMBA-UTIL LIBSECURITY
auth_system_session_OBJ_FILES = $(addprefix $(authsrcdir)/, system_session.o)
+$(call proto_header_template,$(authsrcdir)/system_session_proto.h,$(auth_system_session_OBJ_FILES))
[SUBSYSTEM::auth_sam]
-PRIVATE_PROTO_HEADER = auth_sam.h
PUBLIC_DEPENDENCIES = SAMDB UTIL_LDB LIBSECURITY
PRIVATE_DEPENDENCIES = LDAP_ENCODE
auth_sam_OBJ_FILES = $(addprefix $(authsrcdir)/, sam.o)
+$(call proto_header_template,$(authsrcdir)/auth_sam.h,$(auth_sam_OBJ_FILES))
+
[SUBSYSTEM::auth_sam_reply]
-PRIVATE_PROTO_HEADER = auth_sam_reply.h
auth_sam_reply_OBJ_FILES = $(addprefix $(authsrcdir)/, auth_sam_reply.o)
+$(call proto_header_template,$(authsrcdir)/auth_sam_reply.h,$(auth_sam_reply_OBJ_FILES))
+
[PYTHON::swig_auth]
PUBLIC_DEPENDENCIES = auth_system_session
PRIVATE_DEPENDENCIES = SAMDB
#################################
# Start SUBSYSTEM CREDENTIALS
[SUBSYSTEM::CREDENTIALS]
-PRIVATE_PROTO_HEADER = credentials_proto.h
PUBLIC_DEPENDENCIES = \
LIBCLI_AUTH SECRETS LIBCRYPTO KERBEROS UTIL_LDB HEIMDAL_GSSAPI
PRIVATE_DEPENDENCIES = \
SECRETS
-CREDENTIALS_OBJ_FILES = $(addprefix auth/credentials/, credentials.o credentials_files.o credentials_ntlm.o credentials_krb5.o ../kerberos/kerberos_util.o)
-PUBLIC_HEADERS += auth/credentials/credentials.h
+CREDENTIALS_OBJ_FILES = $(addprefix $(authsrcdir)/credentials/, credentials.o credentials_files.o credentials_ntlm.o credentials_krb5.o ../kerberos/kerberos_util.o)
+
+$(call proto_header_template,$(authsrcdir)/credentials_proto.h,$(CREDENTIALS_OBJ_FILES:.o=.c))
+
+PUBLIC_HEADERS += $(authsrcdir)/credentials/credentials.h
[PYTHON::swig_credentials]
PUBLIC_DEPENDENCIES = CREDENTIALS LIBCMDLINE_CREDENTIALS
SWIG_FILE = credentials.i
-swig_credentials_OBJ_FILES = auth/credentials/credentials_wrap.o
+swig_credentials_OBJ_FILES = $(authsrcdir)/credentials/credentials_wrap.o
#################################
# Start SUBSYSTEM gensec
[LIBRARY::gensec]
-PRIVATE_PROTO_HEADER = gensec_proto.h
PUBLIC_DEPENDENCIES = \
CREDENTIALS LIBSAMBA-UTIL LIBCRYPTO ASN1_UTIL samba-socket LIBPACKET
# End SUBSYSTEM gensec
PUBLIC_HEADERS += $(gensecsrcdir)/gensec.h
+$(call proto_header_template,$(gensecsrcdir)/gensec_proto.h,$(gensec_OBJ_FILES:.o=.c))
+
################################################
# Start MODULE gensec_krb5
[MODULE::gensec_krb5]
[MODULE::gensec_spnego]
SUBSYSTEM = gensec
INIT_FUNCTION = gensec_spnego_init
-PRIVATE_PROTO_HEADER = spnego_proto.h
PRIVATE_DEPENDENCIES = ASN1_UTIL CREDENTIALS
# End MODULE gensec_spnego
################################################
gensec_spnego_OBJ_FILES = $(addprefix $(gensecsrcdir)/, spnego.o spnego_parse.o)
+$(call proto_header_template,$(gensecsrcdir)/spnego_proto.h,$(gensec_spnego_OBJ_FILES:.o=.c))
+
################################################
# Start MODULE gensec_schannel
[MODULE::gensec_schannel]
$(1): $(2) ;
@echo "Creating $$@"
@$$(PERL) $$(srcdir)/script/mkproto.pl --srcdir=$$(srcdir) --builddir=$$(builddir) --public=/dev/null --private=$$@ $$^
+
+PROTO_HEADERS += $(1)
endef
# Shared module
{
my ($self,$ctx) = @_;
- my $target = "\$(addprefix $ctx->{BASEDIR}/,$ctx->{PRIVATE_PROTO_HEADER})";
- $self->output("PROTO_HEADERS += $target\n");
+ my $target = "$ctx->{BASEDIR}/$ctx->{PRIVATE_PROTO_HEADER}";
$self->output("\$(call proto_header_template,$target,\$($ctx->{NAME}_OBJ_FILES:.o=.c))\n");
}
################################################
# Start SUBSYSTEM CHARSET
[SUBSYSTEM::CHARSET]
-PRIVATE_PROTO_HEADER = charset_proto.h
PUBLIC_DEPENDENCIES = ICONV
PRIVATE_DEPENDENCIES = DYNCONFIG
# End SUBSYSTEM CHARSET
CHARSET_OBJ_FILES = $(addprefix $(libcharsetsrcdir)/, iconv.o charcnv.o util_unistr.o)
PUBLIC_HEADERS += $(libcharsetsrcdir)/charset.h
+
+PRIVATE_PROTO_HEADER = charset_proto.h