From bc4aebfaecf52678eb40aee2fd4bd81a315c554d Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Mon, 2 Jan 2006 00:16:08 +0000 Subject: r12670: Make a couple of dependencies stricter Re-introduce and use the OUTPUT_TYPE property for MODULEs to force specific modules to always be included (This used to be commit f9eede3d40098eddc3618ee48f9253cdddb94a6f) --- source4/build/smb_build/config_mk.pm | 2 ++ source4/build/smb_build/input.pm | 4 ++-- source4/build/smb_build/makefile.pm | 2 ++ 3 files changed, 6 insertions(+), 2 deletions(-) (limited to 'source4/build') diff --git a/source4/build/smb_build/config_mk.pm b/source4/build/smb_build/config_mk.pm index 64fd5e6fc9..6a8426974f 100644 --- a/source4/build/smb_build/config_mk.pm +++ b/source4/build/smb_build/config_mk.pm @@ -43,6 +43,8 @@ my $section_types = { "ENABLE" => "bool", "NOPROTO" => "bool", + "OUTPUT_TYPE" => "string", + "MANPAGE" => "string", "PRIVATE_PROTO_HEADER" => "string" }, diff --git a/source4/build/smb_build/input.pm b/source4/build/smb_build/input.pm index ceddd75c3f..ef90e3c122 100644 --- a/source4/build/smb_build/input.pm +++ b/source4/build/smb_build/input.pm @@ -69,12 +69,12 @@ sub check_module($$$) if (defined($mod->{CHOSEN_BUILD}) and $mod->{CHOSEN_BUILD} ne "DEFAULT") { $mod->{OUTPUT_TYPE} = $mod->{CHOSEN_BUILD}; - } else { + } elsif (not defined($mod->{OUTPUT_TYPE})) { $mod->{OUTPUT_TYPE} = $default_ot; } if ($mod->{OUTPUT_TYPE} eq "SHARED_LIBRARY") { - $mod->{INSTALLDIR} = "LIBDIR/$mod->{SUBSYSTEM}"; + $mod->{INSTALLDIR} = "MODULESDIR/$mod->{SUBSYSTEM}"; push (@{$mod->{REQUIRED_SUBSYSTEMS}}, $mod->{SUBSYSTEM}); } else { push (@{$INPUT->{$mod->{SUBSYSTEM}}{REQUIRED_SUBSYSTEMS}}, $mod->{NAME}); diff --git a/source4/build/smb_build/makefile.pm b/source4/build/smb_build/makefile.pm index e28aaec9d1..2e06dc179a 100644 --- a/source4/build/smb_build/makefile.pm +++ b/source4/build/smb_build/makefile.pm @@ -242,6 +242,7 @@ sub SharedLibrary($$) my ($self,$ctx) = @_; push (@{$self->{shared_libs}}, "bin/$ctx->{LIBRARY_REALNAME}"); + push (@{$self->{shared_modules}}, "bin/$ctx->{LIBRARY_REALNAME}"); $self->_prepare_list($ctx, "OBJ_LIST"); $self->_prepare_list($ctx, "CFLAGS"); @@ -498,6 +499,7 @@ sub write($$) $self->output("ALL_OBJS = " . array2oneperline($self->{all_objs}) . "\n"); $self->output("PROTO_OBJS = " . array2oneperline($self->{proto_objs}) . "\n"); $self->output("PROTO_HEADERS = " . array2oneperline($self->{proto_headers}) . "\n"); + $self->output("SHARED_MODULES = " . array2oneperline($self->{shared_modules}) . "\n"); $self->_prepare_mk_files(); -- cgit