pcp
[Top] [All Lists]

Multi-lib support problem & possible fix

To: pcp developers <pcp@xxxxxxxxxxx>
Subject: Multi-lib support problem & possible fix
From: Nathan Scott <nathans@xxxxxxxxxx>
Date: Wed, 29 Jan 2014 00:43:24 -0500 (EST)
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <1288830274.15173866.1390972567394.JavaMail.root@xxxxxxxxxx>
Reply-to: Nathan Scott <nathans@xxxxxxxxxx>
Thread-index: 0ipK1ld2vXj1dlcvdhOhKBwSTcJrrg==
Thread-topic: Multi-lib support problem & possible fix
Hi all,

A recent automated tool run here within Red Hat has found
a problem with the pcp-libs package which prevents it from
being installed "multilib".  IOW, one cannot install both
32 and 64 bit versions of the libraries at the same time,
which is desirable in some situations (3rd parties linking
with 32 bit variants, wanting their binaries to run on the
64 bit version of the platform, for example).  It would be
good to address this.

In RPM-land, in order for this to work, the files from the
two pcp-libs packages need to either be entirely without 
overlap (in terms of the lib64/32 directories used) or they
need to have exactly the same contents between the two rpms.
There is a section of /etc/pcp.conf which doesn't meet this
need and that is these two lines ...

  PCP_LIB_DIR=/usr/lib64
  PCP_LIB32_DIR=/usr/lib

I initially looked at simply removing these, since they are
not used in the source code directly.  However, I later on
found they are used in builddefs/buildmacros, which might be
used when a third party is building software using pcp-libs
(esp. PMDAs - and possibly just linking 'em - as was done
for pmdaoracle in the past - *sigh*).  So, I became a little
uncomfortable removing these lines from pcp.conf, and looked
about for an alternative.

One possible alternative, which I'm suggesting we attempt,
is to split pcp-libs into two packages - a pcp-libs with
the shared library binaries, and a pcp-conf with the config
and build-config files it has now.  If this works, I think
it is the simplest way to tackle the problem, although as
Frank most accurately describes it, its "a gloriously gross
hack" (sounds like a challenge!).  It relies on the property
that it is OK to have either of the two pcp.conf variants
installed (but only one - either of which can satisfy the
RPM dependency, at least in theory).

One other plus to this inglorious hack, is that its also
been recommended to us as a way to tackle a library issue
in the Debian packaging, over here, again via pcp.conf:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=654616
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=655440

So, at least for some makefile components, we'd be able
to share the solution between the rpm and deb platforms.

Thoughts?  Alternatives?

thanks!

--
Nathan

<Prev in Thread] Current Thread [Next in Thread>