aaglenn / domino-compiler

The Domino compiler to run packet programs on pipelined switches

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

1. Ensure you have python3 (> 3.5.1) git g++ (>4.9) build-essential autotools-dev libncurses5-dev autoconf libtool and zlib1g-dev
(Use a package manager like macports or apt-get to get them.)
2. Get clang + llvm from
http://llvm.org/releases/3.5.0/clang+llvm-3.5.0-macosx-apple-darwin.tar.xz (OS X)
http://llvm.org/releases/3.5.0/clang+llvm-3.5.0-x86_64-linux-gnu-ubuntu-14.04.tar.xz (Ubuntu)
Similar files exist for other distributions as well, though this has only been tested so far on Ubuntu and OS X.
3. Install sketch from https://people.csail.mit.edu/asolar/sketch-1.6.9.tar.gz,
add the sketch binary to the path.
4. Install banzai from https://github.com/packet-transactions/banzai.git
5. git clone https://github.com/packet-transactions/domino-compiler.git
6. ./autogen.sh
7. ./configure CLANG_DEV_LIBS=<wherever you untarred clang+llvm in step 2>
(make sure CLANG_DEV_LIBS is set to an absolute file system path)
8. make
9. make check

About

The Domino compiler to run packet programs on pipelined switches


Languages

Language:C++ 86.9%Language:Python 9.5%Language:Makefile 1.5%Language:C 1.1%Language:M4 0.7%Language:P4 0.4%Language:Shell 0.0%