Hi,
Am Dienstag, den 15.06.2010, 15:31 +0200 schrieb Mehdi Dogguy:
> [ I'm posting back to the Debian OCaml Maint ML on
> purpose. Thanks for keeping the CC in the future ]
sorry, overlooked that.
> Nomeata said:
> >> Am Dienstag, den 15.06.2010, 13:31 +0200 schrieb Stefano Zacchiroli:
> >> Then ghc6 (the compiler) started to introduce ABI hashes for the 
> >> management of packages (in the Haskell sense). That was the point at
> >>  which I decided that it’s time to use them in Debian as well. IIRC 
> >> this is a minor difference to your approach: While you have to 
> >> calculate a hash of the interface yourself, we can just use the hash 
> >> provided by ghc6 (but shortened to 5 chars, just as yours)
> >> 
> 
> We don't compute the hash for the interface. That's delivered by OCaml. We
> compute only an ABI for the whole library (or package).
Ok, in the case of haskell, this hash is provided by the compiler. Small
difference though.
> What we were interesting in is the details of the implementation,
> or some text describing the design behind your tool. Is such a
> document available or should we look at the source code?
There is no document. The haskell policy that you might find is terribly
outdated. So the code¹ is the only documentation, but it’s pretty
simple:
 * substvars ${haskell:Provides} are generated based on the exposed
package hash in the form
 libghc6-<lower-cased cabal name>-{dev,prof}-<first 5 chars of hash>
 * for ${haskell:Depends}, for every dependency the expected virtual
package name as above is calculated. If dpkg knows about it, this it the
dependency, otherwise there is a fallback on a
upstream-version-constrained dependency on the package name.
Greetings,
Joachim
¹ http://darcs.debian.org/pkg-haskell/haskell-devscripts/
-- 
Joachim "nomeata" Breitner
Debian Developer
  nomeata@debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C
  JID: nomeata@joachim-breitner.de | http://people.debian.org/~nomeata
Attachment:
signature.asc
Description: This is a digitally signed message part