X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.fmil.core%2FDockerfile;fp=org.simantics.fmil.core%2FDockerfile;h=6e917ec8779ef7b403514fcce4d98b4faf6eadb0;hb=a19f5279b32973dfc28ae084a8b7d20ae6aaac97;hp=0000000000000000000000000000000000000000;hpb=d01d74c2c94987bbeb90e0940a3bf9d419984931;p=simantics%2Ffmil.git diff --git a/org.simantics.fmil.core/Dockerfile b/org.simantics.fmil.core/Dockerfile new file mode 100644 index 0000000..6e917ec --- /dev/null +++ b/org.simantics.fmil.core/Dockerfile @@ -0,0 +1,62 @@ +#First build it: +#docker build -f Dockerfile -t fmilibrary:build . +#Then COPY the .so files (and logs) to your org.simantics.fmil.linux64: +#docker run -v /path/to/org.simantics.fmil.linux64/libraries:/output fmilibrary:build + +FROM ubuntu:16.04 + +MAINTAINER miro.eklund@semantum.fi + +ARG fmi='http://www.jmodelica.org/downloads/FMIL/FMILibrary-2.0.3-src.zip' + +RUN apt-get update && \ + apt-get -y upgrade + +RUN apt-get install -y wget cmake unzip build-essential patchelf + +RUN mkdir /builds && \ + mkdir /builds/fmilsrc && \ + mkdir /builds/fmil && \ + mkdir /builds/fmildebug + +RUN wget -O /builds/fmilsrc/fmil.zip $fmi + +WORKDIR /builds/fmilsrc + +RUN unzip /builds/fmilsrc/fmil.zip && \ + rm /builds/fmilsrc/fmil.zip + +WORKDIR /builds/fmil + +RUN rm /builds/fmilsrc/FMILibrary-2.0.3/src/Util/src/FMI/fmi_util.c +COPY /native/FMUSimulator/fmi_util.c.txt /builds/fmilsrc/FMILibrary-2.0.3/src/Util/src/FMI/fmi_util.c + +RUN cat /builds/fmilsrc/FMILibrary-2.0.3/src/Util/src/FMI/fmi_util.c + +RUN cmake /builds/fmilsrc/FMILibrary-2.0.3 >> /fmil.log 2>&1 + +RUN make >> /fmil.log 2>&1 +RUN make install test >> /fmil.log 2>&1 + +WORKDIR /builds/fmildebug + +RUN cmake -DFMILIB_ENABLE_LOG_LEVEL_DEBUG=ON /builds/fmilsrc/FMILibrary-2.0.3 >> /fmildebug.log 2>&1 + +RUN make >> /fmildebug.log 2>&1 +RUN make install test >> /fmildebug.log 2>&1 + +COPY native /builds/native +WORKDIR /builds/native/FMUSimulator + +COPY ./linuxbuild/copytovolume.sh /copytovolume.sh +COPY ./linuxbuild/linuxbuild.sh /linuxbuild.sh +COPY ./linuxbuild/linuxdebugbuild.sh /linuxdebugbuild.sh + +RUN chmod 755 /linuxbuild.sh && \ + chmod 755 /linuxdebugbuild.sh + +RUN /linuxbuild.sh >> /builds/native/fmusimulator.log 2>&1 +RUN /linuxdebugbuild.sh >> /builds/native/fmusimulatordebug.log 2>&1 + +RUN chmod 755 /copytovolume.sh +ENTRYPOINT /copytovolume.sh