Robert Millan wrote:
On Mon, May 20, 2002 at 01:00:21PM -0400, Nathan Hawkins wrote:
I've read parts of that thread. For the most part, I'm not in sympathy with the Hurd on this. Filesystem should be laid out according to FHS unless there's a compelling reason not to, in which case FHS needs to be changed.If you use /usr/lib/bsd it will be at most a minor violation, much preferable than /usr since no custom directories can be put in there.
But of course if there's a good reson to use /usr/bsd a draft could be filed to the FHS people (the GNU folks are going to do that)
Currently /usr/bsd has bin, libdata, libexec, sbin and share subdirectories. I don't believe putting it under /usr/lib is a good idea, but I do need to go look at the FHS.
FWIW, the package containing this directory is only needed for building the freebsd sources. Unfortunately, it's also produced from those sources, so there's a circular build dependacy... :(
>Packages which depend on a specific shell to build shouldn't be trying to use /bin/sh. The build system for this large source package calls /bin/sh, and fails to work with bash.Bash can be /bin/sh because it's POSIX-complaint. Any script using non-POSIX extensions that has /bin/sh as its interpreter has a bug in Debian context.
IIRC, /bin/sh is a C shell in *BSD? Then you should set interpreter to /bin/csh and add a dependency on csh | c-shell to the corresponding package.
Looked like a bourne shell to me. Default root shell is /bin/csh on FreeBSD, but I believe /bin/sh is basically the same as ash. Interestingly, MAKEDEV fails to work with bash but works fine with ash.
Since bash is default /bin/sh, and since what exactly is /bin/sh is subject to change by the user, this must be patched in the source to use something other than /bin/sh. Either that or fix the scripts so they will work with bash. I don't have time to do the latter, and it'd be more work to maintain.Agreed, I just say that something other should be a Debianised shell like /bin/csh preferably to the /usr/bsd/bin/sh hierrachy.
sh is one of the tools it needs to build the source. There are several others:
skaro:/# ls /usr/bsd/bin
byacc gcov kas kgdb kranlib make patch yacc
colldef gensetdefs kc++filt kld kreadelf mkdep sh yyfix
compile_et install kcc knm ksize mknod tcsh
csh kaddr2line kcpp kobjcopy kstrings mktemp tsort
find kar kgasp kobjdump kstrip objformat xargs
And yes, all of these are things for which I can't presently substitute the regular versions of these from Debian packages. :(
Several of the tools are there because they have incompatible options to GNU versions. find and install for example. Others are apparently BSD-specific, like gensetdefs or compile_et.
I hope to be able to get the FreeBSD binutils and gcc out of there sometime, since they're only used to build the kernel, and from what I'm told -CURRENT should be buildable with gcc 3.x now. Binutils may not be able to go away for a while yet. :(
---Nathan
-- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]