I would like to propose a new option to the 'make' command which instructs the software to change the order of execution of same-level rules according to past success or failure, in order to reduce average turn-around times in software development.
Consider a target T, which depends on components C_i (i=1,..n), which in turn depend on a root component R. Suppose 'make T' failed with an error in component C_j. The user modifies file R, and reruns 'make T'. As per now, Make will process C_1, .., C_n. However, in a typical software development situation, the compilation is much more likely to fail again on C_j than on any other single component. Therefore, it would be rational for Make to change the compilation order to C_j, C_(j+1), .., C_n, C_1, .., C_(j-1). Implementation would require Make to store and retrieve information about the last compilation outcome, possibly in a hidden file ".make.result" or similar. This would be a considerable modification, and therefore should not be enacted by default. Therefore I propose to add a command-line option that enables logging and heuristically modified compilation order. Would you agree that such enhanced functionality is desirable? Would it be feasible within GNU Make's current architecture? - Joachim ------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------ Forschungszentrum Juelich GmbH 52425 Juelich Sitz der Gesellschaft: Juelich Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498 Vorsitzender des Aufsichtsrats: MinDir Dr. Karl Eugen Huthmacher Geschaeftsfuehrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender), Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt, Prof. Dr. Sebastian M. Schmidt ------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------ _______________________________________________ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make