[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#638411: debian-rules-missing-*-target fooled by variables



Niels Thykier <niels@thykier.net> writes:

> I disagree that we should blindly assume that a "variable"-target as a
> wildcard.  Consider Lintian's d/rules that has:

> $(profiles): $(allchecks) private/generate-profiles.pl
>         LINTIAN_ROOT='.' private/generate-profiles.pl

> This is completely unrelated to build-arch and build-indep, but its
> presence would (as I understand you) make Lintian assume that
> build-(arch|indep) is now present.

Yup.

Mostly I would have made that choice because it's a lot simpler and I
don't think there are very many packages that use variables for rule
targets, and most of the ones that do have a fairly sophisticated build
system.  But...

> The alternative is to track variables and understand make.  In theory
> this very quickly becomes hard (to do right).  However, if we assume
> that people, who would use variables this way, are a bit sane, we can
> get away with a far simpler approach.
>   Attached is a patch that does very simple (and in some cases even
> incorrect[1]) tracking of variables and their values (ignoring tons of
> rules).  I still suspect it will not cause a not of false-negatives and
> should reduce the number of false-positives.

...if you're willing to do the work, I'm certainly okay with this.  :)
We haven't gotten a lot of complaints about this yet, so if handling the
simple cases along these lines makes people happy, that's an even better
solution.

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>



Reply to: