On 2010.01.26 17:25, Peng Yu wrote:
On Wed, Jan 27, 2010 at 3:30 AM, Oleksandr Gavenko<[email protected]>  wrote:
 From info make "10.5.3 Automatic Variables":

$^
    The names of all the prerequisites, with spaces between them. For
prerequisites which are archive members, only the member named is used (see
Archives). A target has only one prerequisite on each other file it depends
on, no matter how many times each file is listed as a prerequisite. So if
you list a prerequisite more than once for a target, the value of $^
contains just one copy of the name. This list does not contain any of the
order-only prerequisites; for those see the `$|' variable, below.


$|
    The names of all the order-only prerequisites, with spaces between them.

I read the explanations before I posted the original. But they are not
clear to as there is no definition on what "order-only" mean? Does it
mean that $^ does not necessarily preserve the order but $| does?
Also, I suggest to revise the explanation to make it clear.


Ok. Question open, but just use:

$+
This is like `$^', but prerequisites listed more than once are duplicated _in_the_order_they_were_listed_in_the_makefile. This is primarily useful for use in linking commands where it is meaningful to repeat library file names in a particular order.

--
С уважением, Александр Гавенко.


_______________________________________________
Help-make mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-make

Reply via email to