# This is a full install of Nit on a debian base. # Full because most dependencies are installed so that most tests can be run FROM debian:jessie MAINTAINER Jean Privat # Install dependencies RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ # Recomanded builds pakages build-essential \ ccache \ libgc-dev \ graphviz \ libunwind-dev \ pkg-config \ # Get the code! git \ ca-certificates \ curl \ # For nit manpages :) man \ && rm -rf /var/lib/apt/lists/* # Clone and compile RUN git clone https://github.com/nitlang/nit.git /root/nit \ && cd /root/nit \ && make \ && . misc/nit_env.sh install \ # Clean and reduce size && strip c_src/nitc bin/nit* \ && ccache -C \ && rm -rf .git # Dependencies for more libs and tests RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ # Packages needed for lib/ libcurl4-openssl-dev \ libegl1-mesa-dev \ libevent-dev \ libgles1-mesa-dev \ libgles2-mesa-dev \ libgtk-3-dev \ libncurses5-dev \ libsdl-image1.2-dev \ libsdl-ttf2.0-dev \ libsdl1.2-dev \ libsdl2-dev \ libsqlite3-dev \ libx11-dev \ libxdg-basedir-dev \ # Packages needed for platforms and FFI default-jdk \ libopenmpi-dev \ clang \ # TODO neo4j android emscripten test_glsl_validation && rm -rf /var/lib/apt/lists/* # Run tests RUN cd /root/nit/tests \ && ./testfull.sh || true \ && rm -rf out/ alt/*.nit \ && ccache -C # TODO: nitunits WORKDIR /root/nit ENTRYPOINT [ "bash" ]