pcp
[Top] [All Lists]

Re: Makepkgs fallout

To: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Subject: Re: Makepkgs fallout
From: Nathan Scott <nathans@xxxxxxxxxx>
Date: Wed, 28 Nov 2012 17:14:15 -0500 (EST)
Cc: pcp@xxxxxxxxxxx
In-reply-to: <1354133548.1662.12.camel@xxxxxxxxxxxxxxxxxxxxxxx>
Reply-to: Nathan Scott <nathans@xxxxxxxxxx>

----- Original Message -----
> > Let me distract you ;) by saying there is more of a problem around
> > not needing any mechanism for conditional code building in qa/src/.
> > e.g. qa/src/unpack.c uses pmEventRecord, which is post-3.5.0 only.
> > This should be a problem no matter where qa lives ...
> 
> I believe the problem is that I failed to build/design unpack.c
> properly ... if I'd done a better job here, you would not have had
> the anguish you had.
> 

No anguish - that was just a simple example to show how (I thought)
the compat macros were not applied to sources (and hence not useful
in general after a short time).  I'm certain there are many cases of
this.  But, if you are having to work around it, we need to address
it properly, as below.

> > A possible approach would be to invent a mechanism for using
> > PCP_VER
> > in the source makefile too (?) and having a policy of culling
> > compat
> > macros after N new releases have been made.
> 
> I would support this approach, although I am not sure how we'd
> enforce
> the annotation in the first place.  Is this the sort of thing you had
> in
> mind?

Yep, either in the code (probably most flexible) or in the makefile
to avoid building the affected binary altogether (probably easier to
trigger a test _notrun when no binary found).

> 
> > > In one case (the build) you _want_ to use include files and
> > > pcp.conf
> > > from ../src/include ... in the other case (running QA) you _want_
> > > to
> > > use
> > > the installed versions of the include files and pcp.conf (from a
> > > packages build).
> > 
> > This is the same issue that several PMDAs have (with the
> > GNUmakefile
> > and GNUmakefile.install split) ...
> 
> I don't agree ... this is not a GNUmakefile vs GNUmakefile.install
> issue.
> 
> The build does
>       make
> which ends up descending into qa and qa/src
> 
> When running QA I want to
>       cd qa
>       ./check something

Oh now I understand.  Perhaps the suggestion to have check respect
GNUmakefile.install if present will help though, and gets us back
to our familiar pattern of what those two makefiles represent?

cheers.

--
Nathan

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