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 ++++++++++++++++++++++++--- 3 files changed, 30 insertions(+), 7 deletions(-) (limited to 'source4/build') 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"); -- cgit