Bootstrap script

Ralf Corsepius ralf.corsepius at rtems.org
Mon Apr 14 06:50:57 UTC 2008


On Mon, 2008-04-14 at 17:38 +1200, Nigel Spon wrote:
> On 14/04/2008, at 4:27 PM, Ralf Corsepius wrote:
> >  What does MacOSX's "man find" say?
> 
> The synopsis specifies:
> 
>   find [-H | -L | -P] [-EXdsx] [-f pathname] pathname ... expression
>   find [-H | -L | -P] [-EXdsx] -f pathname [pathname ...] expression
> 
> It then remarks in the Bugs section that:
> 
>       As there is no delimiter separating options and file names or  
> file names
>       and the expression, it is difficult to specify files named -xdev  
> or !.
>       These problems are handled by the -f option and the getopt(3)  
> ``--'' construct.
>       struct.
> 
> It looks as though pathname just isn't optional.
> 
> I notice that all the uses of find in the bootstrap script under the  
> 'clean' heading have already been adapted to this form; perhaps  
> someone else has already encountered this.
Nope :) ...

> > * Which "find" is it?
> >
> > [Please check the output of:
> > which find
> > type -p find
> > find --version
> > ]
> 
> Its in /usr/bin/find, it doesn't accept --version
> 
> >
> > * Which shell are you using?
> 
> tcsh

Geez ... 

> > * Do you have white spaces or special characters in $PATH, cwd,
> > or $HOME?
> 
> No - since the discovery that tilde is a second-class citizen I have  
> been trying to avoid that. Unless you are about to tell me that  
> underscore is thought of in the same way...
Nope, underscores are harmless.

The critical ones are tilde and white spaces, because they are subject
to globbing (cf. glob(3)). In a perfect world, they shouldn't have any
effect, but in real-world they trip over shell bugs and shell-script
bugs.

> > * Do you have any POSIX_* compatibility or similar environment  
> > variables
> > set?
> 
> Not that I know of. What should I look for?
Hard to know without having access to MacOSX ;) 

Some OSes and tools (esp. GNU-versions) use flags or environment
variables to switch between different flavors of "POSIX-compliance" and
"proprietary behavior".

In most cases, they use environment variables prefixed with POSIX,
_POSIX or similar.

I had suspected you might have something active to enforce strict or
stricter POSIX-compliance. This isn't always a good idea, but provided
what you say, this doesn't seem to apply in your case.

Ralf





More information about the users mailing list