
On Wed, Apr 23, 2008 at 4:49 PM, Gwern Branwen
On 2008.04.23 12:26:35 -0700, Philip Weaver
scribbled 1.2K characters: It looks quite clean (no funny business in Setup.lhs). I would favor using this cabalized version over the other. Thanks!
So, autoconf/configure generate cryptol.buildinfo from cryptol.buildinfo.in. Did you change configure.ac much?
I had to make a number of changes to configure.ac - the problem was that a lot of Darcs capabilities get modified through CPP; hence the darcs.buildinfo, to smuggle exported variables from the configure script to Cabal and to insert them in the correct fields. But not all of the necessary information was exported, so I had to fix that. Straightforward if you understand what you need. But there seems to be very little documentation on Cabal and buildinfos, so I had to do a bit of trial-and-error.... (Also, I dunno how you guys do Cryptol so can't speak to that.)
Trial-and-error was my experience with buildinfo files, too.
And the Makefile is no longer needed at all, right?
- Phil
Strictly speaking, the Darcs makefile does a lot of stuff besides just building and installing - it also generates various forms of documentation (Haddocks, the LaTeX manual for Darcs), run the tests, and do quite a bunch of miscellaneous stuff like support for some Windows installer and Debian package format. Some of this could no doubt be handled in a pure Cabal framework (ie. I understand Goerzen has a package which can automatically take a Cabal tarball and make a Debian source deb), but I was just aiming at the building part. If that's all you need (like most users), then the makefile isn't needed, yes.
So do you feel like this process yielded an easier to maintain build system?
-- gwern BLACKER Loin JAVA anthrax AG Zemin The Internet Sayeret 3P-HV