summaryrefslogtreecommitdiff
path: root/source4/build/smb_build/output.pm
diff options
context:
space:
mode:
Diffstat (limited to 'source4/build/smb_build/output.pm')
-rw-r--r--source4/build/smb_build/output.pm9
1 files changed, 7 insertions, 2 deletions
diff --git a/source4/build/smb_build/output.pm b/source4/build/smb_build/output.pm
index 2fa8e0207a..6b3753aa9f 100644
--- a/source4/build/smb_build/output.pm
+++ b/source4/build/smb_build/output.pm
@@ -92,9 +92,9 @@ sub generate_binary($)
$bin->{BINARY} = $bin->{NAME};
}
-sub create_output($)
+sub create_output($$)
{
- my $depend = shift;
+ my ($depend, $config) = @_;
my $part;
foreach $part (values %{$depend}) {
@@ -111,6 +111,11 @@ sub create_output($)
$part->{OUTPUT_TYPE} = "OBJLIST";
}
+ if ($part->{DEFAULT_VISIBILITY} ne "default" and
+ $config->{visibility_attribute} eq "yes") {
+ $part->{EXTRA_CFLAGS} .= " -fvisibility=$part->{DEFAULT_VISIBILITY}";
+ }
+
generate_binary($part) if $part->{OUTPUT_TYPE} eq "BINARY";
generate_mergedobj($part) if $part->{OUTPUT_TYPE} eq "MERGEDOBJ";
generate_objlist($part) if $part->{OUTPUT_TYPE} eq "OBJLIST";