summaryrefslogtreecommitdiff
path: root/source4/build
diff options
context:
space:
mode:
Diffstat (limited to 'source4/build')
-rw-r--r--source4/build/m4/check_ld.m41
-rw-r--r--source4/build/smb_build/main.pl14
2 files changed, 14 insertions, 1 deletions
diff --git a/source4/build/m4/check_ld.m4 b/source4/build/m4/check_ld.m4
index 88d3e49e0c..3b69057a69 100644
--- a/source4/build/m4/check_ld.m4
+++ b/source4/build/m4/check_ld.m4
@@ -105,6 +105,7 @@ AC_LIBREPLACE_SHLD
AC_LIBREPLACE_SHLD_FLAGS
AC_LIBREPLACE_MDLD
AC_LIBREPLACE_MDLD_FLAGS
+AC_LIBREPLACE_RUNTIME_LIB_PATH_VAR
#######################################################
# test whether building a shared library actually works
diff --git a/source4/build/smb_build/main.pl b/source4/build/smb_build/main.pl
index f6038bb078..3ac5c26e1a 100644
--- a/source4/build/smb_build/main.pl
+++ b/source4/build/smb_build/main.pl
@@ -54,6 +54,8 @@ foreach my $key (values %$OUTPUT) {
$mkenv->Integrated($key) if grep(/INTEGRATED/, @{$key->{OUTPUT_TYPE}});
}
+my $shared_libs_used = 0;
+
foreach my $key (values %$OUTPUT) {
next unless defined $key->{OUTPUT_TYPE};
@@ -62,6 +64,10 @@ foreach my $key (values %$OUTPUT) {
and defined($key->{VERSION});
$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
grep(/SHARED_LIBRARY/, @{$key->{OUTPUT_TYPE}});
$mkenv->Binary($key) if grep(/BINARY/, @{$key->{OUTPUT_TYPE}});
@@ -77,7 +83,13 @@ header::create_smb_build_h($OUTPUT, "include/build.h");
cflags::create_cflags($OUTPUT, $config::config{srcdir},
$config::config{builddir}, "extra_cflags.txt");
-
summary::show($OUTPUT, \%config::config);
+if ($shared_libs_used) {
+ print <<EOF;
+To run binaries without installing, set the following environment variable:
+ $config::config{LIB_PATH_VAR}=$config::config{builddir}/bin/shared
+EOF
+}
+
1;