[Hackage] #116: Odd paths on Windows
Duncan Coutts
duncan.coutts at worc.ox.ac.uk
Fri Aug 24 12:38:03 EDT 2007
On Fri, 2007-08-24 at 16:05 +0100, Neil Mitchell wrote:
> Hi
>
> > C:\program files\common files\foo-1.0\mylibdata.txt
>
> Eek. The purpose of Common Files is for things that are shared between
> multiple programs, not for things that might move. Having C:\Program
> Files\Haskell\Fixed would be a lot better than polluting a directory
> that really should have been killed ages ago.
How about just C:\Program Files\Haskell\$datasubdir
> > where should documentation go?
> >
> > C:\program files\haskell\doc\html\foo\index.html
> > C:\program files\haskell\doc\html\foo\foo.haddock
>
> Anywhere you want, users will never find it without a shortcut on the
> start menu or some UI in their interpreter. Users should not be
> prodding around in Program Files, and in default Windows installs its
> hidden and you have to click a message "i really know what i'm doing"
> to see inside it.
Since you don't care, how about:
$prefix\doc\$pkgid\
eg
C:\Program Files\Haskell\doc\foo-1.0\
It will at least be relative to prefix unlike the datadir which is fixed
for libs.
As for UI, that's the job of a windows installer for a package imho and
something like GUIHaskell can use ghc-pkg to find where the docs were
installed (if at all). Sadly there's nothing similar for hugs.
I've attached a patch with my suggestion. Someone who cares about
Windows should test and apply it, or make a better patch.
Actually, said Windows dev would also need to update the user guide to
say what the default paths are and then close this bug:
http://hackage.haskell.org/trac/hackage/ticket/116
Duncan
-------------- next part --------------
New patches:
[Change installation layout on Windows slightly
Duncan Coutts <duncan at haskell.org>**20070824163141
Make Haskell part of the default $prefix and make docs relative
to $prefix rather than $datadir which is fixed for libs.
Make the default fixed lib $datadir be Program Files\Haskell rather
than Common Files.
] {
hunk ./Distribution/Simple/InstallDirs.hs 148
- windowsCommonFilesDir <- getWindowsCommonFilesDir
hunk ./Distribution/Simple/InstallDirs.hs 149
- Windows _ -> windowsProgramFilesDir
+ Windows _ -> windowsProgramFilesDir </> "Haskell"
hunk ./Distribution/Simple/InstallDirs.hs 151
- binDir = case os of
- Windows _ -> "$prefix" </> "Haskell" </> "bin"
- _other -> "$prefix" </> "bin"
+ binDir = "$prefix" </> "bin"
hunk ./Distribution/Simple/InstallDirs.hs 153
- Windows _ -> "$prefix" </> "Haskell"
+ Windows _ -> "$prefix"
hunk ./Distribution/Simple/InstallDirs.hs 165
- Windows _ | hasLibs -> windowsCommonFilesDir
- | otherwise -> "$prefix" </> "Haskell"
+ Windows _ | hasLibs -> windowsProgramFilesDir </> "Haskell"
+ | otherwise -> "$prefix"
hunk ./Distribution/Simple/InstallDirs.hs 169
- docDir = "$datadir" </> "doc" </> "$pkgid"
+ docDir = case os of
+ Windows _ -> "$prefix" </> "doc" </> "$pkgid"
+ _other -> "$datadir" </> "doc" </> "$pkgid"
hunk ./Distribution/Simple/InstallDirs.hs 449
-getWindowsCommonFilesDir :: IO FilePath
-getWindowsCommonFilesDir = do
-#if mingw32_HOST_OS || mingw32_TARGET_OS
- m <- shGetFolderPath csidl_PROGRAM_FILES_COMMON
-#else
- let m = Nothing
-#endif
- case m of
- Nothing -> getWindowsProgramFilesDir
- Just s -> return s
-
}
Context:
[Install any license file
Duncan Coutts <duncan at haskell.org>**20070824161642]
[Update documentation on install-includes field
Duncan Coutts <duncan at haskell.org>**20070824155146]
[Add install-includes .h files to the sdist tarball
Duncan Coutts <duncan at haskell.org>**20070824154839]
[Only create includes and bin dirs if necessary
Duncan Coutts <duncan at haskell.org>**20070824152749
For includes, don't list the include dir in the package registration
info unless we're actually going to install some include files.
So we should create fewer pointless empty directories. See bug #97.
]
[Look for install-includes in . first, then in include-dirs
Duncan Coutts <duncan at haskell.org>**20070824152632
Since .h files listed in install-includes need not be in the include-dirs
search path at all.
]
[Document lots of flags and the new build-tools: field
Duncan Coutts <duncan at haskell.org>**20070824134316
Document the following options:
--enable-library-for-ghci / --disable-library-for-ghc
--enable-library-vanilla / --disable-library-vanilla
--enable-split-objs / --disable-split-objs
--jhc
--save-configure
--with-PROG= --PROG-args=
--gen-pkg-config=
]
[Remove unused --enable-haddock-use-packages flags
Duncan Coutts <duncan at haskell.org>**20070824133045
The feature they controled had been removed but
the --enable/disable flag had not been removed.
]
[Add a "build-tools:" field to the cabal file format
Duncan Coutts <duncan at haskell.org>**20070823212946
It's the same format as the build-depends, eg:
build-tools: cpphs, c2hs >= 0.15
During the configure step we try to configure the listed programs and
if a version range is specified then we check that it is satisfied.
]
[Hack to supress a warning when building Cabal
Duncan Coutts <duncan at haskell.org>**20070823212645
Normally we'd warn if using a new format cabal file and a cabal-version >= 1.2
field is not specified in the cabal file. However we cannot do this for cabal
itself or we'd not be able to bootstrap. So we just supress the warning for
the package "Cabal".
]
[Wrap the configure help text program list and rename the prog arg templates
Duncan Coutts <duncan at haskell.org>**20070823193245
Use "--with-PROG=" rather than "--with-<program>" since the other subsitution
bits like ARGS, PATH etc are upper case contractions. So it's more consistent.
]
[Make the GetOpt help text fit in 80 cols by wrapping the description
Duncan Coutts <duncan at haskell.org>**20070823193015
And reduce the padding slightly.
The configure help text look slightly less terrible now, though we've still
got too many long flags and short flags with long arg names so there's not
really enough width for the description so it wraps in too many cases.
]
[Don't include the massive list of --with-prog --prog-args flags in help text
Duncan Coutts <duncan at haskell.org>**20070823155910
Instead have just two generic ones in the help text and at the bottom,
list the programs that the flags apply to.
This still needs to be properly word wrapped to fit in 80 cols (as does the
rest of the help text).
]
[Swap haddock inplace/install dirs that were accidentally the wrong way round
Duncan Coutts <duncan at haskell.org>**20070823154258]
[Fix register --gen-script
Duncan Coutts <duncan at haskell.org>**20070823154218
It's still useless on Windows.
]
[The prologue.txt is not needed for anything
Duncan Coutts <duncan at haskell.org>**20070822214122
The text from the description is now used for haddock
]
[tweak #if's to avoid treating non-GHC as old GHC
Ross Paterson <ross at soi.city.ac.uk>**20070819232947]
[Hugs: get dropDrive from current version of filepath
Ross Paterson <ross at soi.city.ac.uk>**20070819232801]
[We don't need a short option configure flag for selecting nhc
Duncan Coutts <duncan at haskell.org>**20070817043021
I don't think we need one for ghc either, but perhaps we shouldn't remove
that immediately as people might be using it. It's safe to remove -n now
becuase nobody is relying on it as nhc support is still incomplete.
]
[Trivial reformatting
Duncan Coutts <duncan at haskell.org>**20070817043002]
[Make configure much less verbose by default and give useful output with -v
Duncan Coutts <duncan at haskell.org>**20070817042414
This actually brings it into line with the other commands which do not produce
much output by default. It is very very quiet by default now though.
To make the -v output nice we have to lower the verbosity one notch in places.
]
[Add a sanity check that the ghc and ghc-pkg versions should be equal
Duncan Coutts <duncan at haskell.org>**20070817034519
This was easy to do now that Programs know how to find their version numbers.
]
[Rewrite the Program abstraction and the ProgramConfiguration database
Duncan Coutts <duncan at haskell.org>**20070817033841
Also make the follow on changes to everything that uses Program.
The notion of a program is now split into the abstract notion of a program
that we know about and might be able to configure, and a configured program
that we can actually run. The ProgramConfiguration database is similarly
split. We still keep user-supplied loation and arguments and use them when
we configure programs. The abstract Program now has functions to search for
the program on the system and for finding the version number. This allows
for more generic configuration of programs.
]
[Add some extra functions to Compat.Map that we'll need later
Duncan Coutts <duncan at haskell.org>**20070817033800]
[Split ConfVar into ConfFlag and ConfVar
Esa Ilari Vuokko <ei at vuokko.info>**20070816003105]
[Make 'make tests' runnable again
Esa Ilari Vuokko <ei at vuokko.info>**20070816002009]
[Add configure --docdir flag which defaults to "$datadir/doc/$pkgid"
Duncan Coutts <duncan at haskell.org>**20070816011634
Fixes bug #140
]
[Fix Paths_pkg.hs generation
Esa Ilari Vuokko <ei at vuokko.info>**20070814204557]
[Warning police: Add type signatures and rename arg
Esa Ilari Vuokko <ei at vuokko.info>**20070814160830]
[Warning police: Remove unused statement and import
Esa Ilari Vuokko <ei at vuokko.info>**20070814143057]
[Warning police: provide fallback pattern match
Esa Ilari Vuokko <ei at vuokko.info>**20070814143008]
[Reorder, make explicit and beautify imports
Esa Ilari Vuokko <ei at vuokko.info>**20070814142000]
[Refactor the code for managing installation directories
Duncan Coutts <duncan at haskell.org>**20070814092320
New types for the collection of installation directory templates and a
separate type for the collection of actual real install FilePaths.
The templates are represented with a PathTemplate adt.
Dir templates can now be relative to each other, eg $htmldir to $docdir
Default install dir templates are now specified compactly in one place.
Adding new dirs should be considerably simpler than previously.
This patch should not actualy change where anything is installed.
]
[ghc only supports the -x flag in 6.6 and above
Duncan Coutts <duncan at haskell.org>**20070814090557]
[Cabal now depends on teh containers package
Ian Lynagh <igloo at earth.li>**20070801235622]
[update ghc-pkg field parse error message
Duncan Coutts <duncan at haskell.org>**20070812170800]
[Clean up import ordering and format
Esa Ilari Vuokko <ei at vuokko.info>**20070811113227]
[Explicit imports
Esa Ilari Vuokko <ei at vuokko.info>**20070811111518]
[Use existing parsers to handle ghc-pkg field output
Esa Ilari Vuokko <ei at vuokko.info>**20070809041153]
[fix build with GHC 6.2.x
Simon Marlow <simonmar at microsoft.com>**20070809102844]
[Never generate empty language extension flags
Duncan Coutts <duncan at haskell.org>**20070808235240
Needed because some compilers support some language extensions by default
so need no flag to turn those extensions on.
]
[Parse the output of ghc --supported-languages correctly
Magnus Jonsson <magnus at smartelectronix.com>**20070808204523]
[Oops, fix deprecated Distribution.Extension module
Duncan Coutts <duncan at haskell.org>**20070807172125
it no longer exports the internal per-compiler extension to flags functions
as they are no longer exist and the equivalents are internal.
]
[remove unused local vars
Duncan Coutts <duncan at haskell.org>**20070807171235]
[Add compilerExtensions field to Compiler and make each compiler fill it in
Duncan Coutts <duncan at haskell.org>**20070807170653
It's just a list of supported extensions and the corresponding compiler flags.
For most compilers this is currently just a static list. For ghc 6.7 and above
we query ghc to find the list of language extensions it supports.
In each case the code has moved out into the compiler-specific modules and the
core code treats it generically.
The extensionsToFlags function has been split into two:
extensionsToFlags which now returns the flags for the supported extensions and
unsupportedExtensions which does what it says it does. This is because the two
roles of the previous function were always used separately, never together.
]
[Use String rather than importing a module just to misuse a String type alias
Duncan Coutts <duncan at haskell.org>**20070807170526]
[Add a little documentation.
Thomas Schilling <nominolo at gmail.com>**20070807162023]
[Fix error message.
Thomas Schilling <nominolo at gmail.com>**20070807162001]
[Fix translation of deprecated fields. Add test case.
Thomas Schilling <nominolo at gmail.com>**20070807161837]
[Warn if no Cabal-version field is specified, but new syntax is used.
Thomas Schilling <nominolo at gmail.com>**20070806235131
This isn't quite exact. Ideally, we'd like to have something like
isEmptyRange (specified-range && >= 1.2) but implementing isEmptyRange
is non-trivial, so we'll go with this imperfect solution until we need
that feature elsewhere.
]
[Re-enable and update unit tests.
Thomas Schilling <nominolo at gmail.com>**20070807000155]
[Cosmetic cleanup (fix line length)
Thomas Schilling <nominolo at gmail.com>**20070806235644]
[No longer fail to parse packages without any library or executable
Thomas Schilling <nominolo at gmail.com>**20070806235404
sections. Issue a warning instead. (The previous error message
"Unexpected end of file" was not very helpful.)
]
[Allow querying for the wildcard version range.
Thomas Schilling <nominolo at gmail.com>**20070806234707]
[Split up make target for documentation generation. Allows to build
Thomas Schilling <nominolo at gmail.com>**20070803200533
the user's guide separately from the Haddock documentation.
]
[Remove more os-specific cppery
Duncan Coutts <duncan at haskell.org>**20070807115707
The only difference for this one was / vs \\ path separators
]
[Remove use of cpp in Distribution.System
Duncan Coutts <duncan at haskell.org>**20070807111837
base it off of the System.Info.os string rather than cpp defs
]
[Make things build with ghc-6.6.x rather than just ghc HEAD
Duncan Coutts <duncan at haskell.org>**20070807111724
filepath-1.0 does not export dropDrive
]
[Ask the compiler what languages it supports, when possible
Ian Lynagh <igloo at earth.li>**20070805171323]
[Pattern match on an OS datatype rather than using ifdef everywhere
Ian Lynagh <igloo at earth.li>**20070805130347]
[Add StandaloneDeriving extension
Ian Lynagh <igloo at earth.li>**20070804192416]
[extensionToGHCFlag is now version dependent, and uses -XFoo flags for >=6.7
Ian Lynagh <igloo at earth.li>**20070804191833]
[Add TypeFamilies extension
Ian Lynagh <igloo at earth.li>**20070804184959]
[Don't complain about AllRightsReserved licenses
Duncan Coutts <duncan at haskell.org>**20070804125110
That can be done in hackage when people try to upload. Fixes bug #127.
]
[Add setup register --gen-pkg-config flag for distros that want that.
Duncan Coutts <duncan at haskell.org>**20070804115512
It generates the actual file to be passed to the compiler's package program.
This is obviously compiler-specific.
]
[Correct the location of the haddock dir in inplace registrations
Duncan Coutts <duncan at haskell.org>**20070804115428]
[Improve hangling of the title and prolog for haddock docs
Duncan Coutts <duncan at haskell.org>**20070804021538
Only include ": " in the title if it has a synopsis to use as subtitle
Use the description as the prolog, or if that's empty we use the synopsis.
Do the same for executables, fixing bug #142.
]
[Less confusing haddock command output when there are no libs in the package
Duncan Coutts <duncan at haskell.org>**20070804013133
It says:
> No documentation was generated as this package does not contain a library.
> Perhaps you want to use the haddock command with the --executables flag.
]
[normalise the input and output file names when pre-processing
Duncan Coutts <duncan at haskell.org>**20070804013029
eg so we don't call cpp with ././src/blah -o ./dist/blah
since those ././ can end up in error messages.
]
[Add message saying where haddock docs got put
Duncan Coutts <duncan at haskell.org>**20070804010016
And make the similar message for sdist respect the verbosity
]
[Put the generated haddock-prolog file under dist
Duncan Coutts <duncan at haskell.org>**20070804004848]
[Try and simplify cleaning by always removing dist
Duncan Coutts <duncan at haskell.org>**20070804004643
so we don't have to individually track all the files we create
we still have to delete a few files outside of the build dir sadly
the configuration is still preserved if you specify --save-configure
]
[Remove compilerBinaryName, use compilerId instead
Duncan Coutts <duncan at haskell.org>**20070804004524]
[Make the writing registration script message less silly
Duncan Coutts <duncan at haskell.org>**20070804002353]
[Fix haddock markup for finalizePackageDescription
Duncan Coutts <duncan at haskell.org>**20070804001745]
[Change error message for tabs used as indentation to something more
Thomas Schilling <nominolo at gmail.com>**20070803213331
helpful.
]
[Fix import path to HUnit.
Thomas Schilling <nominolo at gmail.com>**20070803200829]
[Fix printing of 'impl' checks.
Thomas Schilling <nominolo at gmail.com>**20070803200622]
[Move compiler-specific code for configurion into compiler modules
Duncan Coutts <duncan at haskell.org>**20070803213321
There's slightly more code overally but it's no longer incomprehensible
because it's not all mixed together for all the different compilers.
]
[Clean up rather un-sbstract use of Compiler in configure
Duncan Coutts <duncan at haskell.org>**20070803205901]
[-Wall police
Duncan Coutts <duncan at haskell.org>**20070802194000]
[Change Compiler's compilerVersion fild to compilerId
Duncan Coutts <duncan at haskell.org>**20070802193400
Of type PackageIdentifier rather than Version.
]
[Remove Distribution.Simple.Configure.findProgram as it's no longer used
Duncan Coutts <duncan at haskell.org>**20070802194230]
[Put the haddock and hscolour version numbers in the global ProgramConfiguration
Duncan Coutts <duncan at haskell.org>**20070802185614
We do this during the configure step and then later we don't have to run
haddock & hscolour again to find out their version numbers.
This also eliminates some annoying module interdependencies.
Eventually the Program abstraction ought to include the ability for programs
to discover their own version numbers so it can be done more modularly.
]
[Alter version parse error message to make it clearer
Duncan Coutts <duncan at haskell.org>**20070802181620]
[Add version field to Program and add findProgram(AndVersion) utilities
Duncan Coutts <duncan at haskell.org>**20070802172941
findProgram and findProgramAndVersion construct Program values
The latter makes it easier to parse output of --version calls.
The idea is that we should carry the version number along with the program
if we know it, so we can later decide version-dependent args without having
to do more IO to find the program version, eg see use_optP_P & haddockVersion.
]
[Tidy some imports/exports
Duncan Coutts <duncan at haskell.org>**20070802003250]
[Remove redundant configure flags, missed bits of previous refactoring.
Duncan Coutts <duncan at haskell.org>**20070802003154]
[Make the Compiler abstraction use the Program abstraction
Duncan Coutts <duncan at haskell.org>**20070801205428
So out with compilerPath :: FilePath, in with compilerProg :: Program
Similarly for compilerPkgTool.
Lots of knock-on changes due to this, including converting many more uses of
rawSystemExit to rawSystemProgram.
]
[Simplify rawSystemProgram using programPath
Duncan Coutts <duncan at haskell.org>**20070801200247]
[Add programPath :: Program -> FilePath
Duncan Coutts <duncan at haskell.org>**20070801200139
At the moment it's a partial function, but we should change that by having
a distinction between an abstract program and a configured program.
]
[Clean up cpphs/ghc -cpp preprocessor code
Duncan Coutts <duncan at haskell.org>**20070801135256
Now better separated and uses Program better.
Also no longer needs internal lookupProgram' utils function.
]
[Clean up calling of ar, make it use Program abstraction
Duncan Coutts <duncan at haskell.org>**20070801021526]
[Make all the pre-processors use the Program abstraction
Duncan Coutts <duncan at haskell.org>**20070801021049]
[Disallow tabs .cabal files with new syntax
Thomas Schilling <nominolo at gmail.com>**20070803181244]
[Fix tab in Cabal.cabal.
Thomas Schilling <nominolo at gmail.com>**20070803175701]
[Add impl(...) conditional to configurations.
Thomas Schilling <nominolo at gmail.com>**20070802010527
You can now use expressions like impl( ghc >= 6.6.1 ) in conditionals
in .cabal files.
]
[Add documentation for Cabal Configurations.
Thomas Schilling <nominolo at gmail.com>**20070803125632]
[Move the SetupWrapper module under Distribution.Simple
Duncan Coutts <duncan at haskell.org>**20070803012304
It's really a wrapper around the simple build system.
]
[Cleanup. fix line length
Thomas Schilling <nominolo at gmail.com>**20070801221329]
[Fix name of flag in error message
Duncan Coutts <duncan at haskell.org>**20070802172141]
[Add readVersion convenience function to Distribution.Version
Duncan Coutts <duncan at haskell.org>**20070802171703
So it's merely readVersion :: String -> Maybe Version
Having to use readP_to_S parseVersion all over the place is annoying.
]
[extraArgs should override args in command lines
Duncan Coutts <duncan at haskell.org>**20070801023042
besides, the order was inconsistent within the same function between the
UserSpecified and FoundOnSystem cases.
]
[FIX compilation with GHC 6.2.x
Simon Marlow <simonmar at microsoft.com>**20070801095523]
[Move the haddock code out into it's own module
Duncan Coutts <duncan at haskell.org>**20070731183410
It removes about 250 loc from Distribution.Simple
]
[-Wall police
Duncan Coutts <duncan at haskell.org>**20070731173626]
[Fix order of warnings.
Thomas Schilling <nominolo at gmail.com>**20070730225311]
[Add line numbers to unknown fields error message.
Thomas Schilling <nominolo at gmail.com>**20070730225256]
[Display a more helpful error message, when unknown fields are
Thomas Schilling <nominolo at gmail.com>**20070730224026
noticed.
]
[Fix self-compile warnings.
Thomas Schilling <nominolo at gmail.com>**20070730220537]
[Fix haddock markup
Ian Lynagh <igloo at earth.li>**20070729233545
I haven't checked that it looks right, but it is now accepted by haddock.
]
[Pass ghc -package flags when using it as a C compiler in GHCMakefile
Ian Lynagh <igloo at earth.li>**20070729152803
This means we get the CPP include directories included.
]
[Add a missing case in updateCfg
Ian Lynagh <igloo at earth.li>**20070729105910]
[Resolve conflicts
Ian Lynagh <igloo at earth.li>**20070729105854]
[Fix conflicts. Fix for changed argument to 'preprocessSources'.
Thomas Schilling <nominolo at gmail.com>**20070728223322]
[Rename field.
Thomas Schilling <nominolo at gmail.com>**20070728223102]
[Change HUnit module path to Test.HUnit (the default now).
Thomas Schilling <nominolo at gmail.com>**20070728221453]
[Add note to 'clean' that it could be simpler, but for compatibility
Thomas Schilling <nominolo at gmail.com>**20070728221342
reasons isn't (for now).
]
[Let sdist command run the preprocessors itself. This way we don't
Thomas Schilling <nominolo at gmail.com>**20070728221237
have to put stuff into the source tree.
]
[Store resolved package description in local build info.
Thomas Schilling <nominolo at gmail.com>**20070728221102
The clean and sdist commands need to use a flattened representation of
the original description. Note the notes for
flattenPackageDescription for some problems with this approach.
]
[Export 'flattenPackageDescription'.
Thomas Schilling <nominolo at gmail.com>**20070728215155]
[Minor documentation fix.
Thomas Schilling <nominolo at gmail.com>**20070728214859]
[Modify test case.
Thomas Schilling <nominolo at gmail.com>**20070728214825]
[Add function 'flattenPackageDescription'.
Thomas Schilling <nominolo at gmail.com>**20070728214746]
[Avoid reporting the same missing dependecy twice.
Thomas Schilling <nominolo at gmail.com>**20070728214645]
[Add documentation
Thomas Schilling <nominolo at gmail.com>**20070728214541]
[Add documentation
Thomas Schilling <nominolo at gmail.com>**20070728214444]
[Add/Fix test cases
Thomas Schilling <nominolo at gmail.com>**20070728214410]
[Minor. Moved some code.
Thomas Schilling <nominolo at gmail.com>**20070719222541]
[Add function 'ignoreCondition'.
Thomas Schilling <nominolo at gmail.com>**20070719222444]
[Re-enable and extend test case.
Thomas Schilling <nominolo at gmail.com>**20070719222341]
[Filter duplicate dependencies.
Thomas Schilling <nominolo at gmail.com>**20070719222233]
[Adopt new CondTree data structure.
Thomas Schilling <nominolo at gmail.com>**20070719125305
'finalizePackageDescription' now also takes dependencies of
executables into account.
]
[Change CondTree data structure to something more flexible.
Thomas Schilling <nominolo at gmail.com>**20070719124655
This also requires some interface changes.
]
[Add simpler representation of a .cabal file with conditions.
Thomas Schilling <nominolo at gmail.com>**20070717203942]
[Preprocessor output never gets written back to the source dir.
Thomas Schilling <nominolo at gmail.com>**20070717174026
'preprocessSources' now gets an additional flag to determine whether
to process all sources (for building) or only platform independent
ones (for sdist).
]
[Add resolved package description to 'LocalBuildInfo'.
Thomas Schilling <nominolo at gmail.com>**20070716204325]
[Fix removed import by importing a required accessor only.
Thomas Schilling <nominolo at gmail.com>**20070716204238]
[Add tags target to generate a tags file using 'hasktags'. (Unix only)
Thomas Schilling <nominolo at gmail.com>**20070716203015]
[Rename 'PreparedPackageDescription' to 'GenericPackageDescription'
Thomas Schilling <nominolo at gmail.com>**20070716200427]
[Remove unused dependency.
Thomas Schilling <nominolo at gmail.com>**20070716200215]
[Move configured_cabal to 'dist' directory.
Thomas Schilling <nominolo at gmail.com>**20070716154146]
[Bugfix by Ian Lynagh: Cabal can't have a Cabal-Version header; it breaks bootstrapping
Thomas Schilling <nominolo at gmail.com>**20070716151535]
[Partial bugfix to allow traditional .cabal files without a library but
Thomas Schilling <nominolo at gmail.com>**20070628112301
global build dependencies. The correct solution is to add global
dependencies to each executable and implement dependency resolution
for executables.
The current workaround is to add the dependencies to the library, but
disable building of the library.
]
[Take advantage of configurations to build Cabal itself and fix bootstrapping problem.
Thomas Schilling <nominolo at gmail.com>**20070628081438]
[Re-add configurations module to .cabal file. (Got removed on update.)
Thomas Schilling <nominolo at gmail.com>**20070623204706]
[Properly fix tests.
Thomas Schilling <nominolo at gmail.com>**20070623203939]
[Disable (comment out) tests for now. Break due to changed interface.
Thomas Schilling <nominolo at gmail.com>**20070623203121]
[Fix typo.
Thomas Schilling <nominolo at gmail.com>**20070623202333]
[Add proper handling of configurations to configure command.
Thomas Schilling <nominolo at gmail.com>**20070623202017]
[Fix warnings.
Thomas Schilling <nominolo at gmail.com>**20070623201723]
[Adjust to new package reading interface.
Thomas Schilling <nominolo at gmail.com>**20070623201546]
[Downcase flagnames. Re-add config flags (were removed due to update).
Thomas Schilling <nominolo at gmail.com>**20070623201455]
[Fix warnings.
Thomas Schilling <nominolo at gmail.com>**20070623201254]
[Fix warnings, add documentation and changes in response to some
Thomas Schilling <nominolo at gmail.com>**20070623201135
interface changes.
]
[Make explicit that reading package descriptions isn't supported here, ATM.
Thomas Schilling <nominolo at gmail.com>**20070623200701]
[Fixed warning
Thomas Schilling <nominolo at gmail.com>**20070623200522]
[Fixed warnings, added documentation, and changed os and arch names to
Thomas Schilling <nominolo at gmail.com>**20070623200453
simple strings.
]
[Add helpers for reading and writing the file to hold a configured cabal-file.
Thomas Schilling <nominolo at gmail.com>**20070618195710]
[Add commandline support for specifying defaults for flags.
Thomas Schilling <nominolo at gmail.com>**20070618195449]
[Compatibility parsing and working configurations.
Thomas Schilling <nominolo at gmail.com>**20070618195329]
[Pretty printing of conditions and CondTrees. Non-dependency
Thomas Schilling <nominolo at gmail.com>**20070614125031
information of CondTrees is now a modifier. Move CondTree resolution functionality.
]
[Prototypical configurations
Thomas Schilling <nominolo at gmail.com>**20070613184332]
[add line numbers to all field times
Thomas Schilling <nominolo at gmail.com>**20070613173548]
[add flag as a section
Thomas Schilling <nominolo at gmail.com>**20070613172416]
[added docs
Thomas Schilling <nominolo at gmail.com>**20070613172309]
[fixed typo
Thomas Schilling <nominolo at gmail.com>**20070613172230]
[Abstracted variables out of conditions. Generalized simplification
Thomas Schilling <nominolo at gmail.com>**20070613172114
function to accept an arbitrary partial assignment of these
variables.
]
[Added Configuration parsing and simplification.
Thomas Schilling <nominolo at gmail.com>**20070529210344]
[Extended low-level parsing routines to also allow labelled blocks and if-blocks.
Thomas Schilling <nominolo at gmail.com>**20070529205958]
[Added documentation.
Thomas Schilling <nominolo at gmail.com>**20070528211221]
[Use the right output directory when building C sources for executables
Duncan Coutts <duncan at haskell.org>**20070726213309]
[Use our own GetOpt if __GLASGOW_HASKELL__ >= 606 only
Ian Lynagh <igloo at earth.li>**20070724213112
Used to be if __GLASGOW_HASKELL__ >= 604, but the 6.4 branch had a bug
which looks likely to be the cause of GHC build failures we're seeing:
- procNextOpt (NonOpt x) RequireOrder = ([],x:rest,us,[])
+ procNextOpt (NonOpt x) RequireOrder = ([],x:rest,[],[])
]
[-Wall police
Duncan Coutts <duncan at haskell.org>**20070724172023]
[Update user guide about haddock --css --hyperlink-source --hscolour-css
Duncan Coutts <duncan at haskell.org>**20070724160742
The haddock --css flag is new. The old --hscolour=[path] flag got split
into two flags: --hyperlink-source and --hscolour-css=path
]
[Remove a couple bits of unused code and imports
Duncan Coutts <duncan at haskell.org>**20070724110732]
[use nhc-Options rather than deprecated nhc98-Options
Duncan Coutts <duncan at haskell.org>**20070724110703]
[Hugs build: track change to install-includes
Ross Paterson <ross at soi.city.ac.uk>**20070724101816]
[Rename --hscolour to --hyperlink-source and add haddock --css flag
Duncan Coutts <duncan at haskell.org>**20070723190026
So now --hyperlink-source controles wether or not we run hscolour and
get haddock to link to the sources. The new flag --hscolour-css can
be used to override the css file that hscolour uses.
Also, the new flag --css can override the css file that haddock uses.
]
[Merges from hscolour patch and make it work with haddock-0.8
Duncan Coutts <duncan at haskell.org>**20070723180602
Some minor changes due to changes since the hscolour patch was written.
Make it work with haddock-0.8 by using %{MODULE} rather than %{FILE}
and generate output file names to match (ie not using the original file
extension, just using the module name for the output file).
]
[HsColour support
Roberto Zunino <zunrob at users.sf.net>**20070530194747
Integration of Cabal, HsColour, and Haddock.
(Also fixes bug #102)
]
[Remove ContextStack extension
Ian Lynagh <igloo at earth.li>**20070709132341
Seems to be based on GHC's -fcontext-stack flag, which takes an integer
argument.
]
[Remove InlinePhase extension
Ian Lynagh <igloo at earth.li>**20070708172919
As far as I can tell
(a) The -finline-phase flag stopped actually being accepted by GHC
sometime between GHC 4.08.2 and GHC 5.04.3
(b) It took an Int argument
]
[Add KindSignatures extension
Ian Lynagh <igloo at earth.li>**20070708120616]
[Add the MagicHash extension
Ian Lynagh <igloo at earth.li>**20070708111043]
[TAG 2007-06-29
Ian Lynagh <igloo at earth.li>**20070629112545]
Patch bundle hash:
1727b639778a8309ea24e2b7ec1aa746e30051a9
More information about the cabal-devel
mailing list