NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
toolchain/39528: src/tools/file fails to install due to permission problem
>Number: 39528
>Category: toolchain
>Synopsis: src/tools/file fails to install due to permission problem
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: toolchain-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Sep 13 02:05:00 +0000 2008
>Originator: Izumi Tsutsui
>Release: NetBSD 4.99.72
>Organization:
>Environment:
System: NetBSD 4.99.72 from NetBSD-daily/HEAD/200809120002Z
Architecture: i386
Machine: i386
>Description:
On build.sh tools, "make install" in src/tools/files invokes
"src/dist/file/install-sh" script directly for "MKDIR_P"
(at least on NetBSD/i386 4.99.72 host).
But source sets in the [RELEASE]/source/sets directory
(which are created by src/distrib/sets/makesrcsets)
don't preserve executable bits in archives, so
the installation fails due to "permission denied."
>How-To-Repeat:
% ftp
ftp://ftp.NetBSD.org/pub/NetBSD-daily/HEAD/200809100002Z/source/sets/gnusrc.tgz
% ftp
ftp://ftp.NetBSD.org/pub/NetBSD-daily/HEAD/200809100002Z/source/sets/sharesrc.tgz
% ftp
ftp://ftp.NetBSD.org/pub/NetBSD-daily/HEAD/200809100002Z/source/sets/src.tgz
% ftp
ftp://ftp.NetBSD.org/pub/NetBSD-daily/HEAD/200809100002Z/source/sets/syssrc.tgz
% tar -ztvf src.tgz usr/src/dist/file/src/install-sh
-rw-rw-r-- 1 root wsrc 13184 Sep 2 23:06
usr/src/dist/file/install-sh
tar: ustar vol 1, 66297 files, 296919040 bytes read, 0 bytes written in 3 secs
(98973013 bytes/sec)
% tar -zxpf gnusrc.tgz
% tar -zxpf sharesrc.tgz
% tar -zxpf src.tgz
% tar -zxpf syssrc.tgz
% ls -l usr/src/dist/file/install-sh
-rw-rw-r-- 1 tsutsui tsutsui 13184 Sep 2 23:06 usr/src/dist/file/install-sh
% (cd usr/src; sh build.sh -m cobalt -u -U -T tooldir -D destdir -V
OBJMACHINE=1 tools)
:
install ===> db
% install /home/tsutsui/cobalt/usr/src/tooldir/bin/nbdb
mkdir -p /home/tsutsui/cobalt/usr/src/tooldir/bin
/home/tsutsui/cobalt/usr/src/tooldir/bin/mipsel--netbsd-install -c -p -r -m 555
db /home/tsutsui/cobalt/usr/src/tooldir/bin/nbdb
install ===> file
Making install in src
test -z "/home/tsutsui/cobalt/usr/src/tooldir/lib" ||
/home/tsutsui/cobalt/usr/src/tools/file/../../dist/file/install-sh -c -d
"/home/tsutsui/cobalt/usr/src/tooldir/lib"
sh: /home/tsutsui/cobalt/usr/src/tools/file/../../dist/file/install-sh:
permission denied
*** Failed target: install-libLTLIBRARIES
>Fix:
I'm not sure if it's autoconf(1) problem or not, but there are
two possible workaround:
1) fix src/distrib/sets/makesrctars to preserve executable bits
for shell script files
2) fix src/dist/file/configure to call install-sh srcipt via $(SHELL)
Index: dist/file/configure
===================================================================
RCS file: /cvsroot/src/dist/file/configure,v
retrieving revision 1.19
diff -u -r1.19 configure
--- dist/file/configure 30 Aug 2008 12:16:51 -0000 1.19
+++ dist/file/configure 13 Sep 2008 01:38:54 -0000
@@ -2159,7 +2159,7 @@
# break other packages using the cache if that directory is
# removed, or if the value is a relative name.
test -d ./--version && rmdir ./--version
- MKDIR_P="$ac_install_sh -d"
+ MKDIR_P="\$(SHELL) $ac_install_sh -d"
fi
fi
{ echo "$as_me:$LINENO: result: $MKDIR_P" >&5
---
Izumi Tsutsui
Home |
Main Index |
Thread Index |
Old Index