This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 28 January 2008 11:00, Michael Abbott wrote: > On Mon, 28 Jan 2008, Michael Abbott wrote: >> My crosstool build fails with the message >> [38:16] / find: missing argument to `-exec' > ... >> find ... -name ... -exec rm -fv {} \+ ... >> Eh? How on earth did \; become transformed into \+? >> >> The attached patch should fix this, but I haven't tested it yet. > > Tested, and builds just fine now, which really begs the question: where > did \+ come from? According to svn those `find ... -exec rm ...` lines > have always ended in \+ since they were introduced in revision 158 ... > which implies that either your find accepts + as an alias for ; > (implausible) or those lines never got exercised (also implausible). What version of find do you have running? I have /artimi/software/firmware $ find --version GNU find version 4.3.2 Features enabled: O_NOFOLLOW(enabled) LEAF_OPTIMISATION FTS CBO(level=0) And in the info page I have: 8.1.4 Going back to -exec ------------------------- There is indeed a more universal mechanism, which is a slight modification to the `-exec' action. The normal `-exec' action assumes that the command to run is terminated with a semicolon (the semicolon normally has to be quoted in order to protect it from interpretation as the shell command separator). The SVR4 edition of Unix introduced a slight variation, which involves terminating the command with `+' instead: find /var/tmp/stuff -mtime +90 -exec /bin/rm {} \+ The above use of `-exec' causes `find' to build up a long command line and then issue it. This can be less efficient than some uses of `xargs'; for example `xargs' allows new command lines to be built up while the previous command is still executing, and allows you to specify a number of commands to run in parallel. However, the `find ... -exec ... +' construct has the advantage of wide portability. GNU findutils did not support `-exec ... +' until version 4.2.12; one of the reasons for this is that it already had the `-print0' action in any case. cheers, DaveK -- Can't think of a witty .sigline today.... -- For unsubscribe information see http://sourceware.org/lists.html#faq
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |