[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

I made a script for auto. creating build-depends


After the recent questions how to automatically create a list
of packages that belong to the build dependencies line I've wrote 
a perl script, that reads the file generated by
	# strace -f -F -e trace=file -o /tmp/trace debuild
and produces a list like:
	binutils (>=
	cpp (>= 1:2.95.2-6)
	debhelper (>= 2.0.82)
	dpkg-dev (>= 1.6.9)
	file (>= 3.28-1)
	gcc (>= 1:2.95.2-6)
It takes essential packages and the build-essentials list into account.

The script was inspired by a mail a got from someone half a year ago
who had the idea with strace but never wrote a complete program of it.

Technically the programm looks for all execve and open calls that are
successfull, then filters all files/directories that are known to be
unrelated to our problem, links the filename to the Debian package and 
then filters all (build-)essential packages (and of course print warnings
for files that are not in any /var/lib/dpkg/info/*.list file).

I post this (relative short) script to this list to get some comments.
If it's finally ok, I write a patch to incorporate it into debuild or
even better into some kind of dh_builddepends which gets called at the
very end of the rules file.

Hope to hear from you,


           Disappointed by the apes God created mankind.
          After that he resigns from further experiments.
                           (Mark Twain)
Linux - the choice of the GNU generation.           Join the Debian Project 
Christian Hammers * Oberer Heidweg 35 * D-52477 Alsdorf * Tel.: 02404-25624
0AA3 E879 1D82 F59E 77A4 0096 911F 4AE6 86A1 18E6 1024D/86A118E6 1999-09-17

Attachment: strace2builddepends.pl
Description: Perl program

Attachment: pgpQq9FXO9LZW.pgp
Description: PGP signature

Reply to: