[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Autoconf build targets





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 debian-bsd-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org



Reply to: