Hi, here is some very preliminary code for dh-coq, which should avoid breaking user systems with every upload. Indeed, each time I upload one of the libcoq-* packages, it introduces inconsistent assumptions that break other packages (none or all depending on the dep graph). The goal here is that when I upload a new package, user systems see it will break the rest and won't update until they have compatible versions for all installed packages. The trivial coq.pm should go to /usr/share/perl5/Debian/Debhelper/Sequence/, and the less trivial dh_coq should be executable and in $PATH. After that, it should be possible to take one of the fourteen coq packages and: - in d/control add ${coq:Depends} to the libcoq-foo package's Depends ; - in d/control add ${coq:Provides} to the libcoq-foo package's Provides. - in d/rules add "coq" to the "dh $@ --with" line. It is then expected that the binary libcoq-foo packages contains a new /var/lib/coq/md5sums/libcoq-foo.checksum with a short code ; the dpkg- deb -I command should tell you that the package provides libcoq-foo- <code> (and the code is the one in the .checksum), and in the depends, you should see the libcoq-* your package build-depends on (un- checksummed). Now cheat, create /var/lib/coq/md5sum/libcoq-bar.checksum containing 314159, rebuild and (assuming libcoq-bar is indeed one of the b-deps) the package should now depend on libcoq-bar-314159. What's missing? 1. I learnt Perl today just to write this code, so it probably needs review by a more experience developer ; 2. it isn't commented (I'll work on it next) ; 3. it isn't a Debian package yet (I'll work on it next next) ; 4. it doesn't auto-detect the real deps -- it merely parses d/control's B-Deps -- for the moment it's not possible to do better as far as I know. Comments and suggestions are welcome, J.Puydt
Attachment:
coq.pm
Description: Perl program
Attachment:
dh_coq
Description: Perl program