summaryrefslogtreecommitdiff
path: root/source4/build/smb_build
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2007-11-21 14:49:35 +0100
committerStefan Metzmacher <metze@samba.org>2007-12-21 05:46:02 +0100
commit218fef224c558c2c6be8e67c3275c8cc27dead7e (patch)
tree2fff1ace46b2a95541371182f9a98b2ef76fc740 /source4/build/smb_build
parentdd2a4719df68519c11f115aaa8b77e7afca0a2a3 (diff)
downloadsamba-218fef224c558c2c6be8e67c3275c8cc27dead7e.tar.gz
samba-218fef224c558c2c6be8e67c3275c8cc27dead7e.tar.bz2
samba-218fef224c558c2c6be8e67c3275c8cc27dead7e.zip
r26097: Consider python modules special modules rather than special libraries.
(This used to be commit 4c26cf38102a67ae12b3512b5d38991f020ed2e2)
Diffstat (limited to 'source4/build/smb_build')
-rw-r--r--source4/build/smb_build/input.pm4
-rw-r--r--source4/build/smb_build/main.pl6
-rw-r--r--source4/build/smb_build/makefile.pm10
3 files changed, 11 insertions, 9 deletions
diff --git a/source4/build/smb_build/input.pm b/source4/build/smb_build/input.pm
index d0d923bf5e..51b4c9bf39 100644
--- a/source4/build/smb_build/input.pm
+++ b/source4/build/smb_build/input.pm
@@ -160,7 +160,9 @@ sub check_python($$)
$python->{LIBRARY_REALNAME} = "$basename.\$(SHLIBEXT)";
}
- check_library($INPUT, $python, ["SHARED_LIBRARY"]);
+ $python->{SUBSYSTEM} = "LIBPYTHON";
+
+ check_module($INPUT, $python, ["SHARED_LIBRARY"]);
}
sub check_binary($$)
diff --git a/source4/build/smb_build/main.pl b/source4/build/smb_build/main.pl
index de639eb36b..e084d48a77 100644
--- a/source4/build/smb_build/main.pl
+++ b/source4/build/smb_build/main.pl
@@ -62,14 +62,14 @@ foreach my $key (values %$OUTPUT) {
$mkenv->StaticLibrary($key) if grep(/STATIC_LIBRARY/, @{$key->{OUTPUT_TYPE}});
$mkenv->PkgConfig($key, $OUTPUT) if $key->{TYPE} eq "LIBRARY"
and defined($key->{VERSION});
- $mkenv->SharedLibrary($key) if ($key->{TYPE} eq "LIBRARY" or
- $key->{TYPE} eq "PYTHON") and
+ $mkenv->SharedLibrary($key) if ($key->{TYPE} eq "LIBRARY") and
grep(/SHARED_LIBRARY/, @{$key->{OUTPUT_TYPE}});
if ($key->{TYPE} eq "LIBRARY" and
${$key->{OUTPUT_TYPE}}[0] eq "SHARED_LIBRARY") {
$shared_libs_used = 1;
}
- $mkenv->SharedModule($key) if $key->{TYPE} eq "MODULE" and
+ $mkenv->SharedModule($key) if ($key->{TYPE} eq "MODULE" or
+ $key->{TYPE} eq "PYTHON") and
grep(/SHARED_LIBRARY/, @{$key->{OUTPUT_TYPE}});
$mkenv->Binary($key) if grep(/BINARY/, @{$key->{OUTPUT_TYPE}});
$mkenv->PythonFiles($key) if defined($key->{PYTHON_FILES});
diff --git a/source4/build/smb_build/makefile.pm b/source4/build/smb_build/makefile.pm
index 043f13d518..cd73aeb8a7 100644
--- a/source4/build/smb_build/makefile.pm
+++ b/source4/build/smb_build/makefile.pm
@@ -310,6 +310,11 @@ sub SharedModule($$)
my $sane_subsystem = lc($ctx->{SUBSYSTEM});
$sane_subsystem =~ s/^lib//;
+ if ($ctx->{TYPE} eq "PYTHON") {
+ push (@{$self->{python_dsos}},
+ "$ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}");
+ }
+
push (@{$self->{shared_modules}}, "$ctx->{TARGET_SHARED_LIBRARY}");
push (@{$self->{plugins}}, "$ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}");
@@ -396,11 +401,6 @@ sub SharedLibrary($$)
$self->_prepare_list($ctx, "LINK_FLAGS");
# $self->_prepare_list_ex($ctx, "LINK_FLAGS", "-Wl,--whole-archive", "-Wl,--no-whole-archive");
- if ($ctx->{TYPE} eq "PYTHON") {
- push (@{$self->{python_dsos}},
- "$ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}");
- }
-
push(@{$self->{all_objs}}, "\$($ctx->{TYPE}_$ctx->{NAME}_FULL_OBJ_LIST)");
my $soarg = "";