blob: b18078a365b6ab1136d1296e42713cc7ce9bf21c [file] [log] [blame]
Adrien Béraud90f8a5a2023-09-19 14:58:20 -04001FROM ghcr.io/savoirfairelinux/opendht/opendht-alpine:latest as build
Adrien Béraud57ea6142023-06-02 08:37:07 -04002
3RUN apk add --no-cache \
4 build-base cmake ninja git wget \
5 nettle-dev \
6 cppunit-dev gnutls-dev jsoncpp-dev \
7 argon2-dev openssl-dev fmt-dev \
8 http-parser-dev asio-dev msgpack-cxx-dev
9
10# Build restinio
11RUN mkdir restinio && cd restinio \
Adrien Béraud2f35d7f2023-09-20 11:11:20 -040012 && wget https://github.com/aberaud/restinio/archive/6fd08b65f6f15899dd0de3c801f6a5462b811c64.tar.gz \
13 && ls -l && tar -xzf 6fd08b65f6f15899dd0de3c801f6a5462b811c64.tar.gz \
14 && cd restinio-6fd08b65f6f15899dd0de3c801f6a5462b811c64/dev \
Adrien Béraud57ea6142023-06-02 08:37:07 -040015 && cmake -DCMAKE_INSTALL_PREFIX=/usr -DRESTINIO_TEST=OFF -DRESTINIO_SAMPLE=OFF \
16 -DRESTINIO_INSTALL_SAMPLES=OFF -DRESTINIO_BENCH=OFF -DRESTINIO_INSTALL_BENCHES=OFF \
17 -DRESTINIO_FIND_DEPS=ON -DRESTINIO_ALLOW_SOBJECTIZER=Off -DRESTINIO_USE_BOOST_ASIO=none . \
18 && make -j8 && make install \
19 && cd ../../.. && rm -rf restinio
20
21# Build pjproject
Adrien Béraud90f8a5a2023-09-19 14:58:20 -040022RUN wget https://github.com/savoirfairelinux/pjproject/archive/97f45c2040c2b0cf6f3349a365b0e900a2267333.tar.gz \
23 && tar -xzf 97f45c2040c2b0cf6f3349a365b0e900a2267333.tar.gz \
24 && mv pjproject-97f45c2040c2b0cf6f3349a365b0e900a2267333 pjproject \
Adrien Béraud57ea6142023-06-02 08:37:07 -040025 && cd pjproject \
26 && EXCLUDE_APP=1 ./aconfigure --prefix=/usr --disable-sound \
27 --enable-video \
28 --enable-ext-sound \
29 --disable-speex-aec \
30 --disable-g711-codec \
31 --disable-l16-codec \
32 --disable-gsm-codec \
33 --disable-g722-codec \
34 --disable-g7221-codec \
35 --disable-speex-codec \
36 --disable-ilbc-codec \
37 --disable-opencore-amr \
38 --disable-silk \
39 --disable-sdl \
40 --disable-ffmpeg \
41 --disable-v4l2 \
42 --disable-openh264 \
43 --disable-resample \
44 --disable-libwebrtc \
45 --with-gnutls=/usr \
46 && EXCLUDE_APP=1 make -j8 && make install
47
48COPY . dhtnet
49
50RUN mkdir /install
51ENV DESTDIR /install
52
Adrien Béraud90f8a5a2023-09-19 14:58:20 -040053RUN cd dhtnet && mkdir build_dev && cd build_dev \
54 && cmake .. -DCMAKE_INSTALL_PREFIX=/usr \
55 && make -j2 && make install