Skip to content
This repository has been archived by the owner on Aug 23, 2018. It is now read-only.

Latest commit

 

History

History
65 lines (53 loc) · 1.51 KB

build-from-source.md

File metadata and controls

65 lines (53 loc) · 1.51 KB

Build from Source

If you are interesting in modifying this project, here is what you need to do as of 20 November 2015:

mkdir sandbox
cd sandbox
cabal sandbox init

git clone https://github.com/elm-lang/elm-compiler.git
cd elm-compiler
cabal sandbox init --sandbox ../.cabal-sandbox
cd ..

git clone https://github.com/elm-lang/elm-package.git
cd elm-package
cabal sandbox init --sandbox ../.cabal-sandbox
cd ..

git clone https://github.com/elm-lang/elm-make.git
cd elm-make
cabal sandbox init --sandbox ../.cabal-sandbox
cd ..

git clone https://github.com/elm-lang/core.git
cd core
git remote add vilterp git@github.com:vilterp/core.git
git fetch vilterp new-debugger-api-support
git checkout new-debugger-api-support
cd ..

git clone https://github.com/elm-lang/elm-reactor.git
cd elm-reactor
cabal sandbox init --sandbox ../.cabal-sandbox
git checkout expando
elm-package install
cd elm-stuff/packages/elm-lang/core
rm -rf 3.0.0
ln -s ../../../../../core 3.0.0
cd ../../../..

cd ../elm-compiler
cabal install
cd ../elm-package
cabal install
cd ../elm-make
cabal install
cd ../elm-reactor
git submodule init
git submodule update

Then most of your work will be in elm-reactor/, where you recompile with this:

./cabal-build.py

This does an extra check to see if any Elm files have changed and recompiles accordingly. You will need to run this for any changes you make, whether they are in Haskell or Elm.

The binaries will all go in sandbox/.cabal-sandbox/bin so that is where you want to point for testing.