On 2018/08/05 15:47:19 -0700, Paul E. McKenney wrote: > On Mon, Aug 06, 2018 at 06:58:20AM +0900, Akira Yokosawa wrote: >> On 2018/08/05 09:54:48 -0700, Paul E. McKenney wrote: >>> On Sun, Aug 05, 2018 at 09:35:08AM -0700, Paul E. McKenney wrote: >>>> On Sun, Aug 05, 2018 at 09:06:27AM +0900, Akira Yokosawa wrote: >>>>> Hi Paul, >>>>> >>>>> This is hopefully the final version of this trial branch. >>>>> >>>>> Changes since v4: >>>>> >>>>> o Instead of generating CodeSamples/snippets.mk and calling it from >>>>> main Makefile, generate CodeSamples/snippets.d which contains >>>>> only dependencies and include it in the Makefile. >>>>> >>>>> This change can fix the error you encountered in the previous version. >>>>> I'm just hoping... >>>> >>>> Hmmmm... >>>> >>>> $ make >>>> sh ./utilities/gen_snippet_d.sh >>>> CodeSamples/toolsoftrade/pcreate.c --> CodeSamples/toolsoftrade/pcreate@xxxxxxxxxxxx >>>> >>>> But "make 2c" works. This might be because I don't have the >>>> PERFBOOK_DEFAULT environment variable set? Except that the Makefile code >>>> looks like this would have the default "make all" have the same effect as >>>> "make 2c". Color me confused. >> >> No. It was my fault. I failed to test the simple "make". >> To override my env variable setting of "PERFBOOK_DEFUALT=msnt 1csf", >> I tend to use one of "make msnt" or "make msnt 1csf" or "make 2c". >> >> I see the same behavior when I do simple "make" regardless >> of PERFBOOK_DEFAULT is set or unset. > > Been there, done that! ;-) > >>>> Anyway, yes, when I do "make 2c" it correctly reacts to moving labels >>>> around in CodeSamples/toolsoftrade/forkjoinvar.c, so that is good! >>>> >>>> Here is the output of "make -v", in case that matters: >>>> >>>> GNU Make 3.81 >>>> Copyright (C) 2006 Free Software Foundation, Inc. >>>> This is free software; see the source for copying conditions. >>>> There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A >>>> PARTICULAR PURPOSE. >>>> >>>> This program built for x86_64-pc-linux-gnu >>> >>> And the diff below restores the behavior I would expect for "make", >>> even when modifying tags in CodeSamples/toolsoftrade/forkjoinvar.c, >>> though of course it might well break something else. (And the diff >>> happens to include my test change to forkjoinvar.c.) >>> >>> Thoughts? >>> >>> Thanx, Paul >>> >>> ------------------------------------------------------------------------ >>> >>> diff --git a/Makefile b/Makefile >>> index fe9f63f43e55..3e9e2c2ebf3c 100644 >>> --- a/Makefile >>> +++ b/Makefile >>> @@ -85,13 +85,6 @@ endif >>> SOURCES_OF_SNIPPET := $(shell grep -r -l -F '\begin{snippet}' CodeSamples) >>> GEN_SNIPPET_D = utilities/gen_snippet_d.pl utilities/gen_snippet_d.sh >>> >>> -ifeq ($(MAKECMDGOALS),clean) >>> -else ifeq ($(MAKECMDGOALS),distclean) >>> -else ifeq ($(MAKECMDGOALS),neatfreak) >>> -else >>> --include CodeSamples/snippets.d >>> -endif >>> - >>> default = $(PERFBOOK_DEFAULT) >>> >>> ifeq ($(default),) >>> @@ -103,6 +96,13 @@ endif >>> .PHONY: all touchsvg clean distclean neatfreak 2c ls-unused $(ABBREVTARGETS) mslm perfbook-mslm.pdf mslmmsg help >>> all: $(targ) >>> >>> +ifeq ($(MAKECMDGOALS),clean) >>> +else ifeq ($(MAKECMDGOALS),distclean) >>> +else ifeq ($(MAKECMDGOALS),neatfreak) >>> +else >>> +-include CodeSamples/snippets.d >>> +endif >>> + >>> 2c: perfbook.pdf >>> >>> mslm: perfbook-mslm.pdf >> >> This change works for me too. >> >> Do you want me to add the change to the trial branch? >> I don't mind if you add the change yourself with my >> >> Acked-by: Akira Yokosawa <akiyks@xxxxxxxxx> >> >> Of course, the following diff should be omitted. > > I pushed out an akiyks.2018.08.05a branch with the commit (but without > the forkjoinvar.c change), and with your ack. > > When you say it is ready, I will bring my master branch out to that > commit. Or if you have another pull request for an updated version > of this series, I will replace it with that. I amended the commit log. Appended is the pull request. See below. Thanks, Akira > > Either way, please let me know! > > Thanx, Paul > >> Thanks, Akira >> >>> diff --git a/CodeSamples/toolsoftrade/forkjoinvar.c b/CodeSamples/toolsoftrade/forkjoinvar.c >>> index 1580478fe2f9..642451d9e880 100644 >>> --- a/CodeSamples/toolsoftrade/forkjoinvar.c >>> +++ b/CodeSamples/toolsoftrade/forkjoinvar.c >>> @@ -35,11 +35,11 @@ int main(int argc, char *argv[]) >>> if (pid == 0) { /* child */ >>> x = 1; //\lnlbl{setx} >>> printf("Child process set x=1\n"); //\lnlbl{print:c} >>> - exit(EXIT_SUCCESS); //\lnlbl{exit:s} >>> + exit(EXIT_SUCCESS); >>> } >>> if (pid < 0) { /* parent, upon error */ >>> perror("fork"); >>> - exit(EXIT_FAILURE); >>> + exit(EXIT_FAILURE); //\lnlbl{exit:s} >>> } >>> >>> /* parent */ >>> >> > --- The following changes since commit 3b62f67a76e15f8d8f8190a4252362d4ac0cdf23: Regenerating the atomic counter graph on a more modern CPU (2018-07-23 13:47:51 -0700) are available in the git repository at: https://github.com/akiyks/perfbook.git trial-fancyvrb-20180805a for you to fetch changes up to 78141e64d4629b29643634fc1d334233f108f656: Makefile: Fix "make" behavior (2018-08-06 08:18:49 +0900) ---------------------------------------------------------------- Akira Yokosawa (12): toolsoftrade: Add labels in code samples as comments Add script to extract code snippet from code sample toolsoftrade: Reference line in code snippets by label Update hyphen2endash Add *.fcv to .gitignore Automate sub makefile update Specify lmtt font for VerbatimM env toolsoftrade: Use \lnlbl in inline code snippet Add 'linelabel' and 'lineref' environment Catch failure in genaration of CodeSamples/snippets.mk Add dependencis to scripts for extracting code snippets Add dependencies of perfbook_flat.tex to CodeSamples/.../*.fcv files Paul E. McKenney (1): Makefile: Fix "make" behavior .gitignore | 2 + CodeSamples/api-pthreads/api-pthreads.h | 18 +-- CodeSamples/toolsoftrade/forkjoinvar.c | 12 +- CodeSamples/toolsoftrade/pcreate.c | 7 +- Makefile | 25 +++- perfbook.tex | 21 ++++ toolsoftrade/toolsoftrade.tex | 211 +++++++++++--------------------- utilities/fcvextract.pl | 168 +++++++++++++++++++++++++ utilities/gen_snippet_d.pl | 65 ++++++++++ utilities/gen_snippet_d.sh | 8 ++ utilities/hyphen2endash.sh | 3 + 11 files changed, 382 insertions(+), 158 deletions(-) create mode 100755 utilities/fcvextract.pl create mode 100755 utilities/gen_snippet_d.pl create mode 100644 utilities/gen_snippet_d.sh -- To unsubscribe from this list: send the line "unsubscribe perfbook" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html