From 0adc9b615f118ebb78f5f2edfe0c1c0e41270d57 Mon Sep 17 00:00:00 2001 From: Luboš Luňák Date: Mon, 10 Feb 2020 10:31:26 +0100 Subject: GBUILD_TRACE, support for finding out where the build time is spent MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit See instructions in solenv/gbuild/Trace.mk . This generates a file than can be viewed e.g. in the Chromium tracing view. Change-Id: I5f90647c58ca729375525b6daed2d4918adc8188 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88754 Tested-by: Jenkins Reviewed-by: Luboš Luňák --- sysui/CustomTarget_infoplist.mk | 4 ++++ sysui/CustomTarget_share.mk | 16 ++++++++++++++++ 2 files changed, 20 insertions(+) (limited to 'sysui') diff --git a/sysui/CustomTarget_infoplist.mk b/sysui/CustomTarget_infoplist.mk index c98b8679b261..98f5f1c427b9 100644 --- a/sysui/CustomTarget_infoplist.mk +++ b/sysui/CustomTarget_infoplist.mk @@ -23,7 +23,9 @@ $(eval $(call gb_CustomTarget_register_targets,sysui/infoplist,\ $(info_WORKDIR)/PkgInfo: $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),ECH,1) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),ECH) echo "APPLLIBO" > $@ + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),ECH) $(info_WORKDIR)/Info.plist: $(info_BUILDDIR)/Info.plist cp $< $@ @@ -32,8 +34,10 @@ $(info_WORKDIR)/InfoPlist_%/InfoPlist.strings: \ $(info_WORKDIR)/Info.plist $(info_WORKDIR)/documents.ulf mkdir -p $(dir $@) $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),PRL,1) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),PRL) $(PERL) -w $(info_SRCDIR)/gen_strings.pl -l $* -p $^ | \ iconv -f UTF-8 -t UTF-16 >$@ + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),PRL) $(eval $(call gb_CustomTarget_ulfex_rule,\ $(info_WORKDIR)/documents.ulf,\ diff --git a/sysui/CustomTarget_share.mk b/sysui/CustomTarget_share.mk index b2d27724f906..cd06c141e096 100644 --- a/sysui/CustomTarget_share.mk +++ b/sysui/CustomTarget_share.mk @@ -135,7 +135,9 @@ $(eval $(call gb_CustomTarget_register_targets,sysui/share,\ $(share_WORKDIR)/%/openoffice.org.xml: $(share_WORKDIR)/documents.ulf $(MIMEDESKTOPS) $(share_SRCDIR)/share/create_mime_xml.pl $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),PRL,1) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),PRL) $(PERL) $(share_SRCDIR)/share/create_mime_xml.pl $< > $@ + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),PRL) $(share_WORKDIR)/%/openoffice.keys: \ @@ -143,27 +145,34 @@ $(share_WORKDIR)/%/openoffice.keys: \ $(share_TRANSLATE) $(share_WORKDIR)/documents.ulf mkdir -p $(dir $@) $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),PRL,1) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),PRL) $(PERL) $(share_SRCDIR)/share/brand.pl -p $* -u $(UNIXFILENAME.$*) \ --iconprefix $(UNIXFILENAME.$*)- $^ $(share_WORKDIR)/$* $(PERL) $(share_TRANSLATE) -p $* -d $(share_WORKDIR)/$* \ --ext "keys" --key "description" $(share_WORKDIR)/documents.ulf cat $(MIMEKEYS) > $@ + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),PRL) $(share_WORKDIR)/%/openoffice.mime: $(share_SRCDIR)/mimetypes/openoffice.mime mkdir -p $(dir $@) $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),CAT,1) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),CAT) cat $< | tr -d "\015" > $@ + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),CAT) $(share_WORKDIR)/%/openoffice.sh: $(share_SRCDIR)/share/openoffice.sh mkdir -p $(dir $@) $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),CAT,1) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),CAT) cat $< | tr -d "\015" | sed -e "s/%PREFIX/$(UNIXFILENAME.$*)/g" > $@ + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),CAT) $(share_WORKDIR)/%/create_tree.sh: $(share_SRCDIR)/share/create_tree.sh \ $(share_WORKDIR)/%/openoffice.org.xml $(share_WORKDIR)/%/openoffice.applications $(share_WORKDIR)/%/openoffice.mime \ $(share_WORKDIR)/%/openoffice.keys $(share_WORKDIR)/%/launcherlist mkdir -p $(dir $@) $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),CAT,1) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),CAT) echo "#!/bin/sh" > $@ echo "PREFIX=$(UNIXFILENAME.$*)" >> $@ echo "ICON_PREFIX=$(UNIXFILENAME.$*)" >> $@ @@ -172,6 +181,7 @@ $(share_WORKDIR)/%/create_tree.sh: $(share_SRCDIR)/share/create_tree.sh \ echo "PRODUCTVERSION=$(PRODUCTVERSION)" >> $@ cat $< >> $@ chmod 774 $@ + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),CAT) # Generate gobject-introspection files # These are *not* packaged in rpms because there's no good place to put them @@ -202,13 +212,17 @@ endif $(share_WORKDIR)/%/launcherlist: $(LAUNCHERS) mkdir -p $(dir $@) $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),ECH,1) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),ECH) echo "$(addsuffix .desktop,$(LAUNCHERLIST))" > $@ + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),ECH) $(share_WORKDIR)/%/openoffice.applications: $(share_SRCDIR)/mimetypes/openoffice.applications mkdir -p $(dir $@) $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),CAT,1) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),CAT) cat $< | tr -d "\015" | sed -e "s/OFFICENAME/$(UNIXFILENAME.$*)/" -e "s/%PRODUCTNAME/$(PRODUCTNAME.$*) $(PRODUCTVERSION.$*)/" > $@ + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),CAT) # these .desktop files are written by brand.pl below # need to have a rule for these because they are targets in Package_share @@ -224,6 +238,7 @@ $(share_WORKDIR)/%/build.flag: $(share_SRCDIR)/share/brand.pl $(LAUNCHERS) \ $(share_TRANSLATE) $(addprefix $(share_WORKDIR)/,$(ULFS)) mkdir -p $(dir $@) $(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),PRL,1) + $(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),PRL) $(PERL) $(share_SRCDIR)/share/brand.pl -p '$${PRODUCTNAME} $${PRODUCTVERSION}' -u $(UNIXFILENAME.$*) \ $(brand_URIPARAM) \ --iconprefix '$${UNIXBASISROOTNAME}-' $^ $(share_WORKDIR)/$* @@ -234,6 +249,7 @@ $(share_WORKDIR)/%/build.flag: $(share_SRCDIR)/share/brand.pl $(LAUNCHERS) \ $(PERL) $(share_TRANSLATE) -p $(PRODUCTNAME.$*)$(PRODUCTVERSION) -d $(share_WORKDIR)/$* \ --ext "desktop" --key "UnityQuickList" $(share_WORKDIR)/launcher_unityquicklist.ulf touch $@ + $(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),PRL) $(eval $(call gb_CustomTarget_ulfex_rule,\ $(share_WORKDIR)/%.ulf,\ -- cgit