From 3d885562c9f83d60c5d4957b067e35387dfa50dd Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Mon, 15 Nov 2004 00:32:37 +0000 Subject: [PATCH] r3744: Support building subsystems as a shared library. Modules don't work yet, so while this does compile, it does not work yet. --- source/auth/config.mk | 1 + source/build/smb_build/makefile.pm | 2 +- source/build/smb_build/output.pm | 3 ++- source/build/smb_build/smb_build_h.pm | 3 ++- source/client/config.mk | 3 ++- source/lib/dcom/config.mk | 2 +- source/libcli/libsmb.mk | 2 +- source/libnet/config.mk | 1 + source/torture/config.mk | 11 +++++++---- source/utils/config.mk | 3 ++- 10 files changed, 20 insertions(+), 11 deletions(-) diff --git a/source/auth/config.mk b/source/auth/config.mk index cf794e30a95..b84880bccad 100644 --- a/source/auth/config.mk +++ b/source/auth/config.mk @@ -17,6 +17,7 @@ REQUIRED_SUBSYSTEMS = \ [MODULE::auth_builtin] INIT_FUNCTION = auth_builtin_init SUBSYSTEM = AUTH +REQUIRED_SUBSYSTEMS = LIBCLI_UTILS INIT_OBJ_FILES = \ auth/auth_builtin.o # End MODULE auth_builtin diff --git a/source/build/smb_build/makefile.pm b/source/build/smb_build/makefile.pm index 228c1d7e9b7..bdeb6d02df6 100644 --- a/source/build/smb_build/makefile.pm +++ b/source/build/smb_build/makefile.pm @@ -356,7 +356,7 @@ LIBRARY_$ctx->{NAME}_SHARED_LINK_LIST =$tmpshlink LIBRARY_$ctx->{NAME}_SHARED_LINK_FLAGS =$tmpshflag # -# Shared $ctx->{LIBRARY_REALNAME} +# Shared $ctx->{LIBRARY_NAME} $ctx->{OUTPUT}: \$(LIBRARY_$ctx->{NAME}_DEPEND_LIST) bin/.dummy \@echo Linking \$\@ \@\$(SHLD) \$(SHLD_FLAGS) -o \$\@ \\ diff --git a/source/build/smb_build/output.pm b/source/build/smb_build/output.pm index d0e00c75657..f04c544910c 100644 --- a/source/build/smb_build/output.pm +++ b/source/build/smb_build/output.pm @@ -101,7 +101,8 @@ sub create_output($) push(@{$part->{SUBSYSTEM_INIT_FUNCTIONS}}, @{$elem->{INIT_FUNCTION}}) if $part->{OUTPUT_TYPE} eq "BINARY" and defined($elem->{INIT_FUNCTION}) and - $elem->{INIT_FUNCTION} ne ""; + $elem->{INIT_FUNCTION} ne "" and + $part->{OUTPUT_TYPE} ne "SHARED_LIBRARY"; } } diff --git a/source/build/smb_build/smb_build_h.pm b/source/build/smb_build/smb_build_h.pm index 6d67eedf60c..f3b0a2b837f 100644 --- a/source/build/smb_build/smb_build_h.pm +++ b/source/build/smb_build/smb_build_h.pm @@ -64,7 +64,8 @@ sub _prepare_smb_build_h($) next if $key->{OUTPUT_TYPE} ne "SHARED_LIBRARY"; my $name = $key->{NAME}; - my $func = $key->{INIT_FUNCTION}; + next if not defined($key->{INIT_FUNCTION}); + my $func = join(' ', @{$key->{INIT_FUNCTION}}); next if $func eq ""; my $DEFINE = (); diff --git a/source/client/config.mk b/source/client/config.mk index 6a26a5d324f..5be1c9f20bf 100644 --- a/source/client/config.mk +++ b/source/client/config.mk @@ -10,6 +10,7 @@ REQUIRED_SUBSYSTEMS = \ CONFIG \ LIBCMDLINE \ LIBBASIC \ - LIBSMB + LIBSMB \ + LIBRPC # End BINARY smbclient ################################# diff --git a/source/lib/dcom/config.mk b/source/lib/dcom/config.mk index 21d90024d4e..f0b4031fc1c 100644 --- a/source/lib/dcom/config.mk +++ b/source/lib/dcom/config.mk @@ -4,7 +4,7 @@ INIT_OBJ_FILES = \ lib/dcom/common/main.o \ lib/dcom/common/tables.o -REQUIRED_SUBSYSTEMS = LIBRPC +REQUIRED_SUBSYSTEMS = LIBNDR_RAW LIBNDR_GEN LIBRPC_RAW # # End SUBSYSTEM LIBDCOM ################################################ diff --git a/source/libcli/libsmb.mk b/source/libcli/libsmb.mk index ddc4eac35ae..5f314dfca16 100644 --- a/source/libcli/libsmb.mk +++ b/source/libcli/libsmb.mk @@ -1,5 +1,5 @@ [SUBSYSTEM::LIBSMB] -REQUIRED_SUBSYSTEMS = LIBCLI LIBRPC SOCKET +REQUIRED_SUBSYSTEMS = LIBCLI SOCKET ADD_OBJ_FILES = libcli/clireadwrite.o \ libcli/cliconnect.o \ libcli/clifile.o \ diff --git a/source/libnet/config.mk b/source/libnet/config.mk index 36d369117d0..b2c0c043876 100644 --- a/source/libnet/config.mk +++ b/source/libnet/config.mk @@ -7,5 +7,6 @@ ADD_OBJ_FILES = \ libnet/libnet_passwd.o \ libnet/libnet_time.o \ libnet/libnet_rpc.o +REQUIRED_SUBSYSTEMS = LIBRPC # End SUBSYSTEM LIBNET ################################# diff --git a/source/torture/config.mk b/source/torture/config.mk index d57bbd8e8eb..bd006ebb57a 100644 --- a/source/torture/config.mk +++ b/source/torture/config.mk @@ -20,7 +20,7 @@ ADD_OBJ_FILES = \ torture/basic/delaywrite.o \ torture/basic/attr.o REQUIRED_SUBSYSTEMS = \ - LIBSMB + LIBSMB LIBRPC # End SUBSYSTEM TORTURE_BASIC ################################# @@ -185,7 +185,8 @@ REQUIRED_SUBSYSTEMS = \ LIBSMB \ CONFIG \ LIBBASIC \ - LIBCMDLINE + LIBCMDLINE \ + LIBRPC # End BINARY gentest ################################# @@ -198,7 +199,8 @@ REQUIRED_SUBSYSTEMS = \ LIBSMB \ CONFIG \ LIBBASIC \ - LIBCMDLINE + LIBCMDLINE \ + LIBRPC # End BINARY masktest ################################# @@ -212,6 +214,7 @@ REQUIRED_SUBSYSTEMS = \ LIBSMB \ CONFIG \ LIBBASIC \ - LIBCMDLINE + LIBCMDLINE \ + LIBRPC # End BINARY locktest ################################# diff --git a/source/utils/config.mk b/source/utils/config.mk index 6afb1c23c05..1e901e1d877 100644 --- a/source/utils/config.mk +++ b/source/utils/config.mk @@ -9,7 +9,8 @@ REQUIRED_SUBSYSTEMS = \ CONFIG \ LIBCMDLINE \ LIBBASIC \ - LIBSMB + LIBSMB \ + LIBRPC # End BINARY ndrdump ################################# -- 2.34.1