* [PATCH 1/7] perf doc: Fix perfman.info build
2021-07-15 1:33 [PATCH 0/7] Tidy perf Documentation build Ian Rogers
@ 2021-07-15 1:33 ` Ian Rogers
2021-07-15 1:33 ` [PATCH 2/7] perf doc: Fix doc.dep Ian Rogers
` (6 subsequent siblings)
7 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2021-07-15 1:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
linux-perf-users, linux-kernel
Cc: eranian, Ian Rogers
Before this change 'make perfman.info' fails as cat-texi.perl is
missing. It also fails as the makeinfo output isn't written into the
appropriate file. Add cat-texi.perl from git. Add missing output file
flag for makeinfo.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/Documentation/Makefile | 2 +-
tools/perf/Documentation/cat-texi.perl | 46 ++++++++++++++++++++++++++
2 files changed, 47 insertions(+), 1 deletion(-)
create mode 100755 tools/perf/Documentation/cat-texi.perl
diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
index 6e54979c2124..859ec1496716 100644
--- a/tools/perf/Documentation/Makefile
+++ b/tools/perf/Documentation/Makefile
@@ -331,7 +331,7 @@ $(OUTPUT)perfman.texi: $(MAN_XML) cat-texi.perl
mv $@+ $@
$(OUTPUT)perfman.info: $(OUTPUT)perfman.texi
- $(QUIET_MAKEINFO)$(MAKEINFO) --no-split --no-validate $*.texi
+ $(QUIET_MAKEINFO)$(MAKEINFO) --no-split --no-validate -o $@ $*.texi
$(patsubst %.txt,%.texi,$(MAN_TXT)): %.texi : %.xml
$(QUIET_DB2TEXI)$(RM) $@+ $@ && \
diff --git a/tools/perf/Documentation/cat-texi.perl b/tools/perf/Documentation/cat-texi.perl
new file mode 100755
index 000000000000..14d2f8341517
--- /dev/null
+++ b/tools/perf/Documentation/cat-texi.perl
@@ -0,0 +1,46 @@
+#!/usr/bin/perl -w
+
+use strict;
+use warnings;
+
+my @menu = ();
+my $output = $ARGV[0];
+
+open my $tmp, '>', "$output.tmp";
+
+while (<STDIN>) {
+ next if (/^\\input texinfo/../\@node Top/);
+ next if (/^\@bye/ || /^\.ft/);
+ if (s/^\@top (.*)/\@node $1,,,Top/) {
+ push @menu, $1;
+ }
+ s/\(\@pxref\{\[(URLS|REMOTES)\]}\)//;
+ s/\@anchor\{[^{}]*\}//g;
+ print $tmp $_;
+}
+close $tmp;
+
+print '\input texinfo
+@setfilename gitman.info
+@documentencoding UTF-8
+@dircategory Development
+@direntry
+* Git Man Pages: (gitman). Manual pages for Git revision control system
+@end direntry
+@node Top,,, (dir)
+@top Git Manual Pages
+@documentlanguage en
+@menu
+';
+
+for (@menu) {
+ print "* ${_}::\n";
+}
+print "\@end menu\n";
+open $tmp, '<', "$output.tmp";
+while (<$tmp>) {
+ print;
+}
+close $tmp;
+print "\@bye\n";
+unlink "$output.tmp";
--
2.32.0.402.g57bb445576-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 2/7] perf doc: Fix doc.dep
2021-07-15 1:33 [PATCH 0/7] Tidy perf Documentation build Ian Rogers
2021-07-15 1:33 ` [PATCH 1/7] perf doc: Fix perfman.info build Ian Rogers
@ 2021-07-15 1:33 ` Ian Rogers
2021-07-15 1:33 ` [PATCH 3/7] perf doc: Remove references to user-manual Ian Rogers
` (5 subsequent siblings)
7 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2021-07-15 1:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
linux-perf-users, linux-kernel
Cc: eranian, Ian Rogers
The doc.dep dependencies for the Makefile fail to build as
build-docdep.perl is missing. Add this file from git.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/Documentation/build-docdep.perl | 46 ++++++++++++++++++++++
1 file changed, 46 insertions(+)
create mode 100755 tools/perf/Documentation/build-docdep.perl
diff --git a/tools/perf/Documentation/build-docdep.perl b/tools/perf/Documentation/build-docdep.perl
new file mode 100755
index 000000000000..ba4205e0302a
--- /dev/null
+++ b/tools/perf/Documentation/build-docdep.perl
@@ -0,0 +1,46 @@
+#!/usr/bin/perl
+
+my %include = ();
+my %included = ();
+
+for my $text (<*.txt>) {
+ open I, '<', $text || die "cannot read: $text";
+ while (<I>) {
+ if (/^include::/) {
+ chomp;
+ s/^include::\s*//;
+ s/\[\]//;
+ $include{$text}{$_} = 1;
+ $included{$_} = 1;
+ }
+ }
+ close I;
+}
+
+# Do we care about chained includes???
+my $changed = 1;
+while ($changed) {
+ $changed = 0;
+ while (my ($text, $included) = each %include) {
+ for my $i (keys %$included) {
+ # $text has include::$i; if $i includes $j
+ # $text indirectly includes $j.
+ if (exists $include{$i}) {
+ for my $j (keys %{$include{$i}}) {
+ if (!exists $include{$text}{$j}) {
+ $include{$text}{$j} = 1;
+ $included{$j} = 1;
+ $changed = 1;
+ }
+ }
+ }
+ }
+ }
+}
+
+while (my ($text, $included) = each %include) {
+ if (! exists $included{$text} &&
+ (my $base = $text) =~ s/\.txt$//) {
+ print "$base.html $base.xml : ", join(" ", keys %$included), "\n";
+ }
+}
--
2.32.0.402.g57bb445576-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 3/7] perf doc: Remove references to user-manual
2021-07-15 1:33 [PATCH 0/7] Tidy perf Documentation build Ian Rogers
2021-07-15 1:33 ` [PATCH 1/7] perf doc: Fix perfman.info build Ian Rogers
2021-07-15 1:33 ` [PATCH 2/7] perf doc: Fix doc.dep Ian Rogers
@ 2021-07-15 1:33 ` Ian Rogers
2021-07-15 1:33 ` [PATCH 4/7] perf doc: Add info pages to all target Ian Rogers
` (4 subsequent siblings)
7 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2021-07-15 1:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
linux-perf-users, linux-kernel
Cc: eranian, Ian Rogers
Perf doesn't have a user-manual.txt, but git does and this explains why
there are references here. Having these references breaks 'make info' as
user-manual.info can't be created given the missing dependency. Remove
all references to user-manual so that 'make info' can succeed.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/Documentation/Makefile | 25 -------------------------
1 file changed, 25 deletions(-)
diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
index 859ec1496716..03300c151858 100644
--- a/tools/perf/Documentation/Makefile
+++ b/tools/perf/Documentation/Makefile
@@ -186,8 +186,6 @@ man7: $(DOC_MAN7)
info: $(OUTPUT)perf.info $(OUTPUT)perfman.info
-pdf: $(OUTPUT)user-manual.pdf
-
install: install-man
check-man-tools:
@@ -225,11 +223,6 @@ install-info: info
echo "No directory found in $(DESTDIR)$(infodir)" >&2 ; \
fi
-install-pdf: pdf
- $(call QUIET_INSTALL, Documentation-pdf) \
- $(INSTALL) -d -m 755 $(DESTDIR)$(pdfdir); \
- $(INSTALL) -m 644 $(OUTPUT)user-manual.pdf $(DESTDIR)$(pdfdir)
-
#install-html: html
# '$(SHELL_PATH_SQ)' ./install-webdoc.sh $(DESTDIR)$(htmldir)
@@ -304,24 +297,6 @@ $(OUTPUT)%.xml : %.txt
XSLT = docbook.xsl
XSLTOPTS = --xinclude --stringparam html.stylesheet docbook-xsl.css
-$(OUTPUT)user-manual.html: $(OUTPUT)user-manual.xml
- $(QUIET_XSLTPROC)xsltproc $(XSLTOPTS) -o $@ $(XSLT) $<
-
-$(OUTPUT)perf.info: $(OUTPUT)user-manual.texi
- $(QUIET_MAKEINFO)$(MAKEINFO) --no-split -o $@ $(OUTPUT)user-manual.texi
-
-$(OUTPUT)user-manual.texi: $(OUTPUT)user-manual.xml
- $(QUIET_DB2TEXI)$(RM) $@+ $@ && \
- $(DOCBOOK2X_TEXI) $(OUTPUT)user-manual.xml --encoding=UTF-8 --to-stdout >$@++ && \
- $(PERL_PATH) fix-texi.perl <$@++ >$@+ && \
- rm $@++ && \
- mv $@+ $@
-
-$(OUTPUT)user-manual.pdf: $(OUTPUT)user-manual.xml
- $(QUIET_DBLATEX)$(RM) $@+ $@ && \
- $(DBLATEX) -o $@+ -p /etc/asciidoc/dblatex/asciidoc-dblatex.xsl -s /etc/asciidoc/dblatex/asciidoc-dblatex.sty $< && \
- mv $@+ $@
-
$(OUTPUT)perfman.texi: $(MAN_XML) cat-texi.perl
$(QUIET_DB2TEXI)$(RM) $@+ $@ && \
($(foreach xml,$(MAN_XML),$(DOCBOOK2X_TEXI) --encoding=UTF-8 \
--
2.32.0.402.g57bb445576-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 4/7] perf doc: Add info pages to all target.
2021-07-15 1:33 [PATCH 0/7] Tidy perf Documentation build Ian Rogers
` (2 preceding siblings ...)
2021-07-15 1:33 ` [PATCH 3/7] perf doc: Remove references to user-manual Ian Rogers
@ 2021-07-15 1:33 ` Ian Rogers
2021-07-23 18:27 ` Arnaldo Carvalho de Melo
2021-07-15 1:33 ` [PATCH 5/7] perf doc: Remove cmd-list.perl references Ian Rogers
` (3 subsequent siblings)
7 siblings, 1 reply; 14+ messages in thread
From: Ian Rogers @ 2021-07-15 1:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
linux-perf-users, linux-kernel
Cc: eranian, Ian Rogers
Enabled to ensure that info pages build.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/Documentation/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
index 03300c151858..85a796c112a2 100644
--- a/tools/perf/Documentation/Makefile
+++ b/tools/perf/Documentation/Makefile
@@ -173,7 +173,7 @@ ifneq ($(V),1)
endif
endif
-all: html man
+all: html man info
html: $(DOC_HTML)
--
2.32.0.402.g57bb445576-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH 4/7] perf doc: Add info pages to all target.
2021-07-15 1:33 ` [PATCH 4/7] perf doc: Add info pages to all target Ian Rogers
@ 2021-07-23 18:27 ` Arnaldo Carvalho de Melo
2021-07-23 18:53 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 14+ messages in thread
From: Arnaldo Carvalho de Melo @ 2021-07-23 18:27 UTC (permalink / raw)
To: Ian Rogers
Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, linux-perf-users, linux-kernel, eranian
Em Wed, Jul 14, 2021 at 06:33:40PM -0700, Ian Rogers escreveu:
> Enabled to ensure that info pages build.
How did you test this? I tried installing texinfo, that is where
makeinfo belongs:
⬢[acme@toolbox perf]$ rpm -qf /usr/bin/makeinfo
texinfo-6.7-10.fc34.x86_64
⬢[acme@toolbox perf]$ rpm -q texinfo
texinfo-6.7-10.fc34.x86_64
⬢[acme@toolbox perf]$
And then:
⬢[acme@toolbox perf]$ make -C tools/perf O=/tmp/build/perf install-doc
make: Entering directory '/var/home/acme/git/perf/tools/perf'
BUILD: Doing 'make -j24' parallel build
INSTALL Documentation-man
make: Leaving directory '/var/home/acme/git/perf/tools/perf'
⬢[acme@toolbox perf]$
⬢[acme@toolbox perf]$ find ~/share/ -name "*.info"
⬢[acme@toolbox perf]$ find ~/share/ -name "*.1"
/var/home/acme/share/man/man1/perf-annotate.1
/var/home/acme/share/man/man1/perf-archive.1
/var/home/acme/share/man/man1/perf-bench.1
/var/home/acme/share/man/man1/perf-buildid-cache.1
/var/home/acme/share/man/man1/perf-buildid-list.1
/var/home/acme/share/man/man1/perf-c2c.1
/var/home/acme/share/man/man1/perf-config.1
/var/home/acme/share/man/man1/perf-daemon.1
/var/home/acme/share/man/man1/perf-data.1
/var/home/acme/share/man/man1/perf-diff.1
/var/home/acme/share/man/man1/perf-dlfilter.1
/var/home/acme/share/man/man1/perf-evlist.1
/var/home/acme/share/man/man1/perf-ftrace.1
/var/home/acme/share/man/man1/perf-help.1
/var/home/acme/share/man/man1/perf-inject.1
/var/home/acme/share/man/man1/perf-intel-pt.1
/var/home/acme/share/man/man1/perf-iostat.1
/var/home/acme/share/man/man1/perf-kallsyms.1
/var/home/acme/share/man/man1/perf-kmem.1
/var/home/acme/share/man/man1/perf-kvm.1
/var/home/acme/share/man/man1/perf-list.1
/var/home/acme/share/man/man1/perf-lock.1
/var/home/acme/share/man/man1/perf-mem.1
/var/home/acme/share/man/man1/perf-probe.1
/var/home/acme/share/man/man1/perf-record.1
/var/home/acme/share/man/man1/perf-report.1
/var/home/acme/share/man/man1/perf-sched.1
/var/home/acme/share/man/man1/perf-script-perl.1
/var/home/acme/share/man/man1/perf-script-python.1
/var/home/acme/share/man/man1/perf-script.1
/var/home/acme/share/man/man1/perf-stat.1
/var/home/acme/share/man/man1/perf-test.1
/var/home/acme/share/man/man1/perf-timechart.1
/var/home/acme/share/man/man1/perf-top.1
/var/home/acme/share/man/man1/perf-trace.1
/var/home/acme/share/man/man1/perf-version.1
/var/home/acme/share/man/man1/perf.1
⬢[acme@toolbox perf]$
⬢[acme@toolbox perf]$ ls -la ~/share/info
ls: cannot access '/var/home/acme/share/info': No such file or directory
- Arnaldo
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 4/7] perf doc: Add info pages to all target.
2021-07-23 18:27 ` Arnaldo Carvalho de Melo
@ 2021-07-23 18:53 ` Arnaldo Carvalho de Melo
2021-07-23 18:56 ` Arnaldo Carvalho de Melo
0 siblings, 1 reply; 14+ messages in thread
From: Arnaldo Carvalho de Melo @ 2021-07-23 18:53 UTC (permalink / raw)
To: Ian Rogers
Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, linux-perf-users, linux-kernel, eranian
Em Fri, Jul 23, 2021 at 03:27:57PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Wed, Jul 14, 2021 at 06:33:40PM -0700, Ian Rogers escreveu:
> > Enabled to ensure that info pages build.
>
> How did you test this? I tried installing texinfo, that is where
> makeinfo belongs:
>
> ⬢[acme@toolbox perf]$ rpm -qf /usr/bin/makeinfo
> texinfo-6.7-10.fc34.x86_64
> ⬢[acme@toolbox perf]$ rpm -q texinfo
> texinfo-6.7-10.fc34.x86_64
> ⬢[acme@toolbox perf]$
>
> And then:
>
> ⬢[acme@toolbox perf]$ make -C tools/perf O=/tmp/build/perf install-doc
> make: Entering directory '/var/home/acme/git/perf/tools/perf'
> BUILD: Doing 'make -j24' parallel build
> INSTALL Documentation-man
> make: Leaving directory '/var/home/acme/git/perf/tools/perf'
> ⬢[acme@toolbox perf]$
Also:
⬢[acme@toolbox perf]$ make -C tools/perf O=/tmp/build/perf install-info
make: Entering directory '/var/home/acme/git/perf/tools/perf'
BUILD: Doing 'make -j24' parallel build
make[3]: *** No rule to make target '/tmp/build/perf/perf.info', needed by 'info'. Stop.
make[2]: *** [Makefile.perf:1009: install-info] Error 2
make[1]: *** [Makefile.perf:238: sub-make] Error 2
make: *** [Makefile:113: install-info] Error 2
make: Leaving directory '/var/home/acme/git/perf/tools/perf'
⬢[acme@toolbox perf]$ git diff
⬢[acme@toolbox perf]$ make -C tools/perf install-info
make: Entering directory '/var/home/acme/git/perf/tools/perf'
BUILD: Doing 'make -j24' parallel build
Auto-detecting system features:
... dwarf: [ on ]
... dwarf_getlocations: [ on ]
... glibc: [ on ]
... libbfd: [ on ]
... libbfd-buildid: [ on ]
... libcap: [ on ]
... libelf: [ on ]
... libnuma: [ on ]
... numa_num_possible_cpus: [ on ]
... libperl: [ on ]
... libpython: [ on ]
... libcrypto: [ on ]
... libunwind: [ on ]
... libdw-dwarf-unwind: [ on ]
... zlib: [ on ]
... lzma: [ on ]
... get_cpuid: [ on ]
... bpf: [ on ]
... libaio: [ on ]
... libzstd: [ on ]
... disassembler-four-args: [ on ]
GEN doc.dep
make[3]: *** No rule to make target 'perf.info', needed by 'info'. Stop.
make[2]: *** [Makefile.perf:1009: install-info] Error 2
make[1]: *** [Makefile.perf:238: sub-make] Error 2
make: *** [Makefile:113: install-info] Error 2
make: Leaving directory '/var/home/acme/git/perf/tools/perf'
⬢[acme@toolbox perf]$
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 4/7] perf doc: Add info pages to all target.
2021-07-23 18:53 ` Arnaldo Carvalho de Melo
@ 2021-07-23 18:56 ` Arnaldo Carvalho de Melo
2021-07-23 21:03 ` Ian Rogers
0 siblings, 1 reply; 14+ messages in thread
From: Arnaldo Carvalho de Melo @ 2021-07-23 18:56 UTC (permalink / raw)
To: Ian Rogers
Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, linux-perf-users, linux-kernel, eranian
Em Fri, Jul 23, 2021 at 03:53:14PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Fri, Jul 23, 2021 at 03:27:57PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Wed, Jul 14, 2021 at 06:33:40PM -0700, Ian Rogers escreveu:
> > > Enabled to ensure that info pages build.
> >
> > How did you test this? I tried installing texinfo, that is where
> > makeinfo belongs:
> >
> > ⬢[acme@toolbox perf]$ rpm -qf /usr/bin/makeinfo
> > texinfo-6.7-10.fc34.x86_64
> > ⬢[acme@toolbox perf]$ rpm -q texinfo
> > texinfo-6.7-10.fc34.x86_64
> > ⬢[acme@toolbox perf]$
> >
> > And then:
> >
> > ⬢[acme@toolbox perf]$ make -C tools/perf O=/tmp/build/perf install-doc
> > make: Entering directory '/var/home/acme/git/perf/tools/perf'
> > BUILD: Doing 'make -j24' parallel build
> > INSTALL Documentation-man
> > make: Leaving directory '/var/home/acme/git/perf/tools/perf'
> > ⬢[acme@toolbox perf]$
>
> Also:
We get closer if we do:
⬢[acme@toolbox perf]$ make -C tools/perf/Documentation/ install-info
make: Entering directory '/var/home/acme/git/perf/tools/perf/Documentation'
ASCIIDOC perf.xml
DB2TEXI perf.texi
/bin/sh: line 2: docbook2x-texi: command not found
make: *** [Makefile:289: perf.texi] Error 127
make: Leaving directory '/var/home/acme/git/perf/tools/perf/Documentation'
⬢[acme@toolbox perf]$
- Arnaldo
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 4/7] perf doc: Add info pages to all target.
2021-07-23 18:56 ` Arnaldo Carvalho de Melo
@ 2021-07-23 21:03 ` Ian Rogers
2021-07-23 22:28 ` Arnaldo
0 siblings, 1 reply; 14+ messages in thread
From: Ian Rogers @ 2021-07-23 21:03 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, linux-perf-users, linux-kernel, eranian
On Fri, Jul 23, 2021 at 11:56 AM Arnaldo Carvalho de Melo
<acme@kernel.org> wrote:
>
> Em Fri, Jul 23, 2021 at 03:53:14PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Fri, Jul 23, 2021 at 03:27:57PM -0300, Arnaldo Carvalho de Melo escreveu:
> > > Em Wed, Jul 14, 2021 at 06:33:40PM -0700, Ian Rogers escreveu:
> > > > Enabled to ensure that info pages build.
> > >
> > > How did you test this? I tried installing texinfo, that is where
> > > makeinfo belongs:
> > >
> > > ⬢[acme@toolbox perf]$ rpm -qf /usr/bin/makeinfo
> > > texinfo-6.7-10.fc34.x86_64
> > > ⬢[acme@toolbox perf]$ rpm -q texinfo
> > > texinfo-6.7-10.fc34.x86_64
> > > ⬢[acme@toolbox perf]$
> > >
> > > And then:
> > >
> > > ⬢[acme@toolbox perf]$ make -C tools/perf O=/tmp/build/perf install-doc
> > > make: Entering directory '/var/home/acme/git/perf/tools/perf'
> > > BUILD: Doing 'make -j24' parallel build
> > > INSTALL Documentation-man
> > > make: Leaving directory '/var/home/acme/git/perf/tools/perf'
> > > ⬢[acme@toolbox perf]$
> >
> > Also:
>
> We get closer if we do:
>
> ⬢[acme@toolbox perf]$ make -C tools/perf/Documentation/ install-info
> make: Entering directory '/var/home/acme/git/perf/tools/perf/Documentation'
> ASCIIDOC perf.xml
> DB2TEXI perf.texi
> /bin/sh: line 2: docbook2x-texi: command not found
> make: *** [Makefile:289: perf.texi] Error 127
> make: Leaving directory '/var/home/acme/git/perf/tools/perf/Documentation'
> ⬢[acme@toolbox perf]$
Do you need to install docbook2x?
$ dpkg -S /usr/bin/docbook2x-texi
docbook2x: /usr/bin/docbook2x-texi
Thanks,
Ian
> - Arnaldo
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 4/7] perf doc: Add info pages to all target.
2021-07-23 21:03 ` Ian Rogers
@ 2021-07-23 22:28 ` Arnaldo
0 siblings, 0 replies; 14+ messages in thread
From: Arnaldo @ 2021-07-23 22:28 UTC (permalink / raw)
To: Ian Rogers, Arnaldo Carvalho de Melo
Cc: Peter Zijlstra, Ingo Molnar, Mark Rutland, Alexander Shishkin,
Jiri Olsa, Namhyung Kim, linux-perf-users, linux-kernel, eranian
On July 23, 2021 6:03:16 PM GMT-03:00, Ian Rogers <irogers@google.com> wrote:
>On Fri, Jul 23, 2021 at 11:56 AM Arnaldo Carvalho de Melo
><acme@kernel.org> wrote:
>>
>> Em Fri, Jul 23, 2021 at 03:53:14PM -0300, Arnaldo Carvalho de Melo
>escreveu:
>> > Em Fri, Jul 23, 2021 at 03:27:57PM -0300, Arnaldo Carvalho de Melo
>escreveu:
>> > > Em Wed, Jul 14, 2021 at 06:33:40PM -0700, Ian Rogers escreveu:
>> > > > Enabled to ensure that info pages build.
>> > >
>> > > How did you test this? I tried installing texinfo, that is where
>> > > makeinfo belongs:
>> > >
>> > > ⬢[acme@toolbox perf]$ rpm -qf /usr/bin/makeinfo
>> > > texinfo-6.7-10.fc34.x86_64
>> > > ⬢[acme@toolbox perf]$ rpm -q texinfo
>> > > texinfo-6.7-10.fc34.x86_64
>> > > ⬢[acme@toolbox perf]$
>> > >
>> > > And then:
>> > >
>> > > ⬢[acme@toolbox perf]$ make -C tools/perf O=/tmp/build/perf
>install-doc
>> > > make: Entering directory '/var/home/acme/git/perf/tools/perf'
>> > > BUILD: Doing 'make -j24' parallel build
>> > > INSTALL Documentation-man
>> > > make: Leaving directory '/var/home/acme/git/perf/tools/perf'
>> > > ⬢[acme@toolbox perf]$
>> >
>> > Also:
>>
>> We get closer if we do:
>>
>> ⬢[acme@toolbox perf]$ make -C tools/perf/Documentation/ install-info
>> make: Entering directory
>'/var/home/acme/git/perf/tools/perf/Documentation'
>> ASCIIDOC perf.xml
>> DB2TEXI perf.texi
>> /bin/sh: line 2: docbook2x-texi: command not found
>> make: *** [Makefile:289: perf.texi] Error 127
>> make: Leaving directory
>'/var/home/acme/git/perf/tools/perf/Documentation'
>> ⬢[acme@toolbox perf]$
>
>Do you need to install docbook2x?
Sure, but it seems the name of the binaries in the version in fedora are different.
>
>$ dpkg -S /usr/bin/docbook2x-texi
>docbook2x: /usr/bin/docbook2x-texi
>
>Thanks,
>Ian
>
>> - Arnaldo
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH 5/7] perf doc: Remove cmd-list.perl references
2021-07-15 1:33 [PATCH 0/7] Tidy perf Documentation build Ian Rogers
` (3 preceding siblings ...)
2021-07-15 1:33 ` [PATCH 4/7] perf doc: Add info pages to all target Ian Rogers
@ 2021-07-15 1:33 ` Ian Rogers
2021-07-15 1:33 ` [PATCH 6/7] perf doc: Remove howto-index.sh related references Ian Rogers
` (2 subsequent siblings)
7 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2021-07-15 1:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
linux-perf-users, linux-kernel
Cc: eranian, Ian Rogers
cmd-list.perl exists in git but not in perf. As such these targets fail
with missing dependencies. Remove them.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/Documentation/Makefile | 21 +--------------------
1 file changed, 1 insertion(+), 20 deletions(-)
diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
index 85a796c112a2..c5ec17ee5bb0 100644
--- a/tools/perf/Documentation/Makefile
+++ b/tools/perf/Documentation/Makefile
@@ -237,24 +237,6 @@ $(OUTPUT)doc.dep : $(wildcard *.txt) build-docdep.perl
-include $(OUTPUT)doc.dep
-_cmds_txt = cmds-ancillaryinterrogators.txt \
- cmds-ancillarymanipulators.txt \
- cmds-mainporcelain.txt \
- cmds-plumbinginterrogators.txt \
- cmds-plumbingmanipulators.txt \
- cmds-synchingrepositories.txt \
- cmds-synchelpers.txt \
- cmds-purehelpers.txt \
- cmds-foreignscminterface.txt
-cmds_txt=$(addprefix $(OUTPUT),$(_cmds_txt))
-
-$(cmds_txt): $(OUTPUT)cmd-list.made
-
-$(OUTPUT)cmd-list.made: cmd-list.perl ../command-list.txt $(MAN1_TXT)
- $(QUIET_GEN)$(RM) $@ && \
- $(PERL_PATH) ./cmd-list.perl ../command-list.txt $(QUIET_STDERR) && \
- date >$@
-
CLEAN_FILES = \
$(MAN_XML) $(addsuffix +,$(MAN_XML)) \
$(MAN_HTML) $(addsuffix +,$(MAN_HTML)) \
@@ -262,8 +244,7 @@ CLEAN_FILES = \
$(OUTPUT)*.texi $(OUTPUT)*.texi+ $(OUTPUT)*.texi++ \
$(OUTPUT)perf.info $(OUTPUT)perfman.info \
$(OUTPUT)howto-index.txt $(OUTPUT)howto/*.html $(OUTPUT)doc.dep \
- $(OUTPUT)technical/api-*.html $(OUTPUT)technical/api-index.txt \
- $(cmds_txt) $(OUTPUT)*.made
+ $(OUTPUT)technical/api-*.html $(OUTPUT)technical/api-index.txt
clean:
$(call QUIET_CLEAN, Documentation) $(RM) $(CLEAN_FILES)
--
2.32.0.402.g57bb445576-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 6/7] perf doc: Remove howto-index.sh related references.
2021-07-15 1:33 [PATCH 0/7] Tidy perf Documentation build Ian Rogers
` (4 preceding siblings ...)
2021-07-15 1:33 ` [PATCH 5/7] perf doc: Remove cmd-list.perl references Ian Rogers
@ 2021-07-15 1:33 ` Ian Rogers
2021-07-15 1:33 ` [PATCH 7/7] perf doc: Reorganize ARTICLES variables Ian Rogers
2021-07-19 19:32 ` [PATCH 0/7] Tidy perf Documentation build Namhyung Kim
7 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2021-07-15 1:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
linux-perf-users, linux-kernel
Cc: eranian, Ian Rogers
howto-index.sh exists in git but not in perf, as such targets that
depend upon it fail. Remove such failing targets.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/Documentation/Makefile | 13 +------------
1 file changed, 1 insertion(+), 12 deletions(-)
diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
index c5ec17ee5bb0..9d991b14ac4b 100644
--- a/tools/perf/Documentation/Makefile
+++ b/tools/perf/Documentation/Makefile
@@ -242,8 +242,7 @@ CLEAN_FILES = \
$(MAN_HTML) $(addsuffix +,$(MAN_HTML)) \
$(DOC_HTML) $(DOC_MAN1) $(DOC_MAN5) $(DOC_MAN7) \
$(OUTPUT)*.texi $(OUTPUT)*.texi+ $(OUTPUT)*.texi++ \
- $(OUTPUT)perf.info $(OUTPUT)perfman.info \
- $(OUTPUT)howto-index.txt $(OUTPUT)howto/*.html $(OUTPUT)doc.dep \
+ $(OUTPUT)perf.info $(OUTPUT)perfman.info $(OUTPUT)doc.dep \
$(OUTPUT)technical/api-*.html $(OUTPUT)technical/api-index.txt
clean:
$(call QUIET_CLEAN, Documentation) $(RM) $(CLEAN_FILES)
@@ -294,21 +293,11 @@ $(patsubst %.txt,%.texi,$(MAN_TXT)): %.texi : %.xml
$(DOCBOOK2X_TEXI) --to-stdout $*.xml >$@+ && \
mv $@+ $@
-howto-index.txt: howto-index.sh $(wildcard howto/*.txt)
- $(QUIET_GEN)$(RM) $@+ $@ && \
- '$(SHELL_PATH_SQ)' ./howto-index.sh $(wildcard howto/*.txt) >$@+ && \
- mv $@+ $@
-
$(patsubst %,%.html,$(ARTICLES)) : %.html : %.txt
$(QUIET_ASCIIDOC)$(ASCIIDOC) -b $(ASCIIDOC_HTML) $*.txt
WEBDOC_DEST = /pub/software/tools/perf/docs
-$(patsubst %.txt,%.html,$(wildcard howto/*.txt)): %.html : %.txt
- $(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
- sed -e '1,/^$$/d' $< | $(ASCIIDOC) -b $(ASCIIDOC_HTML) - >$@+ && \
- mv $@+ $@
-
# UNIMPLEMENTED
#install-webdoc : html
# '$(SHELL_PATH_SQ)' ./install-webdoc.sh $(WEBDOC_DEST)
--
2.32.0.402.g57bb445576-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 7/7] perf doc: Reorganize ARTICLES variables.
2021-07-15 1:33 [PATCH 0/7] Tidy perf Documentation build Ian Rogers
` (5 preceding siblings ...)
2021-07-15 1:33 ` [PATCH 6/7] perf doc: Remove howto-index.sh related references Ian Rogers
@ 2021-07-15 1:33 ` Ian Rogers
2021-07-19 19:32 ` [PATCH 0/7] Tidy perf Documentation build Namhyung Kim
7 siblings, 0 replies; 14+ messages in thread
From: Ian Rogers @ 2021-07-15 1:33 UTC (permalink / raw)
To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
linux-perf-users, linux-kernel
Cc: eranian, Ian Rogers
Place early, as they are in the git Makefile. Remove references to a
'technical` directory that doesn't exist in perf.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/Documentation/Makefile | 11 ++++-------
1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
index 9d991b14ac4b..6e7b88917ca0 100644
--- a/tools/perf/Documentation/Makefile
+++ b/tools/perf/Documentation/Makefile
@@ -2,6 +2,10 @@
include ../../scripts/Makefile.include
include ../../scripts/utilities.mak
+ARTICLES =
+# with their own formatting rules.
+SP_ARTICLES =
+
MAN1_TXT= \
$(filter-out $(addsuffix .txt, $(ARTICLES) $(SP_ARTICLES)), \
$(wildcard perf-*.txt)) \
@@ -16,13 +20,6 @@ _MAN_HTML=$(patsubst %.txt,%.html,$(MAN_TXT))
MAN_XML=$(addprefix $(OUTPUT),$(_MAN_XML))
MAN_HTML=$(addprefix $(OUTPUT),$(_MAN_HTML))
-ARTICLES =
-# with their own formatting rules.
-SP_ARTICLES =
-API_DOCS = $(patsubst %.txt,%,$(filter-out technical/api-index-skel.txt technical/api-index.txt, $(wildcard technical/api-*.txt)))
-SP_ARTICLES += $(API_DOCS)
-SP_ARTICLES += technical/api-index
-
_DOC_HTML = $(_MAN_HTML)
_DOC_HTML+=$(patsubst %,%.html,$(ARTICLES) $(SP_ARTICLES))
DOC_HTML=$(addprefix $(OUTPUT),$(_DOC_HTML))
--
2.32.0.402.g57bb445576-goog
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH 0/7] Tidy perf Documentation build
2021-07-15 1:33 [PATCH 0/7] Tidy perf Documentation build Ian Rogers
` (6 preceding siblings ...)
2021-07-15 1:33 ` [PATCH 7/7] perf doc: Reorganize ARTICLES variables Ian Rogers
@ 2021-07-19 19:32 ` Namhyung Kim
7 siblings, 0 replies; 14+ messages in thread
From: Namhyung Kim @ 2021-07-19 19:32 UTC (permalink / raw)
To: Ian Rogers
Cc: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
Mark Rutland, Alexander Shishkin, Jiri Olsa, linux-perf-users,
linux-kernel, Stephane Eranian
Hi Ian,
On Wed, Jul 14, 2021 at 6:33 PM Ian Rogers <irogers@google.com> wrote:
>
> Perf's Documenation Makefile is based off git's, but some parts of it
> were never completed. 'make info' also fails. These patches fix 'make
> info' and do some related tidy up. Two missing files are added from git.
>
> Ian Rogers (7):
> perf doc: Fix perfman.info build
> perf doc: Fix doc.dep
> perf doc: Remove references to user-manual
> perf doc: Add info pages to all target.
> perf doc: Remove cmd-list.perl references
> perf doc: Remove howto-index.sh related references.
> perf doc: Reorganize ARTICLES variables.
Acked-by: Namhyung Kim <namhyung@kernel.org>
Thanks,
Namhyung
>
> tools/perf/Documentation/Makefile | 74 +++-------------------
> tools/perf/Documentation/build-docdep.perl | 46 ++++++++++++++
> tools/perf/Documentation/cat-texi.perl | 46 ++++++++++++++
> 3 files changed, 100 insertions(+), 66 deletions(-)
> create mode 100755 tools/perf/Documentation/build-docdep.perl
> create mode 100755 tools/perf/Documentation/cat-texi.perl
>
> --
> 2.32.0.402.g57bb445576-goog
>
^ permalink raw reply [flat|nested] 14+ messages in thread