Svante Signell, le jeu. 27 janv. 2022 23:17:38 +0100, a ecrit: > On Thu, 2022-01-27 at 20:23 +0100, Samuel Thibault wrote: > > Svante Signell, le jeu. 27 janv. 2022 12:08:47 +0100, a ecrit: > > > On Wed, 2022-01-26 at 17:54 +0100, Samuel Thibault wrote: > > > > So here the problem is that > > > > > > > > test ! -d /home > > > > > > > > says that /home is not a directory. Is there anything special about your > > > > /home path? Perhaps show the output of > > > > > > > > stat /home > > > > > > File: /home > > > Size: 4096 Blocks: 8 IO Block: 8192 directory > > > Device: 1a0h/416d Inode: 2 Links: 4 > > > Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) > > > Access: 2022-01-27 07:58:34.000000000 +0100 > > > Modify: 2017-01-20 13:14:35.000000000 +0100 > > > Change: 2017-01-20 13:14:35.000000000 +0100 > > > Birth: - > > > > > > > > > On all boxes the little script > > > #! /bin/sh > > > if test ! -d /home; then > > > echo "/home is not a directory" > > > else > > > echo "/home is a directory" > > > fi > > > returns : /home is a directory > > > > One additional thing is that make install is run under fakeroot, so > > you'll have to also involve fakeroot in your tests. > > The packages was built with dpkg-buildpackage -b 2>&1 | tee ../build.log where > fakeroot is automatically called. > > But here is one result: > fakeroot stat /home > File: /home > Size: 4096 Blocks: 8 IO Block: 8192 directory > Device: 1a1h/417d Inode: 2 Links: 4 > Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) > Access: 2022-01-26 23:12:36.000000000 +0100 > Modify: 2019-07-05 23:29:24.000000000 +0200 > Change: 2019-07-05 23:29:24.000000000 +0200 > Birth: - > > fakeroot ./test_for_directory.sh > /home is a directory
I'm out of ideas for now. Perhaps you could add the stat call inside the mkinstalldirs script, to make sure that yes the stat() call does report non-directory here. And perhaps also call ps there, to perhaps see the actual situation it's getting run under. Perhaps fakeroot-tcp vs fakeroot-hurd? Samuel