Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 Feb 2011 19:43:06 +0000
From:      Alexander Best <arundel@freebsd.org>
To:        freebsd-hackers@freebsd.org
Subject:   insufficient flag handling in tools/install.sh
Message-ID:  <20110203194306.GA55376@freebsd.org>

next in thread | raw e-mail | index | archive | help
hi there,

i stumbled upon two interesting lines in the amd64 tinderbox output [1]:

[...]
sh /src/tools/install.sh -d -o root -g wheel -m 755  /obj/src/tmp/usr/include/x86;  cd /src/include/../sys/x86/include;  for h in *.h; do  ln -fs ../../../sys/x86/include/$h  /obj/src/tmp/usr/include/x86;  done
install: chown 0:0 /obj/src/tmp/usr/include/x86: Operation not permitted
[...]
sh /src/tools/install.sh -d -o root -g wheel -m 755  /obj/src/lib32/usr/include/x86;  cd /src/include/../sys/x86/include;  sh /src/tools/install.sh -C -o root -g wheel -m 444 *.h  /obj/src/lib32/usr/include/x86
install: chown 0:0 /obj/src/lib32/usr/include/x86: Operation not permitted
[...]

it seems the -d flag breaks the semantics of tools/install.sh entirely and
using the script in such a case simply passes all args over to install(1).

simply adding the -d flag to the first switch statement won't work, since we
need to tell install(1) that it should only expect a single directory as
argument. so the -d flag needs to be passed over to install(1), while options
such as -o X, -g X, etc. need to be stripped away.

any thoughts on how to fix this?

cheers.
alex

[1] http://tinderbox.freebsd.org/tinderbox-head-HEAD-amd64-amd64.full

-- 
a13x



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