Glynn/Laca:

After thinking about this a bit, I think I have a suggestion that
would probably make ARC happy and not involve too much extra work.
Perhaps we could simply install the pc files for these temporary
interfaces to a non-default location.  Instead of installing them
to /usr/lib/pkgconfig, we could install them to a private directory
(perhaps /usr/lib/pkgconfig/private.  Then we simply need to update
the spec files for the packages that need to build with these libraries
to set PKG_CONFIG_PATH and things should work just fine.

This is a fairly simple and non-invasive modification that would
allow us to tell ARC that we are properly hiding these interfaces
from end-users, but people who want to build with them (including
ourselves) can do so if they just set an environment variable.
We can probably argue that shipping include/library files to the
default location is okay as long as we don't install the pc file
to the default location.

Does this sound better?  I think doing this bit of extra work would
make ARC'ing the project more simple.

Glynn suggests that we shouldn't waste our time doing this because
"there are plenty of other libraries installed by us that we wouldn't
encourage using".  I don't think that making a mistake in the past is
a good reason for making mistakes in the present.  If there are pc
files that we install to /usr/lib/pkgconfig that we really don't want
people to use, then we should review them and also move them to a
non-default location.  Glynn, what specific pc files do you think
we install that we would discourage end-users from actually using?

Quickly looking over the ones we do install, I think that most are
reasonable.  I think it is reasonable to ship pc files for GNOME
Platform libraries, low-level libraries that GNOME depends upon,
and GNOME desktop libraries if it is common for applications to
depend on them.

Brian


>>>> Then before these spec files go into our build, can the spec files
>>>> be updated so we build in this way? 
>>> What you're suggesting is simply that we don't integrate the -devel
>>> package into Solaris.
>>> I disagree with that, though:
>>> 1) it will be required for rebuilding parts of our product
>>> 2) even if we don't encourage using these interfaces, if a developer
>>>    is interested in trying them, why make it more difficult?
>> That's a good point.  Then, I'd recommend that we install files to a
>> more private location than to /usr/include and /usr/lib.  Perhaps
>> to /usr/include/notify, /usr/lib/notify, etc.  We possibly wouldn't
>> want to install the .pc files and instead hack the configure files
>> that might be looking for pc files to just know that they can build
>> with these modules installed to whatever location we install them.
> 
> I don't think we should waste time doing this - there's plenty of other
> libraries installed by us that we also wouldn't encourage using [or at least,
> using with a very obvious warning].
> 
> 
> Glynn


Reply via email to