[Libreoffice-commits] core.git: 2 commits - bin/module-deps.pl solenv/gbuild vcl/generic
Michael Meeks
michael.meeks at collabora.com
Mon Sep 7 06:41:42 PDT 2015
bin/module-deps.pl | 54 +++++++++++++++++++++----
solenv/gbuild/extensions/pre_MergedLibsList.mk | 16 ++++++-
vcl/generic/glyphs/gcach_ftyp.cxx | 1
3 files changed, 59 insertions(+), 12 deletions(-)
New commits:
commit 1502e969f5e79e8c9594f617626e999c971b7ef2
Author: Michael Meeks <michael.meeks at collabora.com>
Date: Fri Sep 4 18:24:08 2015 +0100
module-deps now distinguishes merged-libs in its output.
Change-Id: Icc3a965e59f5b2d4e23e0e5a4d0400b6b175c9c1
Reviewed-on: https://gerrit.libreoffice.org/18346
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
diff --git a/bin/module-deps.pl b/bin/module-deps.pl
index 08126d0..8134dff 100755
--- a/bin/module-deps.pl
+++ b/bin/module-deps.pl
@@ -15,6 +15,7 @@ my $to_file;
my $output_file;
my $preserve_libs = 0;
my $toposort = 0;
+my %merged_libs;
sub logit($)
{
@@ -46,7 +47,11 @@ sub read_deps()
logit($line);
print $to $line if defined $to_file;
chomp ($line);
- if ($line =~ m/^LibraryDep:\s+(\S+) links against (.*)$/) {
+ if ($line =~ m/^MergeLibContents:\s+(\S+.*)\s*$/) {
+ for my $dep (split / /, $1) {
+ $merged_libs{$dep} = 1 if $dep ne '';
+ }
+ } elsif ($line =~ m/^LibraryDep:\s+(\S+) links against (.*)$/) {
# if ($line =~ m/^LibraryDep:\s+(\S+)\s+links against/) {
$deps{$1} = ' ' if (!defined $deps{$1});
$deps{$1} = $deps{$1} . ' ' . $2;
@@ -95,7 +100,7 @@ sub clean_tree($)
my %result;
$result{type} = $type;
$result{target} = $target;
- $result{generation} = 0;
+ $result{merged} = 0;
my @clean_needs;
for my $need (@needs) {
push @clean_needs, clean_name($need);
@@ -215,10 +220,13 @@ sub collapse_lib_to_module($)
my %digraph;
my $l2m = create_lib_module_map();
my %unknown_libs;
- for my $name (sort keys %{$tree}) {
- my $result = $tree->{$name};
- $unknown_libs{$name} = 1 && next if (!grep {/$name/} keys $l2m);
- $name = $l2m->{$name};
+ for my $lib_name (sort keys %{$tree}) {
+ my $result = $tree->{$lib_name};
+ $unknown_libs{$lib_name} = 1 && next if (!grep {/$lib_name/} keys $l2m);
+
+ # new collapsed name.
+ my $name = $l2m->{$lib_name};
+
# sal has no dependencies, take care of it
# otherwise it doesn't have target key
if (!@{$result->{deps}}) {
@@ -226,6 +234,7 @@ sub collapse_lib_to_module($)
my @empty;
$digraph{$name}{deps} = \@empty;
$digraph{$name}{target} = $result->{target};
+ $digraph{$name}{merged} = $result->{merged};
}
}
for my $dep (@{$result->{deps}}) {
@@ -248,6 +257,7 @@ sub collapse_lib_to_module($)
push @deps, $dep;
$digraph{$name}{deps} = \@deps;
$digraph{$name}{target} = $result->{target};
+ $digraph{$name}{merged} = $result->{merged};
}
}
}
@@ -282,6 +292,17 @@ sub prune_leaves($)
return optimize_tree($tree);
}
+sub annotate_mergelibs($)
+{
+ my $tree = shift;
+ print STDERR "annotating mergelibs";
+ for my $name (keys %{$tree}) {
+ if (defined $merged_libs{$name}) {
+ $tree->{$name}->{merged} = 1;
+ print STDERR "mark $name as merged\n";
+ }
+ }
+}
sub dump_graphviz($)
{
@@ -290,11 +311,27 @@ sub dump_graphviz($)
open($to, ">$output_file") if defined($output_file);
print $to <<END;
digraph LibreOffice {
-node [shape="Mrecord", color="#BBBBBB"]
-node [fontname=Verdana, color="#BBBBBB", fontsize=10, height=0.02, width=0.02]
edge [color="#31CEF0", len=0.4]
edge [fontname=Arial, fontsize=10, fontcolor="#31CEF0"]
END
+;
+
+ my @merged_names;
+ my @normal_names;
+ for my $name (sort keys %{$tree}) {
+ if ($tree->{$name}->{merged}) {
+ push @merged_names, $name;
+ } else {
+ push @normal_names, $name;
+ }
+ }
+ print $to "node [fontname=Verdana, fontsize=10, height=0.02, width=0.02,".
+ 'shape=Mrecord,color="#BBBBBB"' .
+ "];" . join(';', @normal_names) . "\n";
+ print $to "node [fontname=Verdana, fontsize=10, height=0.02, width=0.02,".
+ 'shape=box,style=filled,color="#CCCCCC"' .
+ "];" . join(';', @merged_names) . "\n";
+
for my $name (sort keys %{$tree}) {
my $result = $tree->{$name};
logit("minimising deps for $result->{target}\n");
@@ -386,6 +423,7 @@ sub main()
my $tree = clean_tree($deps);
filter_targets($tree);
optimize_tree($tree);
+ annotate_mergelibs($tree);
if (!$preserve_libs && !defined($ENV{PRESERVE_LIBS})) {
$tree = collapse_lib_to_module($tree);
}
diff --git a/solenv/gbuild/extensions/pre_MergedLibsList.mk b/solenv/gbuild/extensions/pre_MergedLibsList.mk
index 1ca047f..b9b8d75 100644
--- a/solenv/gbuild/extensions/pre_MergedLibsList.mk
+++ b/solenv/gbuild/extensions/pre_MergedLibsList.mk
@@ -8,10 +8,8 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-ifneq ($(MERGELIBS),)
-
# we link all object files from these libraries into one, merged library
-gb_MERGEDLIBS := \
+MERGE_LIBRARY_LIST := \
avmedia \
$(if $(filter $(OS),ANDROID),,basebmp) \
basegfx \
@@ -62,6 +60,18 @@ gb_MERGEDLIBS := \
xo \
xstor \
+
+# allow module-deps.pl to color based on this.
+ifneq ($(ENABLE_PRINT_DEPS),)
+
+$(info MergeLibContents: $(MERGE_LIBRARY_LIST))
+
+endif
+
+ifneq ($(MERGELIBS),)
+
+gb_MERGEDLIBS := $(MERGE_LIBRARY_LIST)
+
endif
# vim: set noet sw=4 ts=4:
commit 984df756592c4cf2f784fda1d0cbdf8e5c7ef64c
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Mon Sep 7 15:40:06 2015 +0200
clang-analyzer-deadcode.DeadStores
...ever since its inception with 5624be5a3520a16d57724064e16df3722d728010
"CWS-TOOLING: integrate CWS graphite01"
Change-Id: Ib530362efe1b52f43a2a25e531cce9326001044d
diff --git a/vcl/generic/glyphs/gcach_ftyp.cxx b/vcl/generic/glyphs/gcach_ftyp.cxx
index 54a7aa6..1d1e1ac 100644
--- a/vcl/generic/glyphs/gcach_ftyp.cxx
+++ b/vcl/generic/glyphs/gcach_ftyp.cxx
@@ -1041,7 +1041,6 @@ bool ServerFont::GetGlyphBitmap1( sal_GlyphId aGlyphId, RawBitmap& rRawBitmap )
if( (cbox.xMax - cbox.xMin) == 0 || (cbox.yMax - cbox.yMin == 0) )
{
- nAngle = 0;
memset(&rRawBitmap, 0, sizeof rRawBitmap);
FT_Done_Glyph( pGlyphFT );
return true;
More information about the Libreoffice-commits
mailing list