James R. Phillips wrote:
All,
The packaging instructions at http://cygwin.com/setup.html#package_contents
indicate
[quote]
The package is configured using (at a minimum) the following paths:
[..snip..]
--libexecdir=/usr/sbin
[..snip..]
[/quote]
OK, this seems wrong to me. GNU autoconf defines libexecdir as a directory for
binaries that are called by programs, and not by users. It defaults to
/usr/sbin, but that is a violation of fhs. Per fhs, /usr/sbin is for
nonessential administrative utilities, i.e. it is not for normal users.
The current fhs indicates /usr/lib is the right place for libexecdir:
[quote]
4.7.1. Purpose
/usr/lib includes object files, libraries, and internal binaries that are not
intended to be executed directly by users or shell scripts.
Applications may use a single subdirectory under /usr/lib. If an application
uses a subdirectory, all architecture-dependent data exclusively used by the
application must be placed within that subdirectory.
[/quote]
Search of the cygwin-apps archives reveals no discussion of this issue, but
does show some packagers are using libexecdir=/usr/lib instead of /usr/sbin.
So three questions:
(1) Wouldn't /usr/lib be preferred ?
(2) If it is preferred, why don't we update our docs?
(3) If it isn't preferred, is it acceptable? It seems some are using it.
(1) /usr/lib/package, yes. Or maybe /usr/share/package.
(2) SHTDI
(3) I use it for GCC since I'm maintainer and it was /usr/lib/gcc before
I was maintainer. In recent versions GCC switched to use two
direcories, /usr/lib/gcc for runtime libraries, /usr/share/gcc for
executables.
Dunno who wrote the docs... wonder why autoconf has this wrong.
Gerrit
--
=^..^=