From: Simon Marlow Date: Mon, 28 Jul 2008 13:46:47 +0000 (+0000) Subject: don't strip the inplace GHC executables (for debugging) X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=4ddcff11bae7e4c66c3c895b277eb8b2230aea67 don't strip the inplace GHC executables (for debugging) --- diff --git a/ghc/Makefile b/ghc/Makefile index b1a14d3..282ffe7 100644 --- a/ghc/Makefile +++ b/ghc/Makefile @@ -13,6 +13,9 @@ else INSTALL_FLAGS = --enable-shell-wrappers endif +# Don't strip the inplace versions, we might need to debug them +INPLACE_INSTALL_FLAGS += --disable-executable-stripping + boot:: boot.stage.$(stage) all:: build.stage.$(stage) @@ -102,6 +105,7 @@ build.stage.%: '$$prefix/html' \ '$$prefix/haddock' \ --distpref dist-stage$* \ + $(INPLACE_INSTALL_FLAGS) \ $(INSTALL_FLAGS) # XXX For now we always install the stage 2 compiler diff --git a/utils/installPackage/installPackage.hs b/utils/installPackage/installPackage.hs index 6bd2489..3e86ff0 100644 --- a/utils/installPackage/installPackage.hs +++ b/utils/installPackage/installPackage.hs @@ -22,8 +22,8 @@ main idatadir : idocdir : ihtmldir : ihaddockdir : args' -> case parseArgs args' of - (verbosity, distPref, enableShellWrappers) -> - doInstall verbosity distPref enableShellWrappers + (verbosity, distPref, enableShellWrappers, strip) -> + doInstall verbosity distPref enableShellWrappers strip ghcpkg ghcpkgconf destdir topdir iprefix ibindir ilibdir ilibexecdir idynlibdir idatadir idocdir ihtmldir @@ -35,21 +35,23 @@ main parseArgs :: [String] -> (Verbosity, -- verbosity FilePath, -- dist prefix - Bool) -- enable shell wrappers? -parseArgs = f normal defaultDistPref False - where f v dp esw (('-':'v':val):args) - = f (readEOrFail flagToVerbosity val) dp esw args - f v _ esw ("--distpref":dp:args) = f v dp esw args - f v dp _ ("--enable-shell-wrappers":args) = f v dp True args - f v dp esw [] = (v, dp, esw) - f _ _ _ args = error ("Bad arguments: " ++ show args) + Bool, -- enable shell wrappers? + Bool) -- strip exe? +parseArgs = f normal defaultDistPref False True + where f v dp esw strip (('-':'v':val):args) + = f (readEOrFail flagToVerbosity val) dp esw strip args + f v _ esw strip ("--distpref":dp:args) = f v dp esw strip args + f v dp _ strip ("--enable-shell-wrappers":args) = f v dp True strip args + f v dp esw strip ("--disable-executable-stripping":args) = f v dp esw False args + f v dp esw strip [] = (v, dp, esw, strip) + f _ _ _ _ args = error ("Bad arguments: " ++ show args) -doInstall :: Verbosity -> FilePath -> Bool +doInstall :: Verbosity -> FilePath -> Bool -> Bool -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> IO () -doInstall verbosity distPref enableShellWrappers +doInstall verbosity distPref enableShellWrappers strip ghcpkg ghcpkgconf destdir topdir iprefix ibindir ilibdir ilibexecdir idynlibdir idatadir idocdir ihtmldir ihaddockdir = @@ -95,7 +97,8 @@ doInstall verbosity distPref enableShellWrappers htmldir = toPathTemplate' ihtmldir, haddockdir = toPathTemplate' ihaddockdir } - lbi_copy = lbi { installDirTemplates = i_copy } + lbi_copy = lbi { installDirTemplates = i_copy, + stripExes = strip } -- When we run GHC we give it a $topdir that includes the -- $compiler/lib/ part of libsubdir, so we only want the -- $pkgid part in the package.conf file. This is a bit of