diff options
Diffstat (limited to 'source4/build')
-rw-r--r-- | source4/build/smb_build/input.pm | 1 | ||||
-rw-r--r-- | source4/build/smb_build/makefile.pm | 24 | ||||
-rw-r--r-- | source4/build/tests/summary.c | 2 |
3 files changed, 24 insertions, 3 deletions
diff --git a/source4/build/smb_build/input.pm b/source4/build/smb_build/input.pm index aa34be4b94..92ab54a10e 100644 --- a/source4/build/smb_build/input.pm +++ b/source4/build/smb_build/input.pm @@ -108,6 +108,7 @@ sub check_module($$$) my $sane_subsystem = lc($mod->{SUBSYSTEM}); $sane_subsystem =~ s/^lib//; $mod->{INSTALLDIR} = "MODULESDIR/$sane_subsystem"; + push (@{$mod->{PRIVATE_DEPENDENCIES}}, $mod->{SUBSYSTEM}); } if (grep(/INTEGRATED/, @{$mod->{OUTPUT_TYPE}})) { push (@{$INPUT->{$mod->{SUBSYSTEM}}{INIT_FUNCTIONS}}, $mod->{INIT_FUNCTION}) if defined($mod->{INIT_FUNCTION}); diff --git a/source4/build/smb_build/makefile.pm b/source4/build/smb_build/makefile.pm index 3b43dfb0b7..d9b5ac4d78 100644 --- a/source4/build/smb_build/makefile.pm +++ b/source4/build/smb_build/makefile.pm @@ -217,6 +217,8 @@ HOSTLD_FLAGS=$self->{config}->{LDFLAGS} XSLTPROC=$self->{config}->{XSLTPROC} +LIB_PATH_VAR=$self->{config}->{LIB_PATH_VAR} + LEX=$self->{config}->{LEX} YACC=$self->{config}->{YACC} YAPP=$self->{config}->{YAPP} @@ -567,7 +569,16 @@ sub PkgConfig($$$) if (defined($ctx->{PUBLIC_DEPENDENCIES})) { foreach (@{$ctx->{PUBLIC_DEPENDENCIES}}) { next if ($other->{$_}->{ENABLE} eq "NO"); - if ($other->{$_}->{TYPE} eq "LIBRARY") { + if ($other->{$_}->{TYPE} eq "EXT_LIB") { + my $e = $other->{$_}; + + my $ldflags = join(" ", @{$e->{LDFLAGS}}); + $ldflags .= " " unless $ldflags eq ""; + my $libs = join(" ", @{$e->{LIBS}}); + $libs .= " " unless $libs eq ""; + + $pubs .= $ldflags.$libs; + } elsif ($other->{$_}->{TYPE} eq "LIBRARY") { s/^LIB//g; $_ = lc($_); @@ -584,7 +595,16 @@ sub PkgConfig($$$) if (defined($ctx->{PRIVATE_DEPENDENCIES})) { foreach (@{$ctx->{PRIVATE_DEPENDENCIES}}) { next if ($other->{$_}->{ENABLE} eq "NO"); - if ($other->{$_}->{TYPE} eq "LIBRARY") { + if ($other->{$_}->{TYPE} eq "EXT_LIB") { + my $e = $other->{$_}; + + my $ldflags = join(" ", @{$e->{LDFLAGS}}); + $ldflags .= " " unless $ldflags eq ""; + my $libs = join(" ", @{$e->{LIBS}}); + $libs .= " " unless $libs eq ""; + + $privlibs .= $ldflags.$libs; + } elsif ($other->{$_}->{TYPE} eq "LIBRARY") { s/^LIB//g; $_ = lc($_); diff --git a/source4/build/tests/summary.c b/source4/build/tests/summary.c index 6fbe46b87b..95fa1cbae9 100644 --- a/source4/build/tests/summary.c +++ b/source4/build/tests/summary.c @@ -4,7 +4,7 @@ void exit(int); main() { -#if !(defined(HAVE_IFACE_IFCONF) || defined(HAVE_IFACE_IFREQ) || defined(HAVE_IFACE_AIX)) +#if !(defined(HAVE_IFACE_GETIFADDRS) || defined(HAVE_IFACE_IFCONF) || defined(HAVE_IFACE_IFREQ) || defined(HAVE_IFACE_AIX)) printf("WARNING: No automated network interface determination\n"); #endif |