From 1cc7c693ad94aec88d231d77afc08b38065ae37c Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Tue, 25 Apr 2006 16:35:06 +0000 Subject: r15248: Fix automatic dependencies build (This used to be commit 3e5aa5e7940ebbb961c53418d170495860f514a0) --- source4/build/smb_build/env.pm | 6 ++++-- source4/build/smb_build/input.pm | 4 ++-- source4/build/smb_build/makefile.pm | 27 ++++++++++++++++++++++++--- source4/heimdal_build/config.mk | 14 ++++++-------- source4/lib/registry/config.mk | 1 - 5 files changed, 36 insertions(+), 16 deletions(-) diff --git a/source4/build/smb_build/env.pm b/source4/build/smb_build/env.pm index f6de8ce57f..1fdaf87ad7 100644 --- a/source4/build/smb_build/env.pm +++ b/source4/build/smb_build/env.pm @@ -53,9 +53,9 @@ sub _set_config($$) $self->{automatic_deps} = ($self->{config}->{automatic_dependencies} eq "yes"); } -sub PkgConfig($$$$$$$$) +sub PkgConfig($$$$$$$$$$) { - my ($self,$path,$name,$libs,$cflags,$version,$desc,$hasmodules) = @_; + my ($self,$path,$name,$libs,$cflags,$version,$desc,$hasmodules,$pubdep,$privdep) = @_; print __FILE__.": creating $path\n"; @@ -83,6 +83,8 @@ __EOF__ if (defined($desc)) { print OUT "Description: $desc\n"; } + print OUT "Requires: $pubdep\n" if defined($pubdep); + print OUT "Requires.private: $privdep\n" if defined($privdep); print OUT "Version: $version\n"; print OUT "Libs: -L\${libdir} $libs\n"; print OUT "Cflags: -I\${includedir} $cflags\n"; diff --git a/source4/build/smb_build/input.pm b/source4/build/smb_build/input.pm index 6d9b3f5aac..697f706a0c 100644 --- a/source4/build/smb_build/input.pm +++ b/source4/build/smb_build/input.pm @@ -203,8 +203,8 @@ sub check($$$$$) push (@{$part->{DEPENDENCIES}}, \$depend{$key}); } - delete ($part->{PRIVATE_DEPENDENCIES}); - delete ($part->{PUBLIC_DEPENDENCIES}); +# delete ($part->{PRIVATE_DEPENDENCIES}); +# delete ($part->{PUBLIC_DEPENDENCIES}); } foreach my $part (values %depend) { diff --git a/source4/build/smb_build/makefile.pm b/source4/build/smb_build/makefile.pm index 767edbd496..aa9f93fc2d 100644 --- a/source4/build/smb_build/makefile.pm +++ b/source4/build/smb_build/makefile.pm @@ -70,7 +70,7 @@ sub _prepare_path_vars($) prefix = $self->{config}->{prefix} exec_prefix = $self->{config}->{exec_prefix} selftest_prefix = $self->{config}->{selftest_prefix} -VPATH = $self->{config}->{srcdir}:heimdal/lib/asn1:heimdal/lib/krb5:heimdal/lib/gssapi:heimdal/lib/hdb:heimdal/lib/roken:heimdal/lib/des +VPATH = $self->{config}->{srcdir}:heimdal_build:heimdal/lib/asn1:heimdal/lib/krb5:heimdal/lib/gssapi:heimdal/lib/hdb:heimdal/lib/roken:heimdal/lib/des srcdir = $self->{config}->{srcdir} builddir = $self->{config}->{builddir} @@ -457,6 +457,25 @@ sub PkgConfig($$) push (@{$self->{pc_files}}, $path); + my $pubs; + my $privs; + + if (defined($ctx->{PUBLIC_DEPENDENCIES})) { + foreach (@{$ctx->{PUBLIC_DEPENDENCIES}}) { +# next unless ($self-> ) { + + $pubs .= "$_ "; + } + } + + if (defined($ctx->{PRIVATE_DEPENDENCIES})) { + foreach (@{$ctx->{PRIVATE_DEPENDENCIES}}) { +# next unless ($self-> ) { + + $privs .= "$_ "; + } + } + smb_build::env::PkgConfig($self, $path, $link_name, @@ -464,7 +483,9 @@ sub PkgConfig($$) "", "$ctx->{VERSION}", $ctx->{DESCRIPTION}, - defined($ctx->{INIT_FUNCTIONS}) + defined($ctx->{INIT_FUNCTIONS}), + $pubs, + $privs ); } @@ -499,7 +520,7 @@ sub ProtoHeader($$) $ctx->{PUBLIC_PROTO_HEADER} = $ctx->{PRIVATE_PROTO_HEADER}; } - $self->output("$dir/$ctx->{PUBLIC_PROTO_HEADER}: $ctx->{MK_FILE} \$($ctx->{TYPE}_$ctx->{NAME}_OBJ_LIST:.o=.c)\n"); + $self->output("$dir/$ctx->{PUBLIC_PROTO_HEADER}: $ctx->{MK_FILE} \$($ctx->{TYPE}_$ctx->{NAME}_OBJ_LIST:.o=.c) \$(srcdir)/script/mkproto.pl\n"); $self->output("\t\@echo \"$comment\"\n"); $self->output("\t\@\$(PERL) \$(srcdir)/script/mkproto.pl --srcdir=\$(srcdir) --builddir=\$(builddir) --private=$dir/$ctx->{PRIVATE_PROTO_HEADER} --public=$dir/$ctx->{PUBLIC_PROTO_HEADER} \$($ctx->{TYPE}_$ctx->{NAME}_OBJ_LIST)\n\n"); diff --git a/source4/heimdal_build/config.mk b/source4/heimdal_build/config.mk index c403b09a87..771551af5c 100644 --- a/source4/heimdal_build/config.mk +++ b/source4/heimdal_build/config.mk @@ -188,8 +188,7 @@ OBJ_FILES = \ ####################### # Start SUBSYSTEM HEIMDAL_ASN1 [SUBSYSTEM::HEIMDAL_ASN1] -EXTRA_CFLAGS = \ - -Iheimdal_build -Iheimdal/lib/asn1 +EXTRA_CFLAGS = -Iheimdal_build -Iheimdal/lib/asn1 OBJ_FILES = \ ../heimdal/lib/asn1/der_get.o \ ../heimdal/lib/asn1/der_put.o \ @@ -295,7 +294,7 @@ OBJ_FILES = ../heimdal/lib/roken/gai_strerror.o ####################### # Start SUBSYSTEM HEIMDAL_ROKEN_GAI_STRERROR [SUBSYSTEM::HEIMDAL_ROKEN_INET_ATON] -EXTRA_CFLAGS = -Iheimdal_build -Iheimdal/lib/roken +EXTRA_CFLAGS = -Iheimdal_build OBJ_FILES = ../heimdal/lib/roken/inet_aton.o ####################### @@ -376,7 +375,7 @@ OBJ_FILES = ../heimdal/lib/asn1/lex.ho ####################### # Start BINARY asn1_compile [BINARY::asn1_compile] -EXTRA_CFLAGS = -Iheimdal_build -Iheimdal/lib/roken -Iheimdal/lib/asn1 +EXTRA_CFLAGS = -Iheimdal_build -Iheimdal/lib/roken OBJ_FILES = \ ../heimdal/lib/asn1/main.ho \ ../heimdal/lib/asn1/gen.ho \ @@ -416,7 +415,7 @@ OBJ_FILES = ../heimdal/lib/com_err/lex.ho ####################### # Start BINARY compile_et [BINARY::compile_et] -EXTRA_CFLAGS = -Iheimdal_build -Iheimdal/lib/com_err -Iheimdal/lib/roken +EXTRA_CFLAGS = -Iheimdal_build -Iheimdal/lib/roken OBJ_FILES = ../heimdal/lib/vers/print_version.ho \ ../heimdal/lib/com_err/parse.ho \ ../heimdal/lib/com_err/compile_et.ho \ @@ -469,12 +468,11 @@ clean:: [LIBRARY::HEIMDAL] VERSION = 0.0.1 SO_VERSION = 0 -EXTRA_CFLAGS = -Iheimdal/lib/vers -Iheimdal_build +EXTRA_CFLAGS = -Iheimdal_build OBJ_FILES = ../heimdal/lib/vers/print_version.o PUBLIC_DEPENDENCIES = \ LIBREPLACE HEIMDAL_GSSAPI HEIMDAL_KRB5 KERBEROS \ - HEIMDAL_ASN1 HEIMDAL_ROKEN \ - HEIMDAL_COM_ERR HEIMDAL_GLUE EXT_LIB_RESOLV + HEIMDAL_GLUE EXT_LIB_RESOLV # End SUBSYSTEM HEIMDAL ####################### diff --git a/source4/lib/registry/config.mk b/source4/lib/registry/config.mk index 6cf2f50268..e31a775a3c 100644 --- a/source4/lib/registry/config.mk +++ b/source4/lib/registry/config.mk @@ -16,7 +16,6 @@ PUBLIC_DEPENDENCIES = TDR OBJ_FILES = tdr_regf.o # Special support for external builddirs -lib/registry/reg_backend_nt4.c: $(srcdir)/lib/registry/reg_backend_nt4.c $(srcdir)/lib/registry/reg_backend_nt4.c: lib/registry/tdr_regf.c lib/registry/tdr_regf.h: lib/registry/tdr_regf.c lib/registry/tdr_regf.c: $(srcdir)/lib/registry/regf.idl -- cgit