mirror of
https://github.com/savoirfairelinux/opendht.git
synced 2026-11-08 04:21:51 +00:00
37 lines
2.0 KiB
Plaintext
37 lines
2.0 KiB
Plaintext
FROM ubuntu:18.04
|
|
LABEL maintainer="Adrien Béraud <adrien.beraud@savoirfairelinux.com>"
|
|
LABEL org.opencontainers.image.source https://github.com/savoirfairelinux/opendht
|
|
|
|
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 pkg-config git wget libncurses5-dev libreadline-dev nettle-dev \
|
|
libgnutls28-dev libuv1-dev python3-dev python3-setuptools libcppunit-dev libjsoncpp-dev \
|
|
libargon2-0-dev \
|
|
autotools-dev autoconf libfmt-dev libmsgpack-dev libssl-dev python3-pip \
|
|
&& apt-get clean && rm -rf /var/lib/apt/lists/* /var/cache/apt/*
|
|
|
|
RUN pip3 install --upgrade cmake meson Cython
|
|
|
|
# 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 \
|
|
&& 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 mkdir /usr/include/nonstd \
|
|
&& wget https://raw.githubusercontent.com/martinmoene/expected-lite/master/include/nonstd/expected.hpp \
|
|
-O /usr/include/nonstd/expected.hpp
|
|
|
|
RUN echo "*** Downloading RESTinio ***" \
|
|
&& mkdir restinio && cd restinio \
|
|
&& wget https://github.com/Stiffstream/restinio/releases/download/v.0.7.3/restinio-0.7.3.tar.bz2 \
|
|
&& ls -l && tar -xjf restinio-0.7.3.tar.bz2 \
|
|
&& cd restinio-0.7.3/dev \
|
|
&& cmake -DCMAKE_INSTALL_PREFIX=/usr -DRESTINIO_TEST=Off -DRESTINIO_SAMPLE=Off -DRESTINIO_BENCHMARK=Off \
|
|
-DRESTINIO_WITH_SOBJECTIZER=Off -DRESTINIO_DEP_STANDALONE_ASIO=system -DRESTINIO_DEP_LLHTTP=system \
|
|
-DRESTINIO_DEP_FMT=system -DRESTINIO_DEP_EXPECTED_LITE=system . \
|
|
&& make -j2 && make install \
|
|
&& cd ../../ && rm -rf restinio*
|