Current
Libexecdir
The Filesystem Hierarchy Standard does not include any provision for libexecdir, but Fedora packages can store appropriate files there. Libexecdir (aka, /usr/libexec on Fedora systems) should be used as the directory for executable programs that are designed primarily to be run by other programs rather than by users.
Fedora's rpm includes a macro for libexecdir, %{_libexecdir}
. Packagers are highly encouraged to store libexecdir files in a package-specific subdirectory of %{_libexecdir}
, such as %{_libexecdir}/%{name}
.
Proposed
Libexecdir
The Filesystem Hierarchy Standard does not include any provision for libexecdir, but Fedora packages may store appropriate files there. Libexecdir (aka, /usr/libexec
on Fedora systems) should only be used as the directory for executable programs that are designed primarily to be run by other programs rather than by users.
Fedora's rpm includes a macro for libexecdir, %{_libexecdir}
. Packagers are highly encouraged to store libexecdir files in a package-specific subdirectory of %{_libexecdir}
, such as %{_libexecdir}/%{name}
.
If upstream's build scripts support the use of %{_libexecdir}
then that is the most appropriate place to configure it (eg. passing --libexecdir=%{libexecdir}/%{name}
to autotools configure). If upstream's build scripts do not support that, %{_libdir}/%{name}
is a valid second choice. If you have to patch support for using one of these directories in, then you should patch in LIBEXECDIR, preferably configurable at build time (so distributions that do not have /usr/libexec
can set LIBEXECDIR to another directory more appropriate for their distro.