On Wed, 2008-11-12 at 13:36 +0100, Mary Ellen Foster wrote:
Yesterday, there was a bug report on pl (SWI Prolog), a package that
I
co-maintain (
https://bugzilla.redhat.com/show_bug.cgi?id=471071), and
I'm not sure what to do about it.
I guess SWI assumes that it will be installed with all of its
libraries and related files into a single directory structure, not
following the normal LSB file layout. In the pl-devel package at the
moment, the libraries etc. are under %{_libdir}/pl-%{version}, and
this directory also ends up as the "PLBASE", but the include files are
in their LSB-approved place under /usr/include/pl.
What is the best way to respond to this? I assume it's not encouraged
to put *.h files into %{_libdir},
Right, but there also is no strict ban on doing
so.
More precisely, there are situations when it's advisable to put headers
into some directory below %{_libdir}.
For example, multilib architecture dependent header files are such a
case (c.f. glibc2-devel).
but on the other hand, breaking
upstream assumptions like this isn't great either. PLBASE is
documented as "the home directory of SWI-Prolog", but I'm not sure if
it's actually guaranteed anywhere that .h files will be in this
directory.
I would doubt this.
In general, any user expectation on where a set of headers is installed
will inevitably be wrong somewhere and will require adaptation of
applications build-files/makefile.
Suggestions welcome!
The decision is more or less up to you.
I would not move them to %{_libdir}.
Ralf