4 # - Install SimGrid's dependencies
5 # - Compile and install SimGrid itself. Clean the tree.
6 # - Remove everything that was installed, and re-install what's needed by the SimGrid libraries before the Gran Final Cleanup
7 RUN apt-get --allow-releaseinfo-change update && apt -y upgrade && \
8 apt install -y g++ gcc git valgrind gfortran libboost-dev libboost-all-dev libeigen3-dev cmake dpkg-dev python3-dev pybind11-dev && \
9 mkdir /source/ && cd /source && git clone --depth=1 https://framagit.org/simgrid/simgrid.git simgrid.git && \
11 cmake -DCMAKE_INSTALL_PREFIX=/usr/ -Denable_documentation=OFF -Denable_smpi=ON -Denable_compile_optimizations=ON . && \
13 mkdir debian/ && touch debian/control && dpkg-shlibdeps --ignore-missing-info lib/*.so -llib/ -O/tmp/deps && \
14 git reset --hard master && git clean -dfx && \
15 apt remove -y git valgrind libeigen3-dev cmake dpkg-dev wget python3-dev pybind11-dev && \
16 apt install `sed -e 's/shlibs:Depends=//' -e 's/([^)]*)//g' -e 's/,//g' /tmp/deps` && \
17 apt autoremove -y && apt autoclean && apt clean