There are easier ways to accomplish build ordering using tsort(1) and a minor amount of scripting with the same simplifying assumptions your program is making: 1) no cycles 2) every package provides its own name 3) every package supplies prerequisite package names without versions
tsort(1) just needs 1 line of input for each package containing the name followed by a list of prerequisites ending with a new line More important than build ordering is scheduling a set of builds efficiently across multiple build machines to complete in the shortest amount of time taking into account the cost in memory and cpu time of each package build. _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/NSQZKDOHSTZLI2LJXTLIVJRFKAZT4VEM/