On 19/06/11 11:52, Jim Meyering wrote: > I normally use automake built from the head of "master", > but not long ago, it started failing like this: > > src/Makefile.am:141: error: `pkglibdir' is not a legitimate directory \ > for `PROGRAMS' > > That variable determines where we install libstdbuf.so. > > One possibility is to change src/Makefile.am as below, > but that would mean moving libstdbuf.so from > $prefix/lib/coreutils/ to > $prefix/libexec/coreutils/ > and adjusting stdbuf.c, and causing distros to adjust. > > There's probably a less invasive change... > > diff --git a/src/Makefile.am b/src/Makefile.am > index 516e1e5..ef0e7a4 100644 > --- a/src/Makefile.am > +++ b/src/Makefile.am > @@ -138,7 +138,7 @@ bin_PROGRAMS = $(OPTIONAL_BIN_PROGS) > > noinst_PROGRAMS = setuidgid getlimits > > -pkglib_PROGRAMS = $(OPTIONAL_PKGLIB_PROGS) > +pkglibexec_PROGRAMS = $(OPTIONAL_PKGLIB_PROGS) > > noinst_HEADERS = \ > chown-core.h \ > -- > 1.7.6.rc2.4.g36bfb.dirty
Well I used lib/ rather that libexec/ because we don't actually dlload and link against the lib, and also if it was in /usr/lib/ then one can specify the lib without full path to LD_PRELOAD. Though I notice that on Fedora 15 this lib is in /usr/lib64/coreutils so the latter point is moot. The above change might not cause much issues for distros at all? cheers, Pádraig.
