On Sat, Feb 26, 2005, Michael van Elst wrote: >On Fri, Feb 25, 2005 at 06:10:04PM -0800, Bill Campbell wrote: > >> While updating a SuSE 9.2 Professional system from Release 2.2 to Release >> 2.3 today I have run into quite a few issues with dependency order >> problems. > >There are dependency problems that cannot be solved. This happens mostly >when packages or options are renamed or when the dependency graph changes >significantly between releases. > >In the latter case a clean install instead of an upgrade using -za instead of >-Ua >should work. > >This doesn't mean that there are no bugs in the build tool :-| > >> I've looked at the code for the build.pl program, and am not >> ready to dig into it yet to figure out how it's handling this. > >In short: > >1. identify which packages you want to have installed by looking up the most >recent > version in the repository (or if missing, the one that is already > installed). >2. for each such package > 2a. if the package is already on the TODO list, ignore it.
... Lots of interesting details deleted... Given all the heavy lifting above, you have a list of packages that need to be rebuilt, and should also have the names of packages that each of these require. I think that ``tsort'' may help by determining the order in which these packages have to be built/installed. For example, if I have a list of package/require pairs: autoconf m4 automake autoconf automake libtool automake m4 gcc make libtool m4 openpkg-tools perl perl gcc perl-xml perl If I run this through ``tsort | tac'' it will give me a list of the packages in the order I need to build them (tac is necessary to reverse the order as tsort generates the list in reverse order). make gcc m4 perl autoconf libtool perl-xml openpkg-tools automake BTW: Both programs, tsort and tac, are part of coreutils. Bill -- INTERNET: [EMAIL PROTECTED] Bill Campbell; Celestial Software LLC UUCP: camco!bill PO Box 820; 6641 E. Mercer Way FAX: (206) 232-9186 Mercer Island, WA 98040-0820; (206) 236-1676 URL: http://www.celestial.com/ ``Independent self-reliant people would be a counterproductive anachronism in the collective society of the future where people will be defined by their associations.'' 1896 John Dewey, educational philosopher, proponent of modern public schools. ______________________________________________________________________ The OpenPKG Project www.openpkg.org Developer Communication List openpkg-dev@openpkg.org