Fixed FIXME regd. Proxy in HTTPUtils.hs; Using proxy handling functions from HTTP
Partial Fix #543 by handling empty HTTP proxy uris
Fixed configure script location detection of autoconf.

The autoconf generated configure script tries to automatically determine the
location of the configure script. If the name (argv[0]) of the configure script
does not include a path separator autoconf will *first* scan the path for a
file named "configure" before defaulting to the current directory.

Cabal previously called configure by doing "sh configure" this will result in
it finding any files named "configure" in the path and using the location of
that file as the basedir to look for (amongst other things) C sources. The
result is that any C sources in the unpacked cabal directories are not found,
resulting in configure/build failures for all such packages (e.g. unix-time)
and all packages depending on those.

Changing cabal to call "sh ./configure" will avoid this behaviour, the presence
of a path separator causes autoconf to default to checking the current
directory *first*.
On install, update the .cabal file with the one from the index

(patch manually merged into the cabal-1.16 branch)

This allows us to make minor changes to packages after they have been
released, without changing the package .tar.gz file. We already keep
the .cabal file outsite the package in the index and use it for
dependency planning. This already lets us do fixes such as making
dependency constraints tighter. Currently we cannot make dep
constraints more relaxed however, since the original .cabal file is
the one used when we get to the actual configure step.

So with this change, we now use the updated .cabal file for the
configure and build too. So there's more fixes we can do post-release.
In particlar, in combination with easier editing on hackage, this
should help us address the problems around the PVP and open or closed
version constraints. It should allow a system of conservative upper
bounds, but allow editing them when new versions of deps are released
and we find that they happen to work fine.
Extend the unpack command for the .cabal file updating

By default, "cabal unpack blah" will also update the .cabal file with
the one from the index, so it's consistent with what you get via
cabal install. Also added a --pristine flag so you can get the original
tarball without the updated .cabal file.
Bump Cabal version number to 1.16.0.1
Bump cabal-install version number to 1.16.0
Always use either -static or -dynamic when compiling with GHC

-static is no longer necessarily the default
Merge branch 'master' of github.com:haskell/cabal
Update bug tracker location
Merge with cabal-1.16
Fix building cabal-install with ghc-6.12 and older

Fall back to using serial rather job control for base < 4.3.
So this means if you build caba-install with ghc-6.12 or older
then the -j flag will do nothing, it'll still run serially.

BTW, if anyone wants to build cabal-install using a Haskell impl
with no support for concurrency then they can use the same trick.
(The serial and parallel job control impls deliberately share the
same interface.)
Enable shared lib by default if using a compiler that does dynamic by default
Merge branch 'master' of github.com:haskell/cabal
Fix build as suggested by Ian Lynagh
Conditionally turn on dynamic-executable by default

If the compiler builds dynamic things by default, then so does Cabal.
Test suite: make the location of ghc and ghc-pkg configurable
Test suite: derive name of ghc-pkg from GHC
Test suite: pass the configured GHC version to more commands
Test suite: fix compilation error