Skip to content

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
This comparison is big! We’re only showing the most recent 250 commits
Commits on Jan 31, 2005
@SyntaxPolice SyntaxPolice more sanity checking 4c4ad49
@SyntaxPolice SyntaxPolice cleaned up comments a56ab90
@SyntaxPolice SyntaxPolice renamed moveSources to smartCopySources 9779ad8
Commits on Feb 03, 2005
@SyntaxPolice SyntaxPolice makefile fix for Cabal.cabal 57a8598
@SyntaxPolice SyntaxPolice cvs pull from krasimir and ross, mostly hooks
  Move buildable, cc-options, ld-options, frameworks and hidden-modules
  fields into BuildInfo, so they can be overridden with local info.
  As a consequence executable-modules is replaced with hidden-modules.
  Perhaps other-modules would be a better name.

  No longer expect a name field at the head of the library stanza --
  it's redundant, and the pretty printer can't produce it.

  Another way to manage the mapping of component names to BuildInfo's
  would be to use the filesystem, i.e. look for <package>.buildinfo,
  <exename1>.buildinfo, <exename2>.buildinfo, etc, each parsing as a
  single BuildInfo.

  Change the postHook types

  Query system for "c:\Program Files"

  Add shell32 to extra-libs under Windows. It is required because
  SHGetFolderPath is called from Distribution.Simple.Configure now.
@SyntaxPolice SyntaxPolice cleaned up test cases. fixed small bugs 70041fe
Commits on Feb 04, 2005
@SyntaxPolice SyntaxPolice added programatica support (may remove)
On a whim (and since I randomly ran into Thomas Hallgren on the train
today) I added support for Programatica, via pfesetup.  It doesn't
probably do quite what one would want it to do since it preprocesses
everything and slaps it into dist/tmp, but it may be interesting
nonetheless, and we can clean it up later if anyone thinks we should
keep it around.

It was very easy to add and looks a lot like the haddock command.  Try
it with ./setup pfe.  It doesn't do anything too interesting to the
cabal sources yet since it can't find a bunch of modules.  It would be
great if someone added all the fptools modules to it :)
@SyntaxPolice SyntaxPolice description -> cabal for wash2hs 95b400f
@SyntaxPolice SyntaxPolice tweaks to pfe interface fa930f2
@SyntaxPolice SyntaxPolice cvs pull. haddock fixes 560f550
Commits on Feb 05, 2005
@SyntaxPolice SyntaxPolice darcs pull from ross paterson
  Now the only dangling links are in System.Directory, referring to the
  hidden module GHC.IOBase for constructors of IOException.
Commits on Feb 10, 2005
@SyntaxPolice SyntaxPolice cvs pull 6b7113b
@SyntaxPolice SyntaxPolice cvs pull, doc and examples 67e7883
@SyntaxPolice SyntaxPolice added a few comments and examples 6d72430
@SyntaxPolice SyntaxPolice Added support for preprocessors in the UserHooks.
Very simple, backward-compatible change.  Not sure how this never
happened before, it would be a shame to have worked on the
preprocessor interface and not exposed it to users at all.

Took this chance to move the test preprocessor out of the
PreProcessors module and into a test case.
@SyntaxPolice SyntaxPolice moved Setup.description to foo.cabal aae248f
@SyntaxPolice SyntaxPolice first stab at preprocessors a799805
@SyntaxPolice SyntaxPolice cvs pull from ross; haddock documentation 365705a
Commits on Feb 11, 2005
@SyntaxPolice SyntaxPolice cvs pull from ross
  add flags arguments to post-hooks, and have defaultUserHooks use postConf
  instead of preConf.

  changes to package description fields, as discussed on the libraries list:
  * allow both License and License-File, which now correspond to different
    fields of Package Description.
  * add Synopsis.
  * rename Hidden-Modules as Other-Modules.
@SyntaxPolice SyntaxPolice fixed tests cases to match ross changes 85af20f
Commits on Feb 12, 2005
@SyntaxPolice SyntaxPolice now override preprocessors with those from hooks dfc1b5d
@SyntaxPolice SyntaxPolice fixed sdist a little, exported basicStanzaFields at request of the ha…
…ckage author
@SyntaxPolice SyntaxPolice pull from cvs ross paterson
  skip non-buildable executables when preprocessing, building and
  installing (as we do for libraries).
@SyntaxPolice SyntaxPolice added HSQL and various Distribution.Make bugfixes 95683f5
@SyntaxPolice SyntaxPolice GNUmakefile for non-fptools build b2760b2
@SyntaxPolice SyntaxPolice test case for hsql (makefile) and fixed commas in ModuleTest c4f6051
@SyntaxPolice SyntaxPolice test -> tests 39d8c97
@SyntaxPolice SyntaxPolice moving ModuleTest into tests, trying to syncronize CVS and darcs for …
@SyntaxPolice SyntaxPolice deleted generated files 9c9f3ab
@SyntaxPolice SyntaxPolice export all of System.Directory from Compat/Directory 69b2600
@SyntaxPolice SyntaxPolice refactoring of Distribution.Make 720d484
@SyntaxPolice SyntaxPolice added missing commands to Distribution.Make e901265
Commits on Feb 13, 2005
@SyntaxPolice SyntaxPolice cvs pulls from ross paterson
**  fix executables and installation locations for Hugs

**  only create the installedConfigFile if the package has a buildable library.

** Regularize treatment of --verbose:
  * no longer a global option (it was ignored there)
  * added to configure and clean, so it's an option for all commands
  Also fixed the Usage message and clobbered placeholder long descriptions.
@SyntaxPolice SyntaxPolice added hooks to commands lacking hooks 00f6c97
@SyntaxPolice SyntaxPolice some FIXMEs 3adc0c4
@SyntaxPolice SyntaxPolice FIXMEs d8683b7
@SyntaxPolice SyntaxPolice cleaning up warnings ce10935
@SyntaxPolice SyntaxPolice cleaning up warnings e20f2b2
@SyntaxPolice SyntaxPolice updated TODO f727ed3
@SyntaxPolice SyntaxPolice cleaned up tests for ghc 6.4, added --user and --global flags to unre…
@SyntaxPolice SyntaxPolice small fix and clarify section 2.2 b3850b4
@SyntaxPolice SyntaxPolice updated TODO 02fbf35
@SyntaxPolice SyntaxPolice cvs pull: fix copy-install for hugs 879b62c
Commits on Feb 14, 2005
@SyntaxPolice SyntaxPolice from ross: misc tweaks, some stuff on make, and removed the users sec…
@SyntaxPolice SyntaxPolice rawSystemEmit bd33d6b
@SyntaxPolice SyntaxPolice cleaned up some types 5b1df68
@SyntaxPolice SyntaxPolice starting to refactor test suite bd7e7db
@SyntaxPolice SyntaxPolice refactor wash2hs and withHooks tests e830c92
@SyntaxPolice SyntaxPolice Refactored test suite and ported to (CVS) Hugs!
Found the following issues:
** install --user for hugs doesn't work at all

** install for hugs doesn't know the trick of checking in the library
   directory for other-modules while building an executable

** copyFile for hugs doesn't work on binaries?  I get an error about
   encodings during copy step when cross-installing GHC libraries with
   Hugs build.  This may mask other problems since its hard to test
Commits on Feb 15, 2005
@SyntaxPolice SyntaxPolice some TODOs 98026a8
@SyntaxPolice SyntaxPolice cvs pull from ross and simonMar
  Configure dependencies properly, by querying hc-pkg for the package list.

  We should pass the full package id (including version) to ghc now that
  we know it, not just the package name.

  buildHugs: use ppCpp (calling cpphs) instead of invoking cpp directly.

  Also removed the unused exeDependencies.

  Add --user flag to configure

  Doc setup configure --user/--global

  Minor doc tweaks

  Hugs only: use binary handles for copyFile
@SyntaxPolice SyntaxPolice fixed ghc-pkg versioned depends bug
Fixed bug for ghc < 6.3 where call to ghc-pkg during configure step
was unconditional.  Now only call ghc-pkg to get versioned
dependencies if >= 6.3. revived buildDepToDep as setDepByVersion,
which sets the exact version number if supplied by the package
description in any case where we can't query the HC-pkg system.

minor fix to withHooks test for hugs
@SyntaxPolice SyntaxPolice basic emit registration script when verbose > 10 57c06e8
@SyntaxPolice SyntaxPolice basic self-contained registration script. still uses -v11 83b2483
@SyntaxPolice SyntaxPolice added tests for reg scripts; some cleanup a037fbe
Commits on Feb 16, 2005
@SyntaxPolice SyntaxPolice bump version number before release 6cebd04
@SyntaxPolice SyntaxPolice added --gen-script to register and unregister a3b9968
@SyntaxPolice SyntaxPolice more testing and testing tweaks 571a09b
@SyntaxPolice SyntaxPolice chmod +x reg scripts 813151e
@SyntaxPolice SyntaxPolice updated TODO b7c3710
@SyntaxPolice SyntaxPolice fixed redundancy in A test case 6c911b7
Commits on Feb 18, 2005
@SyntaxPolice SyntaxPolice fixed c-sources executables for GHC only a7d658d
@SyntaxPolice SyntaxPolice cvs pull from Simon Marlow
  Clean up parsing & pretty-printing.
  Most list fields now have consistent syntax:
    - commas are optional
    - each element of the list is either
  	- a sequence of one or more non-space non-comma characters
  	- a quoted string in Haskell 98 lexical syntax
  The build-depends field still requires commas, because the elements
  can contain whitespace.
  I merged fieldGet/fieldShow in StanzaField into a single field for
Commits on Feb 19, 2005
@SyntaxPolice SyntaxPolice CVS pulls from ross and krasimir
  Clean up parsing & pretty-printing.
  Most list fields now have consistent syntax:
    - commas are optional
    - each element of the list is either
  	- a sequence of one or more non-space non-comma characters
  	- a quoted string in Haskell 98 lexical syntax
  The build-depends field still requires commas, because the elements
  can contain whitespace.
  I merged fieldGet/fieldShow in StanzaField into a single field for

  display some messages when verbosity > 0
  extraLibs and extraLibDirs were ignored when building for GHC

  Rename package description fields as in InstalledPackageInfo:
  	options-ghc -> ghc-options
  	options-hugs -> hugs-options
  	options-nhc -> nhc-options
  	extra-libs -> extra-libraries

  document syntax changes.
  Perhaps executable should be a token instead of freeform?

  installHugs: treat Main the same as other modules
@SyntaxPolice SyntaxPolice cleaned up test cases bccde0d
@SyntaxPolice SyntaxPolice added simple script for running tests w/ ghc (tests hugs also) 96434e5
@SyntaxPolice SyntaxPolice prepare for Debian release 0.5 16cf95c
@SyntaxPolice SyntaxPolice fixed cp -r cca7dd0
@SyntaxPolice SyntaxPolice moved record to right place 72fa5f0
@SyntaxPolice SyntaxPolice source 017398a
@SyntaxPolice SyntaxPolice lintian complains about 'source' 5987eca
Commits on Feb 20, 2005
@SyntaxPolice SyntaxPolice TAG 0.5 950febc
@SyntaxPolice SyntaxPolice bumping versions back to 0.6 post-release dc1fdf5
Commits on Feb 22, 2005
@SyntaxPolice SyntaxPolice cvs pull
krasimir: {un}register.bat
ross: small doc fixes, and {un}register.bat docs
      added verbosity to defaultUserHooks
@SyntaxPolice SyntaxPolice implemented check for required fields
As described in message to libraries@, except that because of the way
the parser is structured, I can't check for an altogether missing
license.  Instead I warn if they say AllRightsReserved.
Commits on Feb 26, 2005
@SyntaxPolice SyntaxPolice cvs pull
some haddock fixes
updates to the manual (from ross):
  make copyright, maintainer and synopsis optional again.
  document required fields, plus a few assorted tweaks.
Commits on Mar 12, 2005
@SyntaxPolice SyntaxPolice doc fixes 5c111ff
@SyntaxPolice SyntaxPolice TAG 0.6 d93c4ab
Commits on Mar 15, 2005
@SyntaxPolice SyntaxPolice added / fixed haddock code 6d76a53
Commits on Mar 17, 2005
@SyntaxPolice SyntaxPolice fixes to parser from krasimir, fixes to sdist from ross
Krasimir says:
  Small fixes in the parser/printer. When there is a package description with
  executables only then the old implementation of pretty printer was written
  to print empty "exposed-modules" field while there isn`t any library. After
  that the parser will generate PackageDescription with (Just emptyLibrary)
  instead of Nothing. Now exposed-modules field is printed only if
  library /= Nothing

Ross says:
  In smartCopySources, don't try to strip the prefix if it was ".",
  because joinFileName "." x == x
  (fixes bug reported by Iavor Diatchki)

  Improve sdist a bit: copy files named in main-is, license-file and c-sources.
  Also supply a default Setup.hs if none is present.
  This will get it working for only the simplest of packages.  It omits
  header files, configure stuff and files named in the buildinfo file.
  To do it properly, we'd need a field in the package description listing
  extra files to copy into a source distribution.
@Lemmih Lemmih Fixed bug in 'smartCopySources'
smartCopySources dropped the prefix of source paths with length+drop. This fails when the prefix is eg. ".".
Commits on Mar 20, 2005
@SyntaxPolice SyntaxPolice fix bug in ghc > 6.3 where it wasn't reading from stdin :( 1b888f3
@SyntaxPolice SyntaxPolice wibble last commit, only if genScript true 859893c
@SyntaxPolice SyntaxPolice fixed expected errors c088416
@SyntaxPolice SyntaxPolice little HUnit test wibble to get out of way of instaled package 50b0a32
Commits on Apr 12, 2005
@SyntaxPolice SyntaxPolice added setup test command, not deeply tested 6d13029
@Lemmih Lemmih Fixed bug in Distribution.GetOpt
The bug caused unknown long opts to get stripped of their argument (--test=arg => --test).
Commits on Apr 13, 2005
@SyntaxPolice SyntaxPolice fail on test returning error code, add test cases 010f665
Commits on Apr 14, 2005
@SyntaxPolice SyntaxPolice cvs patch from Wolfgang Thaller
  Fix handling of end-of-options markers (--).
  getOpt would correctly return the non-options after the marker, but it
  would return errors for things after the marker that looked like options.
@SyntaxPolice SyntaxPolice added strip flag. probably from CVS 78bb19d
@SyntaxPolice SyntaxPolice cvs pull: added LICENSE file 97f2b19
@SyntaxPolice SyntaxPolice haddock markup fixes 02f7f65
Commits on Apr 15, 2005
@SyntaxPolice SyntaxPolice added test case for mutually recursive modules 6867eb3
@SyntaxPolice SyntaxPolice first implementation of copy for hi-boot files (ghc 6.) could use mor…
…e testing
@SyntaxPolice SyntaxPolice added missing test case that was in my source tree 4921f09
@SyntaxPolice SyntaxPolice added missing source file 19e45d9
@SyntaxPolice SyntaxPolice another missing source file 98b4ea1
@SyntaxPolice SyntaxPolice added another missing source file 1d59c3a
Commits on Apr 16, 2005
@SyntaxPolice SyntaxPolice export matchesDescFile at the request of Lemmih for Hackage 87c3589
@SyntaxPolice SyntaxPolice ./setup clean now removes dist/doc, which is produced by ./setup haddock a8da9b8
@SyntaxPolice SyntaxPolice implemented handling of _stub.{c,h,o} files
Including a test case from J?r?my Bobbio.

Previously, we weren't linking in _stub.o files to the library, though
they are produced by the build.  Now we link them in.  I assume that
ghc --make does the right thing for executables, haven't tested this.

Also implemented ./setup clean for getting rid of Foo_stub.{h,c} files
for both executables and libraries.  These files aren't put into the
dist/build directory (can they be?) so I had to add a bit of extra
logic here.
@SyntaxPolice SyntaxPolice cleanup from Ross. no change in behavior 7d2ce1a
@josefs josefs Added pattern guards as a language extension 7feaabf
Commits on Apr 18, 2005
@SyntaxPolice SyntaxPolice formatting changes and untabify c06008c
@Lemmih Lemmih Now exporting getInstalledPackages from Distribution.Simple.Configure…
… since it's needed by cabal-get.
Commits on Apr 21, 2005
@Lemmih Lemmih Various changed needed by hackage/cabal-get.
* Exporting Distribution.Compat.FilePath and Distribution.GetOpt.
  I'm using GetOpt from Cabal 'cause I fixed a bug in it which I haven't commited to CVS yet.
In Distribution.Simple.Config:
* Made 'getInstalledPackagesAux' and 'configCompilerAux' which aren't using ConfigFlags
  since cabal-get defines it own ConfigFlags.
* Changed 'configCompilerVersion' to take a verbose argument instead of a ConfigFlags.
* Exported those functions.
@Lemmih Lemmih Cabal-get is not using Distribution.GetOps anymore. b666b16
Commits on Apr 26, 2005
@Lemmih Lemmih Changes needed by cabal-get.
[from Distribution.Simple.Configure]
 * Exporting getInstalledPackagesAux and configCompilerAux.
 * Refactored ConfigFlags out of configCompilerAux, findCompiler,
   configCompilerVersion and guessPkgToolFromHcPath.
 * Changed the verbosity of getInstalledPackages, findCompiler,
   configCompilerVersion and guessPkgToolFromHcPath.
Commits on May 02, 2005
@SyntaxPolice SyntaxPolice fixed bug in c2hs preprocessor e9ef9ff
@SyntaxPolice SyntaxPolice tweaks to lemmih's patch to rename functions 5236f95
@SyntaxPolice SyntaxPolice working on changelogs; bumped version number 637fbec
@SyntaxPolice SyntaxPolice implemented ranlib execution during installation
This is necessary in Mac OS X and on Solaris.

It is possible that this might cause problems for systems that use
setup copy to build and then use cp to install files, since the
library modification time will change.  I think this is only the case
on Mac OS X and Solaris.
Commits on May 03, 2005
@SyntaxPolice SyntaxPolice renamed getInstalledPackages{,Aux} 3c85b38
Commits on May 08, 2005
@SyntaxPolice SyntaxPolice CVS pull from Ross
  add with-c2hs option to configure, pass cpp options to c2hs, plus a
  little refactoring.
  This involves interface changes: changed type of ppC2hs, extra fields
  in ConfigFlags and LocalBuildInfo.
@SyntaxPolice SyntaxPolice adding some haddock 747f466
Commits on May 10, 2005
@SyntaxPolice SyntaxPolice CVS pull from Simon Marlow:
  getInstalledPackages: ignore lines beginning with "Creating", so that
  we can understand this ghc-pkg output from 6.4:
  Creating user package database in /home/simonmar/.ghc/i386-linux-6.4/package.conf
      rts-1.0, base-1.0, haskell98-1.0, template-haskell-1.0, unix-1.0,
      Cabal-1.0, parsec-1.0, haskell-src-1.0, network-1.0,
      QuickCheck-1.0, HUnit-1.1, mtl-1.0, fgl-5.2, X11-1.1, HGL-3.1,
      OpenGL-2.0, GLUT-2.0, stm-1.0, readline-1.0, (lang-1.0),
      (concurrent-1.0), (posix-1.0), (util-1.0), (data-1.0), (text-1.0),
      (net-1.0), (hssource-1.0)
@SyntaxPolice SyntaxPolice cabal version and test case for ghc 6.4 recursive mods 02bd490
@SyntaxPolice SyntaxPolice resolved confligs with hackage version aa20b0c
@SyntaxPolice SyntaxPolice untabify cabal file 614ff06
Commits on May 12, 2005
@SyntaxPolice SyntaxPolice updating changelog and release notes for release 1b08bba
@SyntaxPolice SyntaxPolice adding -fhide-all-packages for ghc > 6.4 ef5ce20
Commits on May 15, 2005
@SyntaxPolice SyntaxPolice hs-source-dirs, other-files
  added hs-source-dirs (ross added docs)

  Add other-files field to PackageDescription. This is a list files
  which belong to the package but aren't compiled. These files are
  copied and packaged from sdist command.

  fixes to buildHugs and sdist after hs-source-dirs changes.
  Also simplified smartCopySources a bit.

  document sdist and new other-files field.
@SyntaxPolice SyntaxPolice fixed bug: executable build location had changed
Since we don't have hs-source-dir anymore, the location for building
executables had changed.  However, install was still looking in the
old location.  Fixed this.

Fixed another bug where hs-source-dir for executables was [".","."]
where this duplication caused a problem in locating the Main module.
Not sure quite where this came from, but now for combining fields, we
always nub, so this should be a robust fix.

Fixed build failures in testing code.
Commits on May 16, 2005
@SyntaxPolice SyntaxPolice from Krasimir: -fhide-all-packages should be -hide-all-packages 5d89a2b
Commits on May 17, 2005
@SyntaxPolice SyntaxPolice added the cabal-setup executable which is defaultMain d3a1299
Commits on May 27, 2005
@Lemmih Lemmih Support for building libraries and executables with profiling enabled. c674706
Commits on May 30, 2005
@Lemmih Lemmih Using 'reads' instead of 'read' in Simple.Configure.getPersistBuildCo…
@Lemmih Lemmih Fixed bug which caused Cabal to guess the wrong HC-PKG path. d68feb1
@Lemmih Lemmih Previous prof-libraries are removed before building the new one. aca87e9
@Lemmih Lemmih Added --with-greencard. 882e7d7
Commits on Jun 04, 2005
@SyntaxPolice SyntaxPolice comments and small docs 621205c
@Lemmih Lemmih Make HUnit happy with the new profiling support. aecf80f
Commits on Jun 09, 2005
@Lemmih Lemmih s/rawSystemPath/rawSystemVerbose/ typo. 0b6a26c
Commits on Jun 28, 2005
@SyntaxPolice SyntaxPolice lots of changes, mostly from ross
  documentation updates from ross paterson
  - more accurate specification of package names
  - hs-source-dir -> hs-source-dirs in examples
  - setup clean removes a bit more
  - rearrange description of fields

  Version.hs: allow more spaces in version constraints

  Install.hs: add the exe extension when installing executables (reported by Brian Smith)
  test directory: add explicit dependencies on base

  Prefix error messages and warnings with the program name, and send them
  to stderr.  (Also moved some stuff from Distribution.Simple.Utils to
  Distribution.Simple.Build to avoid circular dependencies.)

  refactoring only: split Compiler type from Distribution.Setup,
  to reduce dependencies.

  Exclude DefaultSetup.lhs from the GHC build

  add JHC to the Compiler type

  refactored argument processing

  setup sdist --snapshot: append YYYYMMDD to the version for the bundle

  improved error messages (from Brian Smith):
  * attach source locations to messages when available
  * change some remaining error's do die.

  refactor defaultMainWorker

  split Distribution.Extension between Language.Haskell.Extension (just
  the type, which will also be useful when haskell-src-exts is merged)
  and Distribution.Compiler (mappings to compiler options).

  add Language.Haskell.Extension

  Simon marlow:  update defaults for prefix/libdir/bindir
@SyntaxPolice SyntaxPolice from ross, added language.haskell.extension 056faa6
@SyntaxPolice SyntaxPolice clean up conflicts, temp fix for test cases 40251bd
@SyntaxPolice SyntaxPolice wibble 3aebf23
@SyntaxPolice SyntaxPolice wibble 2 5137390
@SyntaxPolice SyntaxPolice prof-options -> ghc-prof-options f2e86d0
@SyntaxPolice SyntaxPolice added dist.compiler, from ross 5e7933b
Commits on Jul 06, 2005
@SyntaxPolice SyntaxPolice updated test cases b1039d1
@SyntaxPolice SyntaxPolice tweaks from ross
  export tweak to Setup.hs
  avoid warning in PreProcess.hs
  rearrange handling of --prefix.
@SyntaxPolice SyntaxPolice added readme info about installing over new versions of cabal dce1959
Commits on Jul 14, 2005
@SyntaxPolice SyntaxPolice TAG 1.0.0 3906251
@SyntaxPolice SyntaxPolice preprocessors, setup test 98f2f8f
@SyntaxPolice SyntaxPolice RC1 tweaks to changelog and release notes d541d24
@SyntaxPolice SyntaxPolice tweak version number for release. makefile release target f8918fb
@SyntaxPolice SyntaxPolice more release number tweaks. decided to make RC1's official versin num…
…ber 1.1.1
@SyntaxPolice SyntaxPolice more tweaks ee9e1aa
@SyntaxPolice SyntaxPolice TAG 1.1.1 c626c9f
@SyntaxPolice SyntaxPolice bump version number post-relesae 8b203c6
Einar Karttunen Make haddock support documentation in hidden modules. 8c92bf4
Commits on Jul 15, 2005
@SyntaxPolice SyntaxPolice updated these docs after some feedback 11e7c2e
@SyntaxPolice SyntaxPolice simonMar: the recent -odir fix in GHC means the workaround in Cabal h…
…as to be (selectively) disabled.
@SyntaxPolice SyntaxPolice simonMar: ppCpp': Use GHC instead of cpphs if the latter is not avail…
Commits on Jul 16, 2005
@SyntaxPolice SyntaxPolice slight makefile tweaks 42c5825
@SyntaxPolice SyntaxPolice updated README with suggestions from simon and some clarification a449b2b
@SyntaxPolice SyntaxPolice moved all code to a src subdirectory. a couple of test cases fail, bu…
…t no huge deal.
@SyntaxPolice SyntaxPolice makefile tweak cfe9528
Commits on Jul 18, 2005
@SyntaxPolice SyntaxPolice updated todos c8af714
@SyntaxPolice SyntaxPolice tweak to Configure for windows. removed DefaultSetup since it breaks …
…windows cabal 1.0 installations.
@SyntaxPolice SyntaxPolice tweak GHC version. 3cd3730
@SyntaxPolice SyntaxPolice tweakin the changelog a2d4ec7
Commits on Jul 19, 2005
@SyntaxPolice SyntaxPolice moved stuff back out of src tree 4cc20a9
@SyntaxPolice SyntaxPolice more changes relating to src move 778a3a3
@SyntaxPolice SyntaxPolice ross paterson: simplify consruction of pkg tool name 6f92fb6
Commits on Jul 26, 2005
@dcoutts dcoutts Move building of GHCi .o libs to the build phase rather than register…
… phase.
Commits on Jul 27, 2005
der_eq Fixing install bug(GHCi lib overwrites .a archive) 177c0d9
Commits on Jul 30, 2005
@SyntaxPolice SyntaxPolice wibbles 3fd4757
@SyntaxPolice SyntaxPolice lots of cvs changes from Ross
  tweak SHGetFolderPath
  preprocess: Hugs+MinGW: remove special case
  test *_HOST_OS (as well as *_TARGET_OS, which is there for old GHC's)
  take care of string literals while stripping comments
  rearrange so that we print "Compiling FFI stubs" at most once
  only run ffihugs on Main module if required
  add comment about older Windows versions
  Hugs only: avoid SHGetFolderPath for now
  convert input file paths to platform form (from Brian Smith)
  convert paths to native form at entry
  rename --builddir as --scratchdir to avoid clash with autoconf --build flag.

  doc: consolidate descriptions of preprocessors
@SyntaxPolice SyntaxPolice tweak test suite 9fc16f2
@SyntaxPolice SyntaxPolice add docs to todo 3a827d5
Commits on Aug 07, 2005
@bs4eva bs4eva Always invoke the ld.exe that is in $ghc-bin\..\gcc-lib on Windows, b…
…ecause ld is probably not in the path on Windows.
Commits on Aug 09, 2005
@SyntaxPolice SyntaxPolice various TODO updates 767335d
@SyntaxPolice SyntaxPolice cvs commit from ross
  installHugs: quote the script name to protect spaces, and create .bat
  files for executables under Windows.
@SyntaxPolice SyntaxPolice ross fixed this typo 617a594
@SyntaxPolice SyntaxPolice from ross
  buildGHC: reset search path before adding hs-source-dirs, so that these
  are the only directories GHC searches.
Commits on Aug 11, 2005
@SyntaxPolice SyntaxPolice more TODO 5fe0331
@SyntaxPolice SyntaxPolice bugfix for linking profiling + ffi stub files 02c27cb
Commits on Aug 16, 2005
@SyntaxPolice SyntaxPolice cvs commit from ross.
  * rename other-files as extra-source-files
  * new field extra-tmp-files
@SyntaxPolice SyntaxPolice fixed test suite, added backward-compat checker for other-files e0ec810
@SyntaxPolice SyntaxPolice fixed bug for odirs for executables in ghc > 6.4.1. UNTESTED. a8f84cc
Commits on Aug 24, 2005
@dcoutts dcoutts Use .tar.gz for source package extension and tweak sdist info message. 3ad8377
Commits on Aug 25, 2005
@SyntaxPolice SyntaxPolice so much TODO cfa42dd
@SyntaxPolice SyntaxPolice cvs pull from Ross; invoke configure w/o sh
  Invoke the configure program (if present) directly instead of using sh,
  except under MinGW, where #! won't work.  (Problem noted by Frederik Eaton)
@SyntaxPolice SyntaxPolice ross fixed the portability tags 594e10f
Commits on Sep 05, 2005
@SyntaxPolice SyntaxPolice added -D__GLASGOW_HASKELL__ for hcDefines, probably needed by cpp d71352c
@SyntaxPolice SyntaxPolice resync w/ cvs where Ross beat me to the punch on the GLASGOW_HASKELL …
Commits on Sep 06, 2005
@SyntaxPolice SyntaxPolice removed nub for ghc-options, which was causing flags like -package fo…
…o -package bar to not work.
Commits on Sep 08, 2005
@SyntaxPolice SyntaxPolice First stab at command-hooks
That is, hooks to override basic behavior of configure, install, etc.
Basic use case for this is in over-riding the "install" behavior for
cgi-bin tools.

In addition to the existing hooks, that gives us:

     confHook :: PackageDescription -> ConfigFlags -> IO LocalBuildInfo,
     buildHook :: PackageDescription
               -> LocalBuildInfo
               -> Int                 -- verbose
               -> [ PPSuffixHandler ]
               -> IO (),
     cleanHook :: PackageDescription -> LocalBuildInfo -> Int -> [PPSuffixHandler] -> IO (),
     copyHook :: PackageDescription
              -> LocalBuildInfo
              -> (Maybe FilePath,Int) -- ^install-prefix, verbose
              -> IO (),
     instHook :: PackageDescription
              -> LocalBuildInfo
              -> Int -- verbose
              -> Bool -- user install?
              -> IO (),
     sDistHook :: FilePath -- ^build prefix (temp dir)
               -> FilePath -- ^TargetPrefix
               -> Int      -- ^verbose
               -> Bool     -- ^snapshot
               -> [PPSuffixHandler]  -- ^ extra preprocessors (includes suffixes)
               -> PackageDescription
               -> IO (),
     regHook :: PackageDescription -> LocalBuildInfo -> RegisterFlags -> IO (),
     unregHook :: PackageDescription -> LocalBuildInfo -> RegisterFlags -> IO (),
     haddockHook :: PackageDescription -> LocalBuildInfo -> Int -> [PPSuffixHandler] -> IO (),
     pfeHook :: PackageDescription -> LocalBuildInfo -> Int -> [PPSuffixHandler] -> IO ()

I don't really know if these types are good, but they are the types
needed by the "default" hooks which do the guts of the
Distribution.Simple work.  I'm not happy with the handling of
LocalBuildInfo which you can't avoid generating at this point, because
all the post-hooks need it.
Commits on Sep 13, 2005
@SyntaxPolice SyntaxPolice from ross: update for sdist ad56395
@SyntaxPolice SyntaxPolice patch from krasimir for escaping spaces
BUGFIX: System.Cmd.system was used here but the executable path may
have spaces.  The right way is to use runInteractiveProcess but it isn't
supported from HUGS.  It is easier for a while to quote the path.
@SyntaxPolice SyntaxPolice prepare for 1.1.3 release 14e7ef6
@SyntaxPolice SyntaxPolice fixes for haddock for 1.1.3 68136b8
@SyntaxPolice SyntaxPolice TAG 1.1.3 b74e7c6
@SyntaxPolice SyntaxPolice bump version number post release b575a0d
Commits on Sep 28, 2005
@SyntaxPolice SyntaxPolice added verbosity options c52bf80
Commits on Sep 30, 2005
@SyntaxPolice SyntaxPolice adding Program abstraction to cabal 99ae4eb
@SyntaxPolice SyntaxPolice generalizing haddock based on Program type b000d8a
Commits on Oct 01, 2005
@SyntaxPolice SyntaxPolice finished threading configuration stuff to local build info bcd6864
Commits on Oct 09, 2005
@SyntaxPolice SyntaxPolice basic working version of --haddock-args dd91190
@SyntaxPolice SyntaxPolice make --with-haddock actually work
** did this ever work before?
** cleaned up some comments
** made rawSystemVerbose more robust. Check for file existing, check
for permissions.  Before it was just failing silently.
@SyntaxPolice SyntaxPolice made generic --with-foo functionality 6ab60af
@SyntaxPolice SyntaxPolice basic pfesetup support for args and with and such 654386c
Commits on Oct 16, 2005
@SyntaxPolice SyntaxPolice cvs pull from ross cc170c1
@SyntaxPolice SyntaxPolice lots of cvs pulls from Ross, Malcolm, Simon, & Simon
  No reason we shouldn't have Ord on PackageIdentifiers

  Various changes committed in one bunch:
   - bindir/libdir/datadir/libexecdir support as discussed on  This should be considered fairly
     experimental.  Full documentation in the manual.
   - A module Paths_<pkgname> is autogenerated, you should be able
     to just import this.  (I haven't made this work with Hugs yet, though).
     I suspect I might need to make sure it's available to 'setup haddock'
     too.  Also, I haven't tested this on Windows yet (TODO).
   - All installation-paths-related functions are now provided by
   - some cleaning up of Distribution.Simple.Build as regards GHC support.
   - "setup copy" now takes a --destdir argument instead of --copy-prefix
     (the latter is still accepted for compatibility).
     Note for autoconf/make users: this means that your Makefile now
     needs to implement a "copy" target, see the manual for details.
   - New types: Distribution.Setup.CopyFlags (was previously just a
     pair), and CopyDest (was previously Maybe FilePath).
   - Hooks: the post hooks all take a PackageDescription argument now.
     There seemed no reason not to do this, and sometimes it's useful.

  Remove literal tabs in strings.  Not Haskell'98.

  harmonize running of ./confugure between defaultUserHooks and
  * pass through the same set of flags, plus unrecognized options
  * select the default compiler before processing options

  Fixes for Windows

  added a simple-minded data-files field.  Also added getDataFileName to
  Paths_<pkg> to save client code from worrying about path separators.
@SyntaxPolice SyntaxPolice fixed conflicts w/ merged changes 26d96f4
@SyntaxPolice SyntaxPolice cleaned up test suite 8c9d8dd
@SyntaxPolice SyntaxPolice Added Distribution.Program support for ranlib and ar.
Cleaned up calls to these programs so that they're detected at
configure time, and both have --with-ranlib and --ranlib-args flags
(thanks to Distribution.Program support).
@SyntaxPolice SyntaxPolice cleaned up configure to map over known programs instead of looking fo…
…r them individually.
Commits on Oct 20, 2005
@SyntaxPolice SyntaxPolice cvs pull from malcolm & krasimir
krasimir    2005/10/18 09:45:52 PDT (Configure):
  On Windows datadir should be prefix relative only for executables

malcolm     2005/10/18 02:36:43 PDT (Utils):
  Massage import of System.Directory for nhc98.
@SyntaxPolice SyntaxPolice REMOVED util DEPENDENCY. This will break build for ghc 6.2 :( bcb326f
@SyntaxPolice SyntaxPolice wibble 4e0bc8f
@SyntaxPolice SyntaxPolice removed some tabs 910a4b5
Commits on Oct 21, 2005
@SyntaxPolice SyntaxPolice cvs pull from krasimir & simon
  from Neil Mitchell (fixed by Krasimir):
  On Windows, the path can be path;"c:\ghc\ghc-6.4\bin";restofpath, and
  thats still a valid path with GHC in it. Cabal doesn't find ghc with
  the quotes in, removing them does find it though.

  Add Distribution.Program to exposed-modules
Commits on Oct 25, 2005
@SyntaxPolice SyntaxPolice added version number to unregister command ab0b74b
@SyntaxPolice SyntaxPolice docs for Debian release a1ddf39
@SyntaxPolice SyntaxPolice importing haskell98 where appropriate a02674a
Commits on Oct 31, 2005
@SyntaxPolice SyntaxPolice moving TODO items to bug tracker d12ac60
@SyntaxPolice SyntaxPolice cvs pulls from krasimir and ross
* Ross
  ghcconfig.h is not needed for GHC >= 6.4
  update library links for haddock 0.7 (in Cabal.xml)

* Krasimir
  * The sentence:
    An error will be returned from <literal>setup configure</literal> if
    this is not the case.
  is replaced with:
    If this is not the case then the compiled executable will have baked
    in all absolute paths.

  * The previous implementation for Paths_<pkgid>.hs building was broken on Windows.
  The prefixRel function was expecting that all bindir/libdir/datadir/... paths
  are $prefix relative but the corresponding functions (mkBinDir/mkLibDir/...)
  was returning absolute paths with expanded $path variable. This commit fixes
  the bug and also:
     * In LocalBuildInfo are added mkLibDirRel/mkBinDirRel/... functions. They
  return the corresponding but without the $prefix part. When the path isn't
  prefix relative then they return Nothing
     * The restriction that all paths on Windows are $prefix relative is removed.
     * The code in Paths_<pkgid>.hs can contain both absolute and prefix relative
  paths. When the package is configured only with $prefix relative paths then
  the generated executable will be prefix independent and can be moved from one
  directory to another.

  * Paths_<pkg>.hs was generated before each build and this was causing GHC to
  rebuild the package each time. Now it is generated only when it is older than

  * Change the foreign import syntax to use the standard FFI syntax

  * Two changes to HADDOCK support:
      - In the last version only the exposed modules were passed to haddock.
  In order to generate proper documentation all modules should be processed
  from haddock but the non exposed modules should be hiden.
      - Added support for executable packages in Haddock.
Commits on Nov 12, 2005
@SyntaxPolice SyntaxPolice Krasimir: Warning message for absolute bindir/libdir/datadir/libexecdir 4a372d0
@SyntaxPolice SyntaxPolice by Evgeny Chukreev: This patch fixes case when buildinfo file has mor…
…e than one executable block. Without this patch all executables go to void.
@SyntaxPolice SyntaxPolice cleaned up test suite for some new behaviors.
Have an unknown error while building "execWithC" for Hugs:

Cases: 11  Tried: 0  Errors: 0  Failures: 0Setup.lhs: Warning: No license-file field.
Setup.lhs: Warning: No license-file field.
dist/build/programs/tt/Main.c: In function 'hugsprim_foo_0':
dist/build/programs/tt/Main.c:16: warning: implicit declaration of function 'foo'
runhugs: Error occurred
ERROR ",tmp/lib/hugs/programs/tt/Main.hs" - Error while importing DLL "/home/ijones/usr/src/haskell/fptools/libraries/Cabal/tests/exeWithC/,tmp/lib/hugs/programs/tt/":
/home/ijones/usr/src/haskell/fptools/libraries/Cabal/tests/exeWithC/,tmp/lib/hugs/programs/tt/ unexpected reloc type 0x09
Commits on Nov 13, 2005
@SyntaxPolice SyntaxPolice Einar Karttunen put together support for haddock-izing hidden modules.
I added a test case.  I'm a bit concerned about munging the modules by
adding a 'hidden' pragma here, but it doesn't seem to cause a problem.
Commits on Nov 14, 2005
@SyntaxPolice SyntaxPolice Added hookedPrograms to user hooks.
This allows users to add programs to the list of programs that
configure looks for.  If a user adds a program with this hook,
configure will try to find it, and arguments will be added to
configure for this program.

See test/withHooks for an example.
Commits on Nov 15, 2005
@SyntaxPolice SyntaxPolice new comment in FilePath 3859984
@SyntaxPolice SyntaxPolice rolled back patch for hide pragma 7865aa5
@SyntaxPolice SyntaxPolice modified install --user behavior to include configure --user
If the user configures with --user, that means that they are willing
to satisfy dependencies from the user databaes.  If that's the case,
then it really only makes sense to install the package as --user as
well, since if user A installs configures / builds the package with
--user, then installs it as root, user B may attempt to use the
package and not be able to fulfill the dependencies.  Therefore, if
the package is configured as --user, then we also will call ghc-pkg
with --user.

Of course, in this case:

./setup configure --user
./setup install --global

Cabal will accept the user's instructions to install this globally,
however ill conceived.  This changes the type of the install hook,
btw, since we now need to be able to tell the difference between
passing the --global flag and not passing any flag.

Any objections to this change?
Commits on Nov 24, 2005
@kosmikus kosmikus add absolutePath and prefixRelPath to the list of exported functions …
…in LocalBuildInfo
Commits on Nov 27, 2005
@SyntaxPolice SyntaxPolice Adding CabalInstall; an experimental tool to install cabal packages i…
…n a single step.
@SyntaxPolice SyntaxPolice ross's documentation for new --user behavior 40b8b28
@SyntaxPolice SyntaxPolice ross fixes for some flags 9dbddfa
Commits on Nov 28, 2005
@SyntaxPolice SyntaxPolice some code to build cabal-install 4f3995f
Commits on Dec 04, 2005
@SyntaxPolice SyntaxPolice tweak cabal-install stuff 0f11cd9
Commits on Dec 05, 2005
@SyntaxPolice SyntaxPolice adding cabal-version flag. nothing is done with it for now. ddc1eaa
@SyntaxPolice SyntaxPolice check for correct cabal version during parsing
I throw a parse error if this package has the wrong cabal version.
This is so that the user can get this error before getting an error
for eg. an unknown field.  Also check it in the sanity checker.

I just hard-code the cabal version in the source, it would be nicer if
we got it from the .cabal file.  cabal could include the version in
the cpp flags, but cabal's setup file needs to build without cabal, so
that wouldn't actually work for us ahem.
@SyntaxPolice SyntaxPolice docs for cabal-version field e464617
@SyntaxPolice SyntaxPolice Sven Panne: For the 1000th time: Fixed DocBook XML. Please, please do…
… a "make validate"
Commits on Dec 10, 2005
@SyntaxPolice SyntaxPolice mostly patches from Krasimir
 * Isaac added a warning to haddock for Hooks

  the "data-files" field may contain filenames with directories. We should create
  the missing directories at install place first

  Use removeDirectoryRecursive instead of system "rm ..." because the former is
  more platform idependent.

  The sdist command was broken because it is using smartCopySources. The later
  was using the hs-source-dirs for lookup but at the target place the files were
  created without the corresponding source sub directories. Now it have
  boolean parameter which specifies whether to preserve to directory structure.
@SyntaxPolice SyntaxPolice tweaks to make --with-runghc and --with-runhugs work in cabal-install. 6727a3f
@SyntaxPolice SyntaxPolice moving code around. comments 70c05c2
Commits on Dec 12, 2005
@josefs josefs Add language extension GeneralizedNewtypeDeriving. See GHC's docs 7.4.12 ef42192
Commits on Jan 09, 2006
@SyntaxPolice SyntaxPolice cleaning up TODO 5d66024
@SyntaxPolice SyntaxPolice from ross: Hugs: include the auto-generated module when installing an…
… executable.
@SyntaxPolice SyntaxPolice cleaned up some FIX (HUGS) abea471
Commits on Jan 13, 2006
Simon Marlow Tranform info an fptools-ready package
The fptools version of this package needs different Makefiles, so add
them and remove the original GNUmakefiles.
simonmar TAG checkpoint 4c3f499
Commits on Jan 31, 2006
@dcoutts dcoutts Add extraGHCiLibraries to the InstalledPackageInfo and extend the par…
Commits on Feb 01, 2006
@SyntaxPolice SyntaxPolice fix version number in fptools makefile to match .cabal file 2ee07ae
Commits on Feb 06, 2006
Simon Marlow combine GNUmakefile and Makefile dcc75fd