silicon.dockerfile 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. FROM buildpack-deps:xenial
  2. RUN apt-get update -yqq && apt-get install -yqq software-properties-common unzip cmake
  3. RUN add-apt-repository -s "deb http://apt.llvm.org/`lsb_release -cs`/ llvm-toolchain-`lsb_release -cs`-3.9 main"
  4. RUN wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key| apt-key add -
  5. RUN apt-get update -yqq
  6. RUN apt-get install -yqq clang-3.9 lldb-3.9
  7. ENV MICROHTTPD_VERSION=0.9.39
  8. ENV MICROHTTPD=/libmicrohttpd
  9. ENV MICROHTTPD_HOME=$MICROHTTPD-$VERSION
  10. RUN wget http://mirror.ibcp.fr/pub/gnu/libmicrohttpd/libmicrohttpd-$MICROHTTPD_VERSION.tar.gz
  11. RUN tar xf libmicrohttpd-$MICROHTTPD_VERSION.tar.gz
  12. RUN cd libmicrohttpd-$MICROHTTPD_VERSION && \
  13. ./configure --prefix=$MICROHTTPD_HOME && \
  14. make install
  15. ENV PATH=${MICROHTTPD_HOME}/bin:${PATH}
  16. RUN apt-get install -yqq libboost-dev cmake
  17. ENV SILICON=/silicon
  18. COPY ./ ./
  19. RUN git clone https://github.com/matt-42/silicon.git && \
  20. cd silicon && \
  21. git checkout ecaf04887c9dbbf0f457afab1f487268f6aeffab && \
  22. CC=clang-3.9 CXX=clang++-3.9 ./install.sh /
  23. RUN cd build && \
  24. cmake .. -DCMAKE_CXX_COMPILER=clang++-3.9 && \
  25. make silicon_tpc_mysql
  26. CMD /build/silicon_tpc_mysql tfb-database 8080 $(nproc)