Let's suppose I have no the HsColour program installed and I install QuickCheck
$ cd /tmp/
$ cabal get QuickCheck
$ cd QuickCheck
$ cabal install
...
[ 1 of 15] Compiling Test.QuickCheck.Random
...
[15 of 15] Compiling Test.QuickCheck
...
Installed QuickCheck-2.7.6
If I install QuickCheck again, it is not recompiled, that is, I don't see the lines
[ 1 of 15] Compiling Test.QuickCheck.Random
...
[15 of 15] Compiling Test.QuickCheck
but if I install HsColour current version (1.20.3) and I install QuickCheck again, QuickCheck is recompiled.
QuickCheck is also recompiled if
- I install HsColour,
- I install QuickCheck,
- I removed the HsColour binary and
- I install QuickCheck.
I tested this behaviour with GHC 7.8.3, Cabal 1.20.0.2 and cabal-install 1.20.0.3, and the development versions of Cabal and cabal-install (using https://github.com/haskell/cabal/commit/5ef7d84bb25cc5d53ad124978922f2c96bedb7d4).