FROM ubuntu:bionic LABEL maintainer="lriedel@iup.uni-heidelberg.de" # number of cores for parallel builds ARG PROCNUM=1 # Compilers to be used ARG CC=gcc ARG CXX=g++ # disable any prompts while installing packages ENV DEBIAN_FRONTEND=noninteractive RUN apt-get clean \ && apt-get update \ && apt-get install -y \ clang \ cmake \ doxygen \ gcc \ g++ \ gfortran \ git \ graphviz \ libatlas-base-dev \ libfftw3-dev \ libfftw3-mpi-dev \ libfreetype6-dev \ libgraphviz-dev \ libhdf5-mpi-dev \ libmetis-dev \ libmuparser-dev \ libopenmpi-dev \ libpng-dev \ libparmetis-dev \ libsuperlu-dev \ libxft-dev \ libyaml-cpp-dev \ locales \ python3-dev \ python3-pip \ python3-vtk7 \ && apt-get clean RUN rm -rf /var/lib/apt/lists/* \ && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 ENV LANG en_US.utf8 WORKDIR /opt/dune RUN git clone https://gitlab.dune-project.org/staging/dune-uggrid.git -b releases/2.6 \ && git clone https://gitlab.dune-project.org/oklein/dune-randomfield.git -b releases/2.6 \ && git clone https://gitlab.dune-project.org/core/dune-common.git -b releases/2.6 \ && git clone https://gitlab.dune-project.org/core/dune-geometry.git -b releases/2.6 \ && git clone https://gitlab.dune-project.org/core/dune-grid.git -b releases/2.6 \ && git clone https://gitlab.dune-project.org/core/dune-istl.git -b releases/2.6 \ && git clone https://gitlab.dune-project.org/core/dune-localfunctions.git -b releases/2.6 \ && git clone https://gitlab.dune-project.org/staging/dune-functions.git -b releases/2.6 \ && git clone https://gitlab.dune-project.org/pdelab/dune-pdelab.git -b releases/2.6 \ && git clone https://gitlab.dune-project.org/staging/dune-typetree.git -b releases/2.6 \ && git clone https://gitlab.dune-project.org/quality/dune-testtools.git -b releases/2.6 WORKDIR /opt/dune RUN MAKE_FLAGS="-j ${PROCNUM}" \ CMAKE_FLAGS="-DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=${CC} -DCMAKE_CXX_COMPILER=${CXX} -DDUNE_PYTHON_VIRTUALENV_SETUP=True -DDUNE_PYTHON_ALLOW_GET_PIP=True" \ ./dune-common/bin/dunecontrol all