Commit 72f23083 authored by Ben Gamari's avatar Ben Gamari 🐢 Committed by Marge Bot
Browse files

ghc-in-ghci: Drop it

isovector recently noticed that it is broken and regardless it is
superceded by `hadrian/ghci`.
parent ee77148e
......@@ -223,11 +223,6 @@ GIT_COMMIT_ID
# Should be equal to testdir_suffix from testsuite/driver/testlib.py.
*.run
# -----------------------------------------------------------------------------
# Output of ghc-in-ghci
/.ghci-objects/
# -----------------------------------------------------------------------------
# ghc.nix
ghc.nix/
......
:set prompt "%s [inner]> "
#!/bin/sh -xe
# Runs ghc-stage2 with GHCi settings that allow GHC to be loaded and run in the
# interpreter. Options provided on the command-line will be passed directly to
# the GHCi invocation.
# Note that this script is intended to be run from the root of the GHC repo,
# like this:
# ./utils/ghc-in-ghci/run.sh
# This is substantially faster than doing an actual compile, and so can aid in
# tighter development iterations. It can be made even faster by specifying "-jN"
# for parallelism. Typically choosing an N value close to the number of logical
# CPU cores you have leads to faster loads. Here's how to specify -j:
# ./utils/ghc-in-ghci/run.sh -j4
# The script will also run `:load Main`, to load GHC's main module. After that,
# running `main` will run an inner GHCi, because there is a default `:set args
# --interactive ...`. To override this, use `:set args ...` or `:main ...`.
# If you don't want to wait for `:load Main`, since you want to load some other
# module, then you can use `Ctrl+C` to cancel the initial load.
# Look in two common locations for a GHC installation (the results of using
# the make- and Hadrian-based build systems, respectively).
if [ -d ./inplace/lib ]; then
GHC_BIN=./inplace/bin/ghc-stage2
_GHC_TOP_DIR=./inplace/lib
elif [ -d ./_build/stage1/lib ]; then
GHC_BIN=./_build/stage1/bin/ghc
_GHC_TOP_DIR=./_build/stage1/lib
else
echo "Could not find GHC installation"
exit 1
fi
exec ${GHC_BIN} \
--interactive \
-ghci-script ./utils/ghc-in-ghci/settings.ghci \
-ghci-script ./utils/ghc-in-ghci/load-main.ghci \
+RTS -A128m -RTS \
"$@"
:set -icompiler/backpack
:set -icompiler/basicTypes
:set -icompiler/cmm
:set -icompiler/codeGen
:set -icompiler/coreSyn
:set -icompiler/deSugar
:set -icompiler/ghci
:set -icompiler/hieFile
:set -icompiler/hsSyn
:set -icompiler/iface
:set -icompiler/llvmGen
:set -icompiler/main
:set -icompiler/nativeGen
:set -icompiler/parser
:set -icompiler/prelude
:set -icompiler/profiling
:set -icompiler/rename
:set -icompiler/simplCore
:set -icompiler/simplStg
:set -icompiler/specialise
:set -icompiler/stgSyn
:set -icompiler/stranal
:set -icompiler/typecheck
:set -icompiler/types
:set -icompiler/utils
:set -icompiler/vectorise
:set -ighc
:set -Icompiler
:set -Iincludes
:set -Iincludes/dist-derivedconstants/header
:set -package=ghc-boot-th
:set -DGHC_STAGE=2
:set -DHAVE_INTERNAL_INTERPRETER
:set -DGHC_LOADED_INTO_GHCI
:set -XNoImplicitPrelude
-- make it work for Make stage2
:set -Icompiler/stage2
:set -Icompiler/stage2/build
:set -icompiler/stage2/build
-- make it work for Make stage1
:set -Icompiler/stage1
:set -Icompiler/stage1/build
:set -icompiler/stage1/build
-- make it work for Hadrian stage2
:set -I_build/generated
:set -I_build/stage2/compiler/build
:set -i_build/stage2/compiler/build
-- make it work for Hadrian stage1
:set -I_build/stage1/compiler/build
:set -i_build/stage1/compiler/build
-- -fobject-code is required because bytecode doesn't support unboxed tuples
-- https://gitlab.haskell.org/ghc/ghc/issues/1257
:set -odir ./.ghci-objects
:set -hidir ./.ghci-objects
:set -fobject-code
-- Setup args so that running "main" will run ghci and set the prompt to
-- indicate that it is an inner ghci.
:set args --interactive -ghci-script utils/ghc-in-ghci/inner.ghci
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment