----- 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
|