Hello
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 (>= 2.9.5.0.22-4)
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,
-christian-
--
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
http://www.debian.org
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