Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 17 Aug 2016 17:29:59 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-doc@FreeBSD.org
Subject:   [Bug 211949] PMake - A Tutorial Chapter 2.5
Message-ID:  <bug-211949-9@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D211949

            Bug ID: 211949
           Summary: PMake - A Tutorial Chapter 2.5
           Product: Documentation
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: Documentation
          Assignee: freebsd-doc@FreeBSD.org
          Reporter: djensen@macsales.com

This also effects the following webpage:

https://www.freebsd.org/doc/en/books/pmake/parellelism.html


I read the following paragraph and then printed the entire contents of 2.5 =
and
had several other people read it and we all got the same general impression
which I outline after displaying the paragraph in question:

***************************************************************************=
******

There are several problems you are likely to encounter. One is that some
makefiles (and programs) are written in such a way that it is impossible for
two targets to be made at once. The program xstr, for example, always modif=
ies
the files strings and x.c. There is no way to change it. Thus you cannot run
two of them at once without something being trashed. Similarly, if you have
commands in the makefile that always send output to the same file, you will=
 not
be able to make more than one target at once unless you change the file you
use. You can, for instance, add a $$$$ to the end of the file name to tack =
on
the process ID of the shell executing the command (each $$ expands to a sin=
gle
$, thus giving you the shell variable $$). Since only one shell is used for=
 all
the commands, you will get the same file name for each command in the scrip=
t.

***************************************************************************=
******

I am guessing what is being conveyed (or at least seems to be) is not the
intent for when the above is read it sounds like the following occurs:

1) That if you have a multiple commands that create/utilize a filename these
can only be run 1 at a time otherwise they will step on each other --
understood

2) However a possible work around is to take on $$$$ to the end of the file=
name
so that each file created gets its own unique Pid (or at least that is what=
 it
seems to imply anyway) -- aka here is a work around for the problem in item=
 #1

3) However because PMake only operates under one shell the Pid will be the =
same
for every process and as such all these filenames will still be the same.

Synopsis:  Here is a problem, here is a work-around to the problem, but the
work-around to the problem will not work.

If this not what is trying to be conveyed then it needs to be reworded in a
manner to clarify what it is trying to say -- on the other hand if this is =
what
it is trying to convey I have to ask -- Why include it at all since it just
creates confusion ??

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-211949-9>