diff --git a/docker/DockerfileDeps b/docker/DockerfileDeps index b7146c4538ba614983769021c361d75bafa0b896..f2cec402ce3fc78b73ebc72b04a43a0719791522 100644 --- a/docker/DockerfileDeps +++ b/docker/DockerfileDeps @@ -1,32 +1,19 @@ -FROM ubuntu:16.04 +FROM ubuntu:20.04 MAINTAINER Adrien Béraud <adrien.beraud@savoirfairelinux.com> -RUN apt-get update && apt-get install -y \ - build-essential cmake git wget libncurses5-dev libreadline-dev nettle-dev \ - libgnutls28-dev libuv1-dev cython3 python3-dev python3-setuptools libcppunit-dev libjsoncpp-dev \ - autotools-dev autoconf libssl-dev \ - && apt-get clean - -RUN echo "*** Installing libfmt ***" \ - && wget https://github.com/fmtlib/fmt/archive/5.3.0.tar.gz \ - && tar -xzf 5.3.0.tar.gz && cd fmt-5.3.0/ \ - && cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_SHARED_LIBS=On -DFMT_TEST=Off -DFMT_DOC=Off . \ - && make -j8 && make install \ - && cd ../ && rm -rf fmt* -# libhttp-parser-dev is 2.1-2 which is too old -RUN echo "*** Building nodejs/http_parser dependency ***" \ - && wget https://github.com/nodejs/http-parser/archive/v2.9.2.tar.gz \ - && tar xvf v2.9.2.tar.gz && cd http-parser-2.9.2/ \ - && PREFIX=/usr make -j8 install \ - && cd ../ && rm -rf http-parser* +RUN apt-get update && apt-get install -y \ + dialog apt-utils \ + && apt-get clean \ + && echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections -# libasio-dev (1.10.6-3) is too old -RUN echo "** Building a recent version of asio ***" \ - && wget https://github.com/aberaud/asio/archive/a7d66ef4017d8f1b7f2cef1bb4ba8e23b0961571.tar.gz \ - && tar -xvf a7d66ef4017d8f1b7f2cef1bb4ba8e23b0961571.tar.gz && cd asio-a7d66ef4017d8f1b7f2cef1bb4ba8e23b0961571/asio \ - && ./autogen.sh && ./configure --prefix=/usr --without-boost --disable-examples --disable-tests \ - && make install \ - && cd ../../ && rm -rf asio* +RUN apt-get update && apt-get install -y \ + build-essential pkg-config cmake git wget \ + autotools-dev autoconf \ + cython3 python3-dev python3-setuptools \ + libncurses5-dev libreadline-dev nettle-dev libcppunit-dev \ + libgnutls28-dev libuv1-dev libjsoncpp-dev libargon2-dev \ + libssl-dev libfmt-dev libhttp-parser-dev libasio-dev libmsgpack-dev \ + && apt-get clean RUN echo "*** Downloading RESTinio ***" \ && mkdir restinio && cd restinio \ @@ -38,19 +25,3 @@ RUN echo "*** Downloading RESTinio ***" \ -DRESTINIO_FIND_DEPS=ON -DRESTINIO_ALLOW_SOBJECTIZER=Off -DRESTINIO_USE_BOOST_ASIO=none . \ && make -j8 && make install \ && cd ../../ && rm -rf restinio* - - -# build restbed from sources -RUN git clone --recursive https://github.com/corvusoft/restbed.git \ - && cd restbed && mkdir build && cd build \ - && cmake -DBUILD_TESTS=NO -DBUILD_EXAMPLES=NO -DBUILD_SSL=NO -DBUILD_SHARED=YES -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib .. \ - && make -j8 install \ - && cd .. && rm -rf restbed - -#build msgpack from source -RUN wget https://github.com/msgpack/msgpack-c/releases/download/cpp-2.1.5/msgpack-2.1.5.tar.gz \ - && tar -xzf msgpack-2.1.5.tar.gz \ - && cd msgpack-2.1.5 && mkdir build && cd build \ - && cmake -DMSGPACK_CXX11=ON -DMSGPACK_BUILD_EXAMPLES=OFF -DCMAKE_INSTALL_PREFIX=/usr .. \ - && make -j8 && make install \ - && cd ../.. && rm -rf msgpack-2.1.5 msgpack-2.1.5.tar.gz diff --git a/docker/DockerfileDepsBionic b/docker/DockerfileDepsBionic index 37c8b91a69592f45a73dcbf37fc309c04e970994..227d2d80910d7db61b352b808cf1a4c07fc6658f 100644 --- a/docker/DockerfileDepsBionic +++ b/docker/DockerfileDepsBionic @@ -3,11 +3,13 @@ MAINTAINER Adrien Béraud <adrien.beraud@savoirfairelinux.com> RUN echo "APT::Acquire::Retries \"3\";" > /etc/apt/apt.conf.d/80-retries RUN apt-get update && apt-get install -y \ - apt-transport-https build-essential cmake git wget libncurses5-dev libreadline-dev nettle-dev \ + apt-transport-https build-essential git wget libncurses5-dev libreadline-dev nettle-dev \ libgnutls28-dev libuv1-dev cython3 python3-dev python3-setuptools libcppunit-dev libjsoncpp-dev \ autotools-dev autoconf libfmt-dev libhttp-parser-dev libmsgpack-dev libssl-dev \ && apt-get clean +RUN apt-get update && apt-get install -y python3-pip && pip3 install --upgrade cmake + # libasio-dev (1.10) is too old RUN echo "** Building a recent version of asio ***" \ && wget https://github.com/aberaud/asio/archive/a7d66ef4017d8f1b7f2cef1bb4ba8e23b0961571.tar.gz \ diff --git a/docker/DockerfileDepsLlvm b/docker/DockerfileDepsLlvm index f909e07a52b4ad95ed4b0e10466f7c28b73523f2..d54ea85c56bfc03e8eab84955dfa44abb403a3a5 100644 --- a/docker/DockerfileDepsLlvm +++ b/docker/DockerfileDepsLlvm @@ -1,40 +1,21 @@ -FROM ubuntu:16.04 +FROM ubuntu:20.04 MAINTAINER Adrien Béraud <adrien.beraud@savoirfairelinux.com> +RUN apt-get update && apt-get install -y \ + dialog apt-utils \ + && apt-get clean \ + && echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections + RUN apt-get update \ - && apt-get install -y llvm llvm-dev clang make cmake git wget libncurses5-dev libreadline-dev \ + && apt-get install -y llvm llvm-dev clang make cmake pkg-config git wget libncurses5-dev libreadline-dev \ nettle-dev libgnutls28-dev libuv1-dev libmsgpack-dev libjsoncpp-dev cython3 python3-dev \ python3-setuptools libcppunit-dev python3-pip \ - autotools-dev autoconf libssl-dev \ + autotools-dev autoconf libssl-dev libargon2-dev \ + libfmt-dev libhttp-parser-dev libasio-dev \ && apt-get remove -y gcc g++ && apt-get autoremove -y && apt-get clean ENV CC cc ENV CXX c++ -RUN echo "*** Installing libfmt ***" \ - && wget https://github.com/fmtlib/fmt/archive/5.3.0.tar.gz \ - && tar -xzf 5.3.0.tar.gz && cd fmt-5.3.0/ \ - && cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_SHARED_LIBS=On -DFMT_TEST=Off -DFMT_DOC=Off . \ - && make -j8 && make install \ - && cd ../ && rm -rf fmt* - -# libhttp-parser-dev is 2.1-2 which is too old -RUN echo "*** Building nodejs/http_parser dependency ***" \ - && wget https://github.com/nodejs/http-parser/archive/v2.9.2.tar.gz \ - && tar xvf v2.9.2.tar.gz && cd http-parser-2.9.2/ \ - && PREFIX=/usr make -j8 install \ - && cd ../ && rm -rf http-parser* - -# libasio-dev (1.10.6-3) is too old -RUN echo "** Building a recent version of asio ***" \ - && wget https://github.com/aberaud/asio/archive/a7d66ef4017d8f1b7f2cef1bb4ba8e23b0961571.tar.gz \ - && tar -xvf a7d66ef4017d8f1b7f2cef1bb4ba8e23b0961571.tar.gz && cd asio-a7d66ef4017d8f1b7f2cef1bb4ba8e23b0961571/asio \ - && ./autogen.sh && ./configure --prefix=/usr --without-boost --disable-examples --disable-tests \ - && make install \ - && cd ../../ && rm -rf asio* - -#patch for https://github.com/Stiffstream/restinio-conan-example/issues/2 -RUN apt-get update && apt-get install -y python3-pip && pip3 install --upgrade cmake - RUN echo "*** Downloading RESTinio ***" \ && mkdir restinio && cd restinio \ && wget https://github.com/aberaud/restinio/archive/a7a10e419d9089c5b8ee63f5e3098c892f22fae4.tar.gz \ @@ -45,18 +26,3 @@ RUN echo "*** Downloading RESTinio ***" \ -DRESTINIO_FIND_DEPS=ON -DRESTINIO_ALLOW_SOBJECTIZER=Off -DRESTINIO_USE_BOOST_ASIO=none . \ && make -j8 && make install \ && cd ../../ && rm -rf restinio* - -# build restbed from sources -RUN git clone --recursive https://github.com/corvusoft/restbed.git \ - && cd restbed && mkdir build && cd build \ - && cmake -DBUILD_TESTS=NO -DBUILD_EXAMPLES=NO -DBUILD_SSL=NO -DBUILD_SHARED=YES -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib .. \ - && make -j8 install \ - && cd .. && rm -rf restbed - -#build msgpack from source -RUN wget https://github.com/msgpack/msgpack-c/releases/download/cpp-2.1.5/msgpack-2.1.5.tar.gz \ - && tar -xzf msgpack-2.1.5.tar.gz \ - && cd msgpack-2.1.5 && mkdir build && cd build \ - && cmake -DMSGPACK_CXX11=ON -DMSGPACK_BUILD_EXAMPLES=OFF -DCMAKE_INSTALL_PREFIX=/usr .. \ - && make -j8 && make install \ - && cd ../.. && rm -rf msgpack-2.1.5 msgpack-2.1.5.tar.gz diff --git a/docker/DockerfileLlvm b/docker/DockerfileLlvm new file mode 100644 index 0000000000000000000000000000000000000000..b0432975d12ac5f734f1ed4d7738c61d02eef491 --- /dev/null +++ b/docker/DockerfileLlvm @@ -0,0 +1,6 @@ +FROM aberaud/opendht-deps-llvm +MAINTAINER Adrien Béraud <adrien.beraud@savoirfairelinux.com> +RUN git clone https://github.com/savoirfairelinux/opendht.git \ + && cd opendht && mkdir build && cd build \ + && cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DOPENDHT_PYTHON=On -DOPENDHT_LTO=On && make -j8 && make install \ + && cd ../.. && rm -rf opendht diff --git a/docker/DockerfileTravis b/docker/DockerfileTravis index f914f4211c0b591fc3c151be0ddcb43679f36927..625efb7ea2bcb17e857da65a935a805a84d7646d 100644 --- a/docker/DockerfileTravis +++ b/docker/DockerfileTravis @@ -1,6 +1,8 @@ -FROM aberaud/opendht-deps +FROM aberaud/opendht-deps-bionic MAINTAINER Adrien Béraud <adrien.beraud@savoirfairelinux.com> +RUN apt-get update && apt-get install -y python3-pip && pip3 install --upgrade cmake + COPY . /root/opendht RUN cd /root/opendht && mkdir build && cd build \ && cmake -DCMAKE_INSTALL_PREFIX=/usr -DOPENDHT_PYTHON=On -DOPENDHT_C=On -DOPENDHT_LTO=On -DOPENDHT_TESTS=ON .. \ diff --git a/docker/DockerfileTravisProxy b/docker/DockerfileTravisProxy index a4a88358964610ec8ff4925755cbaef45da1d98e..2f1238f537afa79b13f53999546d855d59f04cac 100644 --- a/docker/DockerfileTravisProxy +++ b/docker/DockerfileTravisProxy @@ -1,4 +1,5 @@ -FROM aberaud/opendht-deps +FROM aberaud/opendht-deps-bionic MAINTAINER Adrien Béraud <adrien.beraud@savoirfairelinux.com> +RUN apt-get update && apt-get install -y python3-pip && pip3 install --upgrade cmake COPY . /root/opendht