Repository : ssh://darcs.haskell.org//srv/darcs/packages/Cabal On branch : master
http://hackage.haskell.org/trac/ghc/changeset/b0b7d91fe72e44d376e9d8e886437f42cabb7a83 >--------------------------------------------------------------- commit b0b7d91fe72e44d376e9d8e886437f42cabb7a83 Author: Duncan Coutts <[email protected]> Date: Thu Jan 15 11:06:12 2009 +0000 More improvments to the bootstrap.sh script >--------------------------------------------------------------- cabal-install/bootstrap.sh | 21 ++++++++++++++++----- 1 files changed, 16 insertions(+), 5 deletions(-) diff --git a/cabal-install/bootstrap.sh b/cabal-install/bootstrap.sh index ebfcb1a..c6975d1 100644 --- a/cabal-install/bootstrap.sh +++ b/cabal-install/bootstrap.sh @@ -39,8 +39,13 @@ die () { grep -e "cabal-install" ./cabal-install.cabal > /dev/null \ || die "The bootstrap.sh script must be run in the cabal-install directory" +GHC_VER=$(${GHC} --numeric-version) +GHC_PKG_VER=$(${GHC_PKG} --version | cut -d' ' -f 5) +[ ${GHC_VER} = ${GHC_PKG_VER} ] \ + || die "Version mismatch between ${GHC} and ${GHC_PKG}" + # Cache the list of packages: -echo "Checking installed packages..." +echo "Checking installed packages for ghc-${GHC_VER}..." ${GHC_PKG} list > ghc-pkg.list \ || die "running '${GHC_PKG} list' failed" @@ -93,14 +98,15 @@ fetch_pkg () { URL=${HACKAGE_URL}/${PKG}/${VER}/${PKG}-${VER}.tar.gz if which ${CURL} > /dev/null then - ${CURL} -O ${URL} || die "Failed to download ${PKG}." + ${CURL} -C - -O ${URL} || die "Failed to download ${PKG}." elif which ${WGET} > /dev/null then ${WGET} -c ${URL} || die "Failed to download ${PKG}." else die "Failed to find a downloader. 'wget' or 'curl' is required." fi - #TODO check that ./${PKG}-${VER}.tar.gz exists + [ -f "${PKG}-${VER}.tar.gz" ] \ + || die "Downloading ${URL} did not create ${PKG}-${VER}.tar.gz" } unpack_pkg () { @@ -119,10 +125,15 @@ unpack_pkg () { install_pkg () { PKG=$1 - rm -f Setup - ${GHC} --make Setup -o Setup + [ -x Setup ] && ./Setup clean + [ -f Setup ] && rm Setup + + ${GHC} --make Setup -o Setup \ + || die "Compiling the Setup script failed" + [ -x Setup ] || die "The Setup script does not exist or cannot be run" ./Setup configure --user "--prefix=${HOME}/.cabal" \ + --with-compiler=${GHC} --with-hc-pkg=${GHC_PKG} \ ${EXTRA_CONFIGURE_OPTS} ${VERBOSE} \ || die "Configuring the ${PKG} package failed" _______________________________________________ Cvs-libraries mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-libraries
