Re: Confusion over documentation wording, variable usage, and scope
From:
Garrett Cooper
Subject:
Re: Confusion over documentation wording, variable usage, and scope
Date:
Tue, 20 May 2008 22:09:14 -0700
Paul, I've followed your suggestions and let me keep it simple this time:
I don't understand why make isn't properly inserting values from the define statement in the define statement.
My $(filter ...) and $(filter-out ...) logic was correct -- I verified with a sample example. However, when I used $(warning __generic_target), all that was printed out a null value following the assignment. This confuses me because (with my limited understanding of make), the assignment / substitution should not be occurring all at once, but instead should be deferred until $(eval ...) is called.
I'm thinking of revising the infrastructure to follow more of a FreeBSD ports-like include setup (include Makefile.inc, and recursively include parent dir's Makefile.inc all the way up the tree to parent), but this still won't solve the issue I'm seeing with $(filter*) and the null values I think. However, that will eliminate some of the confusing $(eval ...) statements I'm currently using within the defines.
Are there any known caveats to using built-in make functions from within define'd statements that anyone knows of? Also, is there a built-in equivalent to Makefile.inc with ppmake as there is with gmake (e.g. a file that automatically gets searched for and included)?
Would you guys also have an issue with me helping make the error messages a bit more intuitive? It's hard to tracking down issues associated with some of the other error messages in define statements and in general.