Those patches I was talking about. I'd apreciate a review :-)
Actually to test it with c2hs also needs a patch to c2hs that I'll send
tomorrow. But it should work for alex & happy etc already.
Duncan
Sun Apr 22 19:56:31 EST 2007 Duncan Coutts <[EMAIL PROTECTED]>
* Put pre-processed source into the dist/build dir rather than src dirs
This is generally just a nicer thing to do, we should probably aim to
not write any files into the source tree at all.
The main change is in the preprocessModule function. It now takes an extra
arg which is the destination directory. For now I'm passing the buildDir,
but we could consider putting pre-processed files into a separate fir
from where the .o and .hi files end up.
To work out the correct destination file we need to know not only the source
file but which of the search dirs it was found in, since the relative file
name will be the name of the source file relative to the search dir it was
found in, not the name relative to the top of the source tree. This is so that
we will be able to find the pre-processed .hs file just by adding dist/build
to the sources search path when we compile (eg with -i for ghc).
This almost certainly breaks the sdist thing where pre-processed files get
included into the tarball. So that'll need looking at.
Sun Apr 22 20:05:58 EST 2007 Duncan Coutts <[EMAIL PROTECTED]>
* Generalise PreProcessors to take more detailed args
Most pre-processors just need the full source file and target file names.
More complicated ones where the generated files have to embed links to each
other need more information. For example c2hs generates .hs file that
reference generated .h files. These links should be relative to the dist/build
dir and not to the top of the source tree, since we do not want to add -I. to
the includes search path. We only want to use -Idist/build, hence the embeded
links must be relative to that. Therefor c2hs needs to know the base output
directory as well as the name of the file relative to that.
So we add a new type PreProcessorFull that has this extra info and a function
simplePP :: :: PreProcessor -> PreProcessorFull
for the common case of most existing pre-processors that do not need this
extra info.
This patch doesn't actually change the c2hs stuff, that comes next.
Sun Apr 22 20:26:17 EST 2007 Duncan Coutts <[EMAIL PROTECTED]>
* call c2hs using the more detailed info
we use --output-dir=dist/base
and --output=<file relative to the search dir it was found in>.hs
This actually depends on a patch in c2hs to make it treat --output-dir
in the way we want. That patch will be forthcomming soonish.
But the point is:
c2hs --output-dir=dist/base --output=Foo/Bar.hs src/Foo/Bar.chs
will generate dist/base/Foo/Bar.hs and also dist/base/Foo/Bar.h
but inside the .hs file it'll reference Foo/Bar.h so when we compile the
.hs file we have to -Idist/base
Clear as mud?
New patches:
[Put pre-processed source into the dist/build dir rather than src dirs
Duncan Coutts <[EMAIL PROTECTED]>**20070422095631
This is generally just a nicer thing to do, we should probably aim to
not write any files into the source tree at all.
The main change is in the preprocessModule function. It now takes an extra
arg which is the destination directory. For now I'm passing the buildDir,
but we could consider putting pre-processed files into a separate fir
from where the .o and .hi files end up.
To work out the correct destination file we need to know not only the source
file but which of the search dirs it was found in, since the relative file
name will be the name of the source file relative to the search dir it was
found in, not the name relative to the top of the source tree. This is so that
we will be able to find the pre-processed .hs file just by adding dist/build
to the sources search path when we compile (eg with -i for ghc).
This almost certainly breaks the sdist thing where pre-processed files get
included into the tarball. So that'll need looking at.
] {
hunk ./Distribution/PreProcess.hs 65
-import Distribution.Simple.Utils (rawSystemExit,
- moduleToFilePath, die, dieWithLocation)
+import Distribution.Simple.Utils (rawSystemExit, die, dieWithLocation,
+ moduleToFilePath, moduleToFilePath2)
hunk ./Distribution/PreProcess.hs 74
- (splitFileExt, joinFileName, joinFileExt)
+ (splitFileExt, joinFileName, joinFileExt, dirName)
+import Distribution.Compat.Directory ( createDirectoryIfMissing )
hunk ./Distribution/PreProcess.hs 115
- sequence_ [ preprocessModule (hsSourceDirs bi) modu
+ sequence_ [ preprocessModule (hsSourceDirs bi) (buildDir lbi) modu
hunk ./Distribution/PreProcess.hs 125
+ (buildDir lbi)
hunk ./Distribution/PreProcess.hs 138
+ -> FilePath -- ^destination directory
hunk ./Distribution/PreProcess.hs 144
-preprocessModule searchLoc modu verbose builtinSuffixes handlers = do
- bsrcFiles <- moduleToFilePath searchLoc modu builtinSuffixes
- psrcFiles <- moduleToFilePath searchLoc modu (map fst handlers)
+preprocessModule searchLoc destLoc modu verbose builtinSuffixes handlers = do
+ -- look for files in the various source dirs with this module name
+ -- and a file extension of a known preprocessor
+ psrcFiles <- moduleToFilePath2 searchLoc modu (map fst handlers)
hunk ./Distribution/PreProcess.hs 149
- [] -> case bsrcFiles of
+ -- no preprocessor file exists, look for an ordinary source file
+ [] -> do bsrcFiles <- moduleToFilePath searchLoc modu builtinSuffixes
+ case bsrcFiles of
hunk ./Distribution/PreProcess.hs 154
- (psrcFile:_) -> do
- let (srcStem, ext) = splitFileExt psrcFile
+ ((psrcLoc, psrcRelFile):_) -> do
+ let (srcStem, ext) = splitFileExt psrcRelFile
+ psrcFile = psrcLoc `joinFileName` psrcRelFile
hunk ./Distribution/PreProcess.hs 159
- recomp <- case bsrcFiles of
+ -- look for existing pre-processed source file in the dest dir to
+ -- see if we really have to re-run the preprocessor.
+ ppsrcFiles <- moduleToFilePath [destLoc] modu builtinSuffixes
+ recomp <- case ppsrcFiles of
hunk ./Distribution/PreProcess.hs 164
- (bsrcFile:_) -> do
- btime <- getModificationTime bsrcFile
+ (ppsrcFile:_) -> do
+ btime <- getModificationTime ppsrcFile
hunk ./Distribution/PreProcess.hs 168
- when recomp $ pp psrcFile (srcStem `joinFileExt` "hs") verbose
+ when recomp $ do
+ let destDir = destLoc `joinFileName` dirName srcStem
+ createDirectoryIfMissing True destDir
+ pp psrcFile
+ (destLoc `joinFileName` srcStem `joinFileExt` "hs") verbose
hunk ./Distribution/Simple/GHC.hs 297
- ++ ["-I"++pref]
hunk ./Distribution/Simple/GHC.hs 364
+ ++ ["-i" ++ buildDir lbi]
hunk ./Distribution/Simple/GHC.hs 366
+ ++ ["-I" ++ buildDir lbi]
hunk ./Distribution/Simple/Utils.hs 57
+ moduleToFilePath2,
}
[Generalise PreProcessors to take more detailed args
Duncan Coutts <[EMAIL PROTECTED]>**20070422100558
Most pre-processors just need the full source file and target file names.
More complicated ones where the generated files have to embed links to each
other need more information. For example c2hs generates .hs file that
reference generated .h files. These links should be relative to the dist/build
dir and not to the top of the source tree, since we do not want to add -I. to
the includes search path. We only want to use -Idist/build, hence the embeded
links must be relative to that. Therefor c2hs needs to know the base output
directory as well as the name of the file relative to that.
So we add a new type PreProcessorFull that has this extra info and a function
simplePP :: :: PreProcessor -> PreProcessorFull
for the common case of most existing pre-processors that do not need this
extra info.
This patch doesn't actually change the c2hs stuff, that comes next.
] {
hunk ./Distribution/PreProcess.hs 96
+-- We split the input and output file names into a base directory and the
+-- rest of the file name. The input base dir is the path in the list of search
+-- dirs that this file was found in. The output base dir is the build dir where
+-- all the generated source files are put.
+--
+-- The reason for splitting it up this way is that some pre-processors don't
+-- simply generate one output .hs file from one input file but have
+-- dependencies on other genereated files (notably c2hs, where building one
+-- .hs file may require reading other .chi files, and then compiling the .hs
+-- file may require reading a generated .h file). In these cases the generated
+-- files need to embed relative path names to each other (eg the generated .hs
+-- file mentions the .h file in the FFI imports). This path must be relative to
+-- the base directory where the genereated files are located, it cannot be
+-- relative to the top level of the build tree because the compilers do not
+-- look for .h files relative to there, ie we do not use "-I .", instead we use
+-- "-I dist/build" (or whatever dist dir has been set by the user)
+--
+-- Most pre-processors do not care of course, so the simplePP function
+-- handles the simple case.
+--
+type PreProcessorFull =
+ (FilePath, FilePath) -- Location of the source file relative to a base dir
+ -> (FilePath, FilePath) -- Output file name, relative to an output base dir
+ -> Int -- verbosity
+ -> IO () -- Should exit if the preprocessor fails
+
hunk ./Distribution/PreProcess.hs 126
- = (String, BuildInfo -> LocalBuildInfo -> PreProcessor)
+ = (String, BuildInfo -> LocalBuildInfo -> PreProcessorFull)
hunk ./Distribution/PreProcess.hs 168
- -> [(String, PreProcessor)] -- ^possible preprocessors
+ -> [(String, PreProcessorFull)] -- ^possible preprocessors
hunk ./Distribution/PreProcess.hs 197
- pp psrcFile
- (destLoc `joinFileName` srcStem `joinFileExt` "hs") verbose
+ pp (psrcLoc, psrcRelFile)
+ (destLoc, srcStem `joinFileExt` "hs") verbose
hunk ./Distribution/PreProcess.hs 358
+simplePP :: PreProcessor
+ -> PreProcessorFull
+simplePP pp (inBaseDir, inRelativeFile)
+ (outBaseDir, outRelativeFile) verbosity
+ = pp inFile outFile verbosity
+ where inFile = inBaseDir `joinFileName` inRelativeFile
+ outFile = outBaseDir `joinFileName` outRelativeFile
+
hunk ./Distribution/PreProcess.hs 377
- [ ("gc", ppGreenCard)
- , ("chs", ppC2hs)
- , ("hsc", ppHsc2hs)
- , ("x", ppAlex)
- , ("y", ppHappy)
- , ("ly", ppHappy)
- , ("cpphs", ppCpp)
+ [ ("gc", simplePP' ppGreenCard)
+ , ("chs", simplePP' ppC2hs)
+ , ("hsc", simplePP' ppHsc2hs)
+ , ("x", simplePP' ppAlex)
+ , ("y", simplePP' ppHappy)
+ , ("ly", simplePP' ppHappy)
+ , ("cpphs", simplePP' ppCpp)
hunk ./Distribution/PreProcess.hs 385
+ where
+ simplePP' pp = \bi lbi -> simplePP (pp bi lbi)
}
[call c2hs using the more detailed info
Duncan Coutts <[EMAIL PROTECTED]>**20070422102617
we use --output-dir=dist/base
and --output=<file relative to the search dir it was found in>.hs
This actually depends on a patch in c2hs to make it treat --output-dir
in the way we want. That patch will be forthcomming soonish.
But the point is:
c2hs --output-dir=dist/base --output=Foo/Bar.hs src/Foo/Bar.chs
will generate dist/base/Foo/Bar.hs and also dist/base/Foo/Bar.h
but inside the .hs file it'll reference Foo/Bar.h so when we compile the
.hs file we have to -Idist/base
Clear as mud?
] {
hunk ./Distribution/PreProcess.hs 310
-ppC2hs :: BuildInfo -> LocalBuildInfo -> PreProcessor
-ppC2hs bi lbi
- = maybe (ppNone "c2hs") pp (withC2hs lbi)
- where pp n = standardPP n (concat [["-C", opt] | opt <- cppOptions bi lbi])
+ppC2hs :: BuildInfo -> LocalBuildInfo -> PreProcessorFull
+ppC2hs bi lbi = maybe (simplePP $ ppNone "c2hs") pp (withC2hs lbi)
+ where pp name (inBaseDir, inRelativeFile)
+ (outBaseDir, outRelativeFile) verbosity
+ = rawSystemExit verbosity name $
+ ["--include=" ++ dir | dir <- hsSourceDirs bi ]
+ ++ ["--cppopts=" ++ opt | opt <- cppOptions bi lbi]
+ ++ ["--output-dir=" ++ outBaseDir,
+ "--output=" ++ outRelativeFile,
+ inBaseDir `joinFileName` inRelativeFile]
hunk ./Distribution/PreProcess.hs 384
- , ("chs", simplePP' ppC2hs)
+ , ("chs", ppC2hs) -- c2hs is a more complicated one
}
Context:
[Fix Cabal's Setup.lhs after Maybe UserHooks / UserHooks change
Duncan Coutts <[EMAIL PROTECTED]>**20070418034619]
[Behave the same on Windows and non-Windows
Ian Lynagh <[EMAIL PROTECTED]>**20070417230311]
[Stop having hooks return an ExitCode that we then ignore
Ian Lynagh <[EMAIL PROTECTED]>**20070417225657]
[Small tidyup
Ian Lynagh <[EMAIL PROTECTED]>**20070417225031]
[Stop pretending we might not have any UserHooks
Ian Lynagh <[EMAIL PROTECTED]>**20070417224220]
[Be better about exiting if a command we run fails
Ian Lynagh <[EMAIL PROTECTED]>**20070417222257]
[Suggest that missing deps need to be downloaded and installed from hackage
Ian Lynagh <[EMAIL PROTECTED]>**20070417210158]
[Make contents of SrcDist more useful to outside users.
Bryan O'Sullivan <[EMAIL PROTECTED]>**20070415060916
This change simply splits sdist into three functions.
The normal sdist function remains unchanged from the caller's
perspective, but it now consists of two phases, each an exported function.
The source tree is prepared by prepareTree, and the archive is created
by createArchive.
This lets the cabal-rpm tool prepare a source tree and insert a few
extra files into it before generating a tarball.
]
[setup makefile: handle hs-source-dirs
Simon Marlow <[EMAIL PROTECTED]>**20070416140205
but only if there's a single entry for now.
]
[setup makefile: use -p option to mkdir when making object directories
Simon Marlow <[EMAIL PROTECTED]>**20070416134720
I had a feeble attempt to avoid needing this originally, using $(sort ...)
to create parents before children, but sometimes the parents aren't in
the list, so it doesn't work. mkdir's -p option is POSIX, and I found
it on all the platforms I checked (Linux, Solaris, Darwin, FreeBSD).
]
[a couple of fixes to 'setup makefile'
Simon Marlow <[EMAIL PROTECTED]>**20070416133307
Put the -package-name flag at the beginning of GHC_OPTS, allowing it
to be overriden later (as we do in the base package, for example).
Also, add -split-objs if necessary.
]
[remove illegal literal tabs in strings (again)
[EMAIL PROTECTED]
[add missing support for .hs-boot/.lhs-boot with 'setup makefile'
Simon Marlow <[EMAIL PROTECTED]>**20070413152244]
[Pass all the Cc/Ld flags to hsc2hs
Ian Lynagh <[EMAIL PROTECTED]>**20070413131318]
[REINSTATE: Fix C/Haskell type mismatches
[EMAIL PROTECTED]
This patch was previously applied and then rolled back.
This new version imports System.Posix.Types.CPid correctly for nhc98.
]
[Fix -Wall warnings
Ian Lynagh <[EMAIL PROTECTED]>**20070411004954]
[-Wall fixes
Ian Lynagh <[EMAIL PROTECTED]>**20070411003509]
[Remove duplicate import
Ian Lynagh <[EMAIL PROTECTED]>**20070410170930]
[remove illegal tab chars in string literals
[EMAIL PROTECTED]
[Use Distribution.Compat.FilePath.pathSeparator in Distribution.SetupWrapper, instead of having a local copy.
[EMAIL PROTECTED]
[Fix C/Haskell type mismatches
Ian Lynagh <[EMAIL PROTECTED]>*-20070404003510]
[Rejig the adjacent checking in the unlitter
Ian Lynagh <[EMAIL PROTECTED]>**20070407173415
We were rejecting
# 1 "foo"
> ...
in the HUnit package, claiming that it had a comment next to a program line.
Now we treat anything cpp inserts as being blank.
]
[parse (but don't pass on) options for ./configure
Ian Lynagh <[EMAIL PROTECTED]>**20070406153622]
[Remove cabal-{builder,install,setup,upload} (now in separate repos)
Ian Lynagh <[EMAIL PROTECTED]>**20070405194729]
[Add 'setup makefile' command
Simon Marlow <[EMAIL PROTECTED]>**20070309155022
'setup makefile' generates a Makefile that performs the steps
necessary to compile the Haskell sources to object code. This only
works for libraries, and only with GHC right now.
Instead of simply 'setup build', you can do this:
$ ./setup makefile
$ make
$ ./setup build
where './setup makefile' does the preprocessing and generates a
Makefile tailored to the current package. 'make' will build all the
Haskell code to object files, and 'setup build' will build any C code
and the library archives.
The reason for all this is that you can say 'make -j' and get a
parallel build, or you can say
make dist/build/Foo.o EXTRA_HC_OPTS=-keep-s-file
to compile a single file with extra options.
]
[make Setup suitable for building the libraries with GHC
Ian Lynagh <[EMAIL PROTECTED]>**20061112214536]
[Expose Distribution.Compat.ReadP
Ian Lynagh <[EMAIL PROTECTED]>**20061112214447]
[Fix C/Haskell type mismatches
Ian Lynagh <[EMAIL PROTECTED]>**20070404003510]
[Use rawSystemPath for calling tar rather than system
Duncan Coutts <[EMAIL PROTECTED]>**20070327110606
Means we get -v verboe output and better error messages if the command
is not found.
]
[Check the return value of tar
Bryan O'Sullivan <[EMAIL PROTECTED]>**20070326234148]
[Fixed and improved Haddock comments
[EMAIL PROTECTED]
[If we export ParseResult, we should export PError and PWarning, too
[EMAIL PROTECTED]
[remove Makefile.inc (only affects nhc98)
[EMAIL PROTECTED]
[Fixes compiling an executable for profiling with template haskell.
Judah Jacobson <[EMAIL PROTECTED]>**20070314012802]
[rejig handling of continuation lines (fixes Cabal #118)
Ross Paterson <[EMAIL PROTECTED]>**20070311154610
Also avoids quadratic behaviour on long fields.
]
[add Distribution.SetupWrapper to exposed-modules
Simon Marlow <[EMAIL PROTECTED]>**20070309122146]
[Tweaks to make Cabal play nicer with haddock
Ian Lynagh <[EMAIL PROTECTED]>**20070308155718
The path for the html docs now includes the package name at the end,
which works nicer for multiple packages sharing a contents/index.
Use --ghc-pkg when available (in haddock darcs only currently) to tell
haddock which ghc-pkg to use.
Use --allow-missing-html when available (in haddock darcs only
currently) to tell haddock not to worry if it can't find the HTML for
packages we depend on. This is necessary when haddocking a group of
packages before moving them all into place.
]
[Cope with ghc-pkg telling us packages are broken
Ian Lynagh <[EMAIL PROTECTED]>**20070307193131]
[Tell GHC to use .hs mode when we want it to cpp something for us
Ian Lynagh <[EMAIL PROTECTED]>**20070307143612]
[Add parentheses so expressions are parsed correctly
Ian Lynagh <[EMAIL PROTECTED]>**20070307131941]
[minor refactoring
Ross Paterson <[EMAIL PROTECTED]>**20070301002731]
[fix \begin{code typo
Ross Paterson <[EMAIL PROTECTED]>**20070301002557]
[document the --with-compiler / --with-hc inconsistency
Ross Paterson <[EMAIL PROTECTED]>**20070225115601]
[Clarify documentation on --with-compiler and --with-hc-pkg
[EMAIL PROTECTED]
[minor markup tweaks
Ross Paterson <[EMAIL PROTECTED]>**20070218104622]
[This usePackages stuff is haddock-specific so name it as such
Duncan Coutts <[EMAIL PROTECTED]>**20070213201434]
[{en,dis}able-use-packages, -optP-P only if haddock<0.8
Conal Elliott <[EMAIL PROTECTED]>**20070204061106]
[cabal-upload: Added command-line options for username, password, checking instead of uploading. Added ability to get login from file, and to get password from the terminal. Added still unused verbosity options. Bumped version number to 0.2.
[EMAIL PROTECTED]
[exclude Setup.lhs
Ross Paterson <[EMAIL PROTECTED]>**20070212193608
This was generating a useless Main entry in the lib doc index.
(good for STABLE)
]
[Add recent Cabal modules to nhc98 build system.
[EMAIL PROTECTED]
[Compatibility with Haskell'98.
[EMAIL PROTECTED]
Import Distribution.Compat.Exception instead of Control.Exception.
Fix illegal indentation of cascaded do-blocks.
]
[add --enable-optimization/--disable-optimization config options (on by default)
Ross Paterson <[EMAIL PROTECTED]>**20070212004513]
[cabal-upload: nicer output.
[EMAIL PROTECTED]
[Send Accept header.
[EMAIL PROTECTED]
[Allow uploading multiple packages.
[EMAIL PROTECTED]
[Changed HTTP dependency to >= 1.0.
[EMAIL PROTECTED]
[cabal-upload: Removed build-simple since hackage doesn't seem to accept it for non-lib packages.
[EMAIL PROTECTED]
[Added URL for cabal-upload wiki page.
[EMAIL PROTECTED]
[Added usage message to cabal-upload.
[EMAIL PROTECTED]
[Added a small hacky first version of cabal-upload.
[EMAIL PROTECTED]
[cabal-setup doesn't need -cpp
Ross Paterson <[EMAIL PROTECTED]>**20070115154724]
[Refactorings only
Simon Marlow <[EMAIL PROTECTED]>**20070114203741
Here are a batch of refactorings to clean up parsing and parts of the
simple build system. This patch originated in a patch sent to
[email protected] with an intial implementation of
configurations. Since then we decided to go a different route with
configurations, so I have separated the refactoring from the
configurations patch.
At this point, 2 tests fail for me, but I get the same 2 failures
without this patch.
]
[pass arguments through when performing the setup actions ourselves
Ross Paterson <[EMAIL PROTECTED]>**20070113133211]
[separate option for the compiler for Setup.hs
Ross Paterson <[EMAIL PROTECTED]>**20070113133000
This need not be the same compiler as used to build the package
]
[Ignoring user packages when installing locally doesn't make sense.
Lemmih <[EMAIL PROTECTED]>**20070112150318]
[cabal-install now caches downloaded packages in the directory for the package, and with .tar.gz extension.
[EMAIL PROTECTED]
[cabal-install.cabal: Added build-type field. Change hs-source-dir to hs-source-dirs (hs-source-dir has been deprecated for some time).
[EMAIL PROTECTED]
[cabal-install --user now keeps package cache and package list in ~/.cabal-install
[EMAIL PROTECTED]
[fix ghc-options (not a listField)
[EMAIL PROTECTED]
[add a Build-Type field, and use it in setupWrapper
Ross Paterson <[EMAIL PROTECTED]>**20070111233018
As discussed on the libraries list (Nov 2006), add a field Build-Type
which can be used to declare that this package uses one of the boilerplate
setup scripts. This allows setupWrapper (used by cabal-setup and
cabal-install) to bypass the setup script in this case and perform
the setup actions itself.
]
[remove a use of null+head
Ross Paterson <[EMAIL PROTECTED]>**20070111182430]
[remove two fromJust's
Ross Paterson <[EMAIL PROTECTED]>**20070111182401]
[pass CABAL_VERSION to Hugs
Ross Paterson <[EMAIL PROTECTED]>**20070111182216]
[cabal-install now puts the package list in /var/lib/cabal-install and the tarballs in /var/cache/cabal-install by default. Added command-line options for changing those.
[EMAIL PROTECTED]
[Track verbosity argument changes
Ian Lynagh <[EMAIL PROTECTED]>**20070111180601]
[Testsuite quietening
Ian Lynagh <[EMAIL PROTECTED]>**20070111175329]
[cabal-install: Output usage info for the right command when pasrsing the package name arguments fails.
[EMAIL PROTECTED]
[SetupWrapper now passes verbosity to other functions, as required by Igloo's patch.
[EMAIL PROTECTED]
[Make cabal-install use setupWrapper (the library version of cabal-setup).
[EMAIL PROTECTED]
[Moved the cabal-setup code to Distribution.SetupWrapper, so that cabal-install can use it. CabalSetup.hs now just calls the setupWrapper function.
[EMAIL PROTECTED]
[Quieten the testsuite more
Ian Lynagh <[EMAIL PROTECTED]>**20070111155957]
[Pass verbosity info down to warn
Ian Lynagh <[EMAIL PROTECTED]>**20070111154526]
[Derive Show on various datatypes
Ian Lynagh <[EMAIL PROTECTED]>**20070111140220]
[Give feedback in runTests.sh
Ian Lynagh <[EMAIL PROTECTED]>**20070111132654]
[Be less verbose at verbosity level 1
Ian Lynagh <[EMAIL PROTECTED]>**20070111131228]
[Fix warning
Ian Lynagh <[EMAIL PROTECTED]>**20070111130928]
[No need for -fno-warn-unused-matches any more
Ian Lynagh <[EMAIL PROTECTED]>**20070111130824]
[Always pass Hooks around, not Maybe Hooks
Ian Lynagh <[EMAIL PROTECTED]>**20070111124234]
[Make Makefile use the right ghc/ghc-pkg
Ian Lynagh <[EMAIL PROTECTED]>**20070111122833]
[Add -Wall to GHCFLAGS
Ian Lynagh <[EMAIL PROTECTED]>**20070111102742]
[Updated cabal-install test scripts to use the main Cabal repo.
[EMAIL PROTECTED]
[Added cabal-install test scripts.
[EMAIL PROTECTED]
[Added cabal-install Makefile.
[EMAIL PROTECTED]
[Added HTTP package code used by cabal-install.
[EMAIL PROTECTED]
[Imported all the cabal-install sources.
[EMAIL PROTECTED]
[Added cabal-install dep on regex-compat.
[EMAIL PROTECTED]
[Removed old CabalInstall.hs (it has moved to cabal-install/src in one of the pataches I pulled in).
[EMAIL PROTECTED]
[Pulling in cabal-install: changed default Hackage DB URL.
[EMAIL PROTECTED]
[Pulling cabal-with-install into Cabal: cabal-install.cabal changes.
[EMAIL PROTECTED]
[Pulling changes from cabal-with-install: Multiple repositories.
[EMAIL PROTECTED]
Original patch:
Sat Sep 2 00:13:40 CEST 2006 Paolo Martini <[EMAIL PROTECTED]>
* Multiple repositories.
]
[Pulling changes from cabal-with-install: Stripping off the dependencies, only HTTP left
[EMAIL PROTECTED]
Original patch:
Sun Aug 20 19:01:03 CEST 2006 Paolo Martini <[EMAIL PROTECTED]>
* Stripping off the dependencies, only HTTP left
]
[Resolve Makefile conflict from importing Cabal-with-install patches.
[EMAIL PROTECTED]
[a program to test download & install a bunch of cabal packages
[EMAIL PROTECTED]
[added --inplace trick to cabal build so that cabal-install can build on machines without cabal.
[EMAIL PROTECTED]
[First attempt to make a new repository (url in the configuration)
Paolo Martini <[EMAIL PROTECTED]>**20060820180342]
[Tarball index format support
Paolo Martini <[EMAIL PROTECTED]>**20060816223509]
[Quieten a test
Ian Lynagh <[EMAIL PROTECTED]>**20070110175223]
[Pass 0 verbosity on to GHC when building
Ian Lynagh <[EMAIL PROTECTED]>**20070110174050]
[More verbosity tweaking
Ian Lynagh <[EMAIL PROTECTED]>**20070110172956]
[Rejig verbosity levels a bit; 1 is now the default (was 0)
Ian Lynagh <[EMAIL PROTECTED]>**20070110165149]
[Make system tweaks to avoid cabal thinking it isn't bootstrapped when running the testsuite
Ian Lynagh <[EMAIL PROTECTED]>**20070110162940]
[Typo
Ian Lynagh <[EMAIL PROTECTED]>**20070110154617]
[Refer to the right variables
Ian Lynagh <[EMAIL PROTECTED]>**20070110151326]
[Give unrecognised flags more clearly
Ian Lynagh <[EMAIL PROTECTED]>**20070110144650]
[Beautify
Ian Lynagh <[EMAIL PROTECTED]>**20070110143711]
[Retab
Ian Lynagh <[EMAIL PROTECTED]>**20070110143103]
[Remove some chatter from the test scripts
Ian Lynagh <[EMAIL PROTECTED]>**20070110142756]
[Eliminate more warnings
Ian Lynagh <[EMAIL PROTECTED]>**20070110142114]
[More -Wall clean fixes
Ian Lynagh <[EMAIL PROTECTED]>**20070110135838]
[Improve cleaning
Ian Lynagh <[EMAIL PROTECTED]>**20070110134230]
[-Wall clean fixes
Ian Lynagh <[EMAIL PROTECTED]>**20070110125523
This patch is sponsored by Hac 07.
Have you hacked a lambda today?
]
[Fix non-fatal problem with 'setup haddock' for an exe package
Simon Marlow <[EMAIL PROTECTED]>**20070109133751
For some unknown reason, we were passing --use-package=P to haddock,
where P is the name of the current executable package. This can never
work, since P is not a library and will not be installed. Fortunately
Haddock ignores the error and continues anyway.
]
[Set the Cabal version when building via the fptools build system
[EMAIL PROTECTED]
Without this patch, Cabal is effectively "version-less" and all .cabal
files with a version requirement are unusable. Therefore I think that
this patch (or at least something equivalent) should be pushed to the
6.6.1 branch, too.
]
[added --save-configure flag to clean. got some complaints that there was no way to avoid reconfiguring after a clean. now if you use --save-configure, you should be able to.
[EMAIL PROTECTED]
[tiny mod to License comments
[EMAIL PROTECTED]
[improving help output
[EMAIL PROTECTED]
As suggested by Claus Reinke in this ticket:
http://hackage.haskell.org/trac/hackage/ticket/105
]
[fix ./Setup unregister --help, which was giving the help for register
Simon Marlow <[EMAIL PROTECTED]>**20061215165000]
[Fix the links in the user guide to the API docs
Duncan Coutts <[EMAIL PROTECTED]>*-20061129131633]
[Fix the links in the user guide to the API docs
Duncan Coutts <[EMAIL PROTECTED]>**20061129131633]
[haddock comments for SrcDist.hs
[EMAIL PROTECTED]
[some haddock comments for LocalBuildInfo.hs
[EMAIL PROTECTED]
[a little comment for JHC.hs
[EMAIL PROTECTED]
[some comments for Install.hs
[EMAIL PROTECTED]
[some comments for Hugs.hs
[EMAIL PROTECTED]
[haddock comments for GHC and GHCPackageConig
[EMAIL PROTECTED]
[some comments for Configure.hs
[EMAIL PROTECTED]
[some comments for Build.hs
[EMAIL PROTECTED]
[minor comments and cleanup for Setup.hs
[EMAIL PROTECTED]
[some haddock explanation of preprocessors
[EMAIL PROTECTED]
[some comments for Package.hs
[EMAIL PROTECTED]
[haddockizing some comments from Make.hs
[EMAIL PROTECTED]
[adding comments to Program.hs
[EMAIL PROTECTED]
[comments for the Program module
[EMAIL PROTECTED]
[don't return an error code just because there's no library to register
[EMAIL PROTECTED]
[Purely cosmetic; have '--<FOO>-args' use ARGS on their RHS rather than PATH in usage output
[EMAIL PROTECTED]
[parse executable field as a token (as documented), rather than free text
Ross Paterson <[EMAIL PROTECTED]>**20061120093400]
[trim trailing spaces (including CRs) from all input lines
Ross Paterson <[EMAIL PROTECTED]>**20061120092526]
[help nhc98 find the import of programLocation
[EMAIL PROTECTED]
[sdist: make it work on Windows platforms by simplifying 'tar' invocation. Hopefully not at the cost of other plats (i.e., as-yet untested there..)"
[EMAIL PROTECTED]
[build: consult and use any user-provided settings for 'ld' and 'ar'
[EMAIL PROTECTED]
[defaultUserHooks.sDistHook: pass in optional LBI to SrcDist.sdist
[EMAIL PROTECTED]
[defaultProgramConfiguration: add 'ld' and 'tar' entries
[EMAIL PROTECTED]
[revise Paths module for the Hugs target
Ross Paterson <[EMAIL PROTECTED]>**20061108223349
When targetting Hugs, the Paths module now uses prefix-independent
paths relative to the location of the Main module of the program,
on all platforms.
For the Hugs target, this replaces the code using GetModuleFileNameA(),
which never worked. Behaviour under GHC should be unchanged.
]
[Hugs: fix location of installed package info
Ross Paterson <[EMAIL PROTECTED]>**20061021144613]
[Fix escaping of ' chars in register.sh script.
Duncan Coutts <[EMAIL PROTECTED]>**20061016215459]
[Tidy up command comments
Duncan Coutts <[EMAIL PROTECTED]>**20061013211158]
[Fix getDataDir etc. when bindir=$prefix
Simon Marlow <[EMAIL PROTECTED]>**20061013100941]
[Update text on the front page: packages can now overlap in GHC 6.6
Simon Marlow <[EMAIL PROTECTED]>**20061012114601
]
[New unlit code "ported" from cpphs-1.2
Lennart Kolmodin <[EMAIL PROTECTED]>**20061009192609]
[Share one more place where the cabal version is defined.
Duncan Coutts <[EMAIL PROTECTED]>**20061010140027]
[Fix spelling error in error message.
Duncan Coutts <[EMAIL PROTECTED]>**20061010140013]
[Centeralise the places that know that Cabal version number
Duncan Coutts <[EMAIL PROTECTED]>**20061010135918]
[Remove spurious debug message.
Duncan Coutts <[EMAIL PROTECTED]>**20061010125643]
[Bump to next unstable development version
Duncan Coutts <[EMAIL PROTECTED]>**20061010125602]
[Make cabal know it's own version number correctly
Duncan Coutts <[EMAIL PROTECTED]>**20061010130939
This is an unpleasent way of doing it.
Will have to fix once and for all in the next version.
]
[TAG 1.1.6
Duncan Coutts <[EMAIL PROTECTED]>**20061009123801]
Patch bundle hash:
2060c91fe0d43fd95895442f35692dd957f24570
_______________________________________________
cabal-devel mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cabal-devel