Skip to content

Commit

Permalink
Refactoring get/setup script to be more similar.
Browse files Browse the repository at this point in the history
  • Loading branch information
mithro committed Sep 13, 2015
1 parent 66e49f0 commit 0fde134
Show file tree
Hide file tree
Showing 2 changed files with 88 additions and 43 deletions.
90 changes: 56 additions & 34 deletions scripts/get-env.sh
Expand Up @@ -5,15 +5,17 @@ SETUP_SRC=$(realpath ${BASH_SOURCE[0]})
SETUP_DIR=$(dirname $SETUP_SRC)
TOP_DIR=$(realpath $SETUP_DIR/..)
BUILD_DIR=$TOP_DIR/build
CONDA_DIR=$SETUP_DIR/build/conda


set -x
set -e

mkdir -p $BUILD_DIR
if [ ! -d $BUILD_DIR ]; then
mkdir -p $BUILD_DIR
fi

# Get and build gcc+binutils for the target
# gcc+binutils for the target
CONDA_DIR=$SETUP_DIR/build/conda
export PATH=$CONDA_DIR/bin:$PATH
(
if [ ! -d $CONDA_DIR ]; then
Expand All @@ -29,61 +31,83 @@ export PATH=$CONDA_DIR/bin:$PATH
conda install gcc-lm32-elf
)

# Get iverilog
# migen
MIGEN_DIR=$BUILD_DIR/migen
(
# Get iverilog
sudo apt-get install -y iverilog
)
# Install gtkwave
sudo apt-get install -y gtkwave

# Get migen
(
cd $BUILD_DIR
rm -fr migen
git clone https://github.com/m-labs/migen.git
cd migen
if [ ! -d $MIGEN_DIR ]; then
cd $BUILD_DIR
git clone https://github.com/m-labs/migen.git
cd migen
else
cd $MIGEN_DIR
git pull
fi
cd vpi
make all
sudo make install
)
export PYTHONPATH=$BUILD_DIR/migen:$PYTHONPATH
export PYTHONPATH=$MIGEN_DIR:$PYTHONPATH
python3 -c "import migen"

# Get misoc
# misoc
MISOC_DIR=$BUILD_DIR/misoc
(
cd $BUILD_DIR
rm -fr misoc
git clone https://github.com/m-labs/misoc.git
cd misoc
if [ ! -d $MISOC_DIR ]; then
cd $BUILD_DIR
git clone https://github.com/m-labs/misoc.git
cd misoc
else
cd $MISOC_DIR
git pull
fi
git submodule init
git submodule update
cd tools
make
sudo make install
)
export PYTHONPATH=$BUILD_DIR/misoc:$PYTHONPATH
export PYTHONPATH=$MISOC_DIR:$PYTHONPATH
python3 -c "import misoclib"

# Get liteeth
# liteeth
LITEETH_DIR=$BUILD_DIR/liteeth
(
cd $BUILD_DIR
rm -fr liteeth
git clone https://github.com/enjoy-digital/liteeth.git
if [ ! -d $LITEETH_DIR ]; then
cd $BUILD_DIR
git clone https://github.com/enjoy-digital/liteeth.git
cd liteeth
else
cd $LITEETH_DIR
git pull
fi
)
export PYTHONPATH=$BUILD_DIR/liteeth:$PYTHONPATH
export PYTHONPATH=$LITEETH_DIR:$PYTHONPATH
python3 -c "import liteeth"

# Get libfpgalink
# libfpgalink
MAKESTUFF_DIR=$BUILD_DIR/makestuff
(
cd $BUILD_DIR
sudo apt-get install -y libreadline-dev libusb-1.0-0-dev python-yaml sdcc fxload
rm -fr makestuff
wget -qO- http://tiny.cc/msbil | tar zxf -
cd makestuff/libs
../scripts/msget.sh makestuff/libfpgalink
cd libfpgalink

if [ ! -d $MAKESTUFF_DIR ]; then
cd $BUILD_DIR
wget -qO- http://tiny.cc/msbil | tar zxf -
cd makestuff/libs
../scripts/msget.sh makestuff/libfpgalink
cd libfpgalink
else
cd $MAKESTUFF_DIR
cd makestuff/libs/libfpgalink
fi
make deps
)
export LD_LIBRARY_PATH=$BUILD_DIR/makestuff/libs/libfpgalink/lin.x64/rel:$LD_LIBRARY_PATH
export PYTHONPATH=$BUILD_DIR/makestuff/libs/libfpgalink/examples/python/
export LD_LIBRARY_PATH=$MAKESTUFF_DIR/libs/libfpgalink/lin.x64/rel:$LD_LIBRARY_PATH
export PYTHONPATH=$MAKESTUFF_DIR/libs/libfpgalink/examples/python/:$PYTHONDIR
python3 -c "import fl"

USER=$(whoami)
Expand All @@ -101,7 +125,5 @@ USER=$(whoami)
sudo apt-get install -y vizzini-dkms
)

sudo apt-get install -y gtkwave

echo "Completed. To load environment:"
echo "source HDMI2USB-misoc-firmware/scripts/setup-env.sh"
41 changes: 32 additions & 9 deletions scripts/setup-env.sh
Expand Up @@ -7,12 +7,6 @@ SETUP_SRC=$(realpath ${BASH_SOURCE[0]})
SETUP_DIR=$(dirname $SETUP_SRC)
TOP_DIR=$(realpath $SETUP_DIR/..)
BUILD_DIR=$TOP_DIR/build
CONDA_DIR=$SETUP_DIR/build/conda

MIGEN_DIR=$BUILD_DIR/migen
MISOC_DIR=$BUILD_DIR/misoc
LITEETH_DIR=$BUILD_DIR/liteeth
MAKESTUFF_DIR=$BUILD_DIR/makestuff

if [ $SOURCED = 0 ]; then
echo "You must source this script, rather then try and run it."
Expand All @@ -24,14 +18,43 @@ if [ ! -z $HDMI2USB_ENV ]; then
echo "Already sourced this file."
return
fi
HDMI2USB_ENV=1

echo " This script is: $SETUP_SRC"
echo " Firmware directory: $TOP_DIR"
echo " Build directory is: $BUILD_DIR"

if [ ! -d $BUILD_DIR ]; then
echo "Build directory not found!"
return
fi

# gcc+binutils for the target
CONDA_DIR=$SETUP_DIR/build/conda
export PATH=$CONDA_DIR/bin:$PATH

# migen
MIGEN_DIR=$BUILD_DIR/migen
export PYTHONPATH=$MIGEN_DIR:$PYTHONPATH
python3 -c "import migen" || (echo "migen broken"; return)

# misoc
MISOC_DIR=$BUILD_DIR/misoc
export PYTHONPATH=$MISOC_DIR:$PYTHONPATH
python3 -c "import misoclib" || (echo "misoc broken"; return)

# liteeth
LITEETH_DIR=$BUILD_DIR/liteeth
export PYTHONPATH=$LITEETH_DIR:$PYTHONPATH
python3 -c "import liteeth" || (echo "liteeth broken"; return)

# libfpgalink
MAKESTUFF_DIR=$BUILD_DIR/makestuff
export LD_LIBRARY_PATH=$MAKESTUFF_DIR/libs/libfpgalink/lin.x64/rel:$LD_LIBRARY_PATH
export PYTHONPATH=$MIGEN_DIR:$MISOC_DIR:$LITEETH_DIR:$MAKESTUFF_DIR/libs/libfpgalink/examples/python/:$PYTHONPATH
export PATH=$CONDA_DIR/bin:/opt/Xilinx/14.7/ISE_DS/ISE/bin/lin64/:$PATH
export PYTHONPATH=$MAKESTUFF_DIR/libs/libfpgalink/examples/python/:$PYTHONDIR
python3 -c "import fl" || (echo "libfpgalink broken"; return)

export PATH=$PATH:/opt/Xilinx/14.7/ISE_DS/ISE/bin/lin64/

alias python=python3

HDMI2USB_ENV=1

0 comments on commit 0fde134

Please sign in to comment.