Darcs ===== This is the source tree for darcs, a distributed version control system written in Haskell. For more information, visit the darcs web site: http://www.darcs.net Compilation and Installation ============================ Darcs currently supports two build systems: a traditional autotools- based system, and an experimental cabal-based system. Currently AUTOTOOLS IS RECOMMENDED; in later releases it will be deprecated and eventually removed (in favour of cabal). If a "configure" file is present, autotools is supported. If a "Setup.lhs" file is present, cabal is supported. Currently there is a separate source tarball for each build system; either can be used in unstable checkouts. Using Autotools --------------- If you have the normal, autotools-based tarball, this sequence should work for you (if you are in doubt, this is likely the case): $ ./configure $ make # make install You first need to run `autoconf` if you obtained the source tree from the darcs repository (but this is not needed for release tarballs). For more information, please see the manual: * http://www.darcs.net/manual * doc/manual/darcs.ps Using Cabal ----------- This method requires the cabal package, version 1.6 or higher. The cabal-install package is also recommended. If you have the "cabal-install" package on your system (that is, there is a "cabal" executable in your path), you can use the following commands to create an executable in ~/.cabal/bin/darcs. $ cabal configure $ cabal build $ cabal install Otherwise, if you have the "cabal" package but not the "cabal-install" package, run the following: $ runghc Setup configure $ runghc Setup build $ sudo runghc Setup install You may also omit the last step and copy the darcs executable (found in dist/build/darcs/darcs) to a location of your choosing. More detailed instructions can be found at including instructions on obtaining a copy of cabal-install. Please also note that the cabal-based build by default requires the cURL library (and development headers). If, for some reason, you cannot provide cURL, please pass "-f-curl" to the configure step above. Hacking ======= For more information about darcs hacking and best practices please check the darcs wiki at http://darcs.net/DarcsWiki Of particular interest are the following documents: * http://wiki.darcs.net/index.html/DeveloperFAQ * http://wiki.darcs.net/index.html/DeveloperTips Testing ======= For more information about the test suite, including how to run specific tests please read tests/README.test_maintainers.txt. Happy hacking!