On Wed, 2015-01-28 at 22:38 +0100, SF Markus Elfring wrote: > > $(eval ...) is a (relatively) recently implemented, very advanced > > feature that exists only in GNU make: no other implementation of make > > has anything like it (that I'm aware of). > > Since which program version are the functions "call" and "eval" > generally available?
The NEWS file that comes with GNU make source has a complete history of all the versions and which user-visible features were added in each: http://git.savannah.gnu.org/cgit/make.git/tree/NEWS?id=4.1 > > So you really just don't need $(eval ...), except in rare situations > > where you really do need it. Nothing you've shown us so far really > > needs it. > > Would you like to adjust your view a bit if you look at my working > intermediate build scripts again? > https://build.opensuse.org/package/view_file/home:elfring:semantic_patching:Deletion_of_checks_before_specific_function_calls/Deletion_of_checks_before_specific_function_calls_in_Linux_source_files/parallel-inc.make?expand=1 I'm sorry, but (a) I'm about to be completely offline for a while, perhaps as long as a week or more, and (b) I don't have time to review large complex makefile environments. If you would like to describe one example of something you're trying to do, in words, then show how you were solving the problem in your makefile then we could critique that. But a quick check of your link above shows no comments or anything in the makefile describing what it does, and I don't really understand the purpose behind all these recipes which consist of if-statements where the body of the recipe is made empty if variables are not set. I will also mention that I see you using various bash-specific shell features (e.g., 'XY=$${XY/|/ }'), but I don't see any setting of "SHELL = /bin/bash" in your makefile; unless you do this then your makefiles will fail on any system where /bin/sh (which is the default setting for SHELL in make) is not bash; this includes, as an example, all Debian-derived instances of GNU/Linux including Ubuntu, as well as almost all non-Linux-based UNIX systems. _______________________________________________ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make