MetaMake doesnt create dependancies consistantly across systems, due to the fact it parses mmakefile.src's in the order the filesystem provides them. This results in some targets being ordered differently if the directory the mmakefile.src resides in is newer than directories before it - and in some cases prevents AROS building due to headers not yet being created/copied.
For consistancy, MetaMake should try to always parse directories in the same order on all platforms.
I disagree, if something has to be build before something else there should be an explicit dependency. I'd rather make a randomize switch to mmake that shuffles independent metatargets before building and enable that for nightly builds.
Last edit: Staf Verhaegen 2016-02-08
On 8 February 2016 at 19:20, Staf Verhaegen verhaegs@users.sf.net wrote:
Because? What benefit do you see having random behaviour between systems?
And what about all the people who have problems they cant understand
because of the wrong behaviour? don't get me wrong - I agree things need to
have the correct rules, but having insistencies between builds on systems
is not a benefit imho.
P.s. - saying "i want to do it different" for no good reason, or with no
reasoning isn't a valid objection imho.
Call it the enforcer option for metamake; like Enforcer brought forward wrong page accesses hidden on non-MMU machines this option will bring forward incomplete dependencies.
Basically depending on implicit order will break when we make metamake itself multithreaded like problems that had to be fixed when we started calling make from metamake with multithreading enabled.
Second reason is that I (if I eventually work on AROS again) want to modularize the source code tree so people can only check out the parts they are working on and then the parsing will also differ from machine to machine by definition.
I do agree there is big room for improvement of visualizing and debugging the metamake dependencies, but this is another feature request.
Last edit: Staf Verhaegen 2016-02-08
On Monday, 8 February 2016, Staf Verhaegen verhaegs@users.sf.net wrote:
Related
Bugs:
#502