Date: Sat, 30 Sep 2006 15:39:13 +0200 From: Michel Talon <talon@lpthe.jussieu.fr> To: ports@freebsd.org Subject: Re: Yet another INDEX builder. Message-ID: <20060930133913.GA89767@lpthe.jussieu.fr>
next in thread | raw e-mail | index | archive | help
> It took longer on my P4 3.6GHz: > > The tree (15689ports) takes 2789.84287214 seconds to explore. > Now computing the recursively extended dependencies. > Took 3.02815794945 seconds. > Now converting to packages and sorting. > Last phase takes 4.7659368515 seconds. > Total time spent: 2800.94901609 seconds. > python build_index.py 3024,42s user 2050,37s system 181% cpu 46:41,64 total This time 46 minutes is compatible with the timing 2800 seconds. My ports tree has less ports that you own niobe% wc -l /usr/ports/INDEX-6 14186 /usr/ports/INDEX-6 As you can see i am not a frequent updater :-(, which says something about the ease of use of the present system, and more positively about the growth rate of the ports tree. Also perhaps my disk is faster niobe% diskinfo -t /dev/ad0 ... Transfer rates: outside: 102400 kbytes in 2.092096 sec = 48946 kbytes/sec middle: 102400 kbytes in 2.429019 sec = 42157 kbytes/sec inside: 102400 kbytes in 3.887401 sec = 26342 kbytes/sec - this is not a benchmark, and I was using the machine in the same time; I was doing that under KDE myself. - I have several local ports or local tweaks which have been reported as "The port xxx/yyy is obsolete". This is intentional. Since ports are frequently deleted but this deletion is not always effective on you own port tree (for example because there is a remaining README.html here) i compare subdirectories of a top directory to what is in its Makefile, listed as SUBDIR. If a directory exists but is not listed in SUBDIR i mark it obsolete, because i used to think it was a directory which should have been deleted. However i have seen in my port tree such situations, which are obviously strange and need human intervention. I have no idea what is the correct way to resolve these problems, at least thay are flagged. I have also noticed that a number of dependencies are incorrectly presented with trailing / and \n when you run make -V, and i was outputting them, but when i ran the script on the full port tree, there were so many of them, that i censored all that stuff by stripping white space and / at the end of origins. There is however certainly a problem in the way such things are computed. Let the function "clean_path" return "return path.replace(portdir, '', 1)" and you will see them. If you have kept the safe.pkl you can read it and just run everything after "safe = open('safe.pkl','r')", it will run in something like 5 seconds. -- Michel TALON
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060930133913.GA89767>