On Fri, 2015-09-04 at 09:17 +0200, Patrick Ohly wrote: > On Thu, 2015-09-03 at 16:56 -0500, Alex Franco wrote: > > Removing recursive option from chmod -st on BUILDDIR as it would > > take very long on existing build directories > > Okay, so this *is* a problem others are also seeing ;-} > > > diff --git a/scripts/oe-setup-builddir b/scripts/oe-setup-builddir > > index f5b7e4e..91bd86b 100755 > > --- a/scripts/oe-setup-builddir > > +++ b/scripts/oe-setup-builddir > > @@ -24,7 +24,10 @@ if [ -z "$BUILDDIR" ]; then > > fi > > > > mkdir -p "$BUILDDIR/conf" > > -chmod -R -st "$BUILDDIR" > > + > > +# Attempting removal of sticky,setuid bits from BUILDDIR, BUILDDIR/conf > > +chmod -st "$BUILDDIR" 2>/dev/null || echo "WARNING: unable to chmod > > $BUILDDIR" > > +chmod -st "$BUILDDIR/conf" 2>/dev/null || echo "WARNING: unable to chmod > > $BUILDDIR/conf" > > > > if [ ! -d "$BUILDDIR" ]; then > > echo >&2 "Error: The builddir ($BUILDDIR) does not exist!" > > What was the reasoning behind adding these operations on $BUILDDIR/conf > before the check whether BUILDDIR exists and is a directory? Looks a bit > fishy to me.
Non-existent parent of $BUILDDIR is caught elsewhere, but pointing BUILDDIR to a file instead of a directory indeed leads to sub-optimal error reporting: $ touch /tmp/foobar $ . oe-init-build-env /tmp/foobar mkdir: cannot create directory ‘/tmp/foobar’: Not a directory chmod: cannot access ‘/tmp/foobar/conf’: Not a directory Error: The builddir (/tmp/foobar) does not exist! Not sure whether it's worth fixing, though. Better get this performance fix included quickly. -- Best Regards, Patrick Ohly The content of this message is my personal opinion only and although I am an employee of Intel, the statements I make here in no way represent Intel's position on the issue, nor am I authorized to speak on behalf of Intel on this matter. -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core