blob: 8949bb54e7af52478eb5f0e167ceb69ede28fdc1 [file] [log] [blame]
Piotr Krysik5ccedad2018-02-20 12:58:45 +01001FROM kalilinux/kali-linux-docker
2MAINTAINER Piotr Krysik
3
Vasil Velichkov8c4eefb2018-04-24 23:27:40 +03004RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
Piotr Krysik5ccedad2018-02-20 12:58:45 +01005 cmake \
6 autoconf \
7 libtool \
Vasil Velichkov3f6ab152018-02-21 05:57:31 +02008 pkg-config \
Piotr Krysik5ccedad2018-02-20 12:58:45 +01009 build-essential \
Piotr Krysik5ccedad2018-02-20 12:58:45 +010010 libcppunit-dev \
11 swig \
12 doxygen \
13 liblog4cpp5-dev \
Vasil Velichkovfc99ad42019-09-02 06:49:09 +030014 python3-docutils \
15 python3-scipy \
Vasil Velichkov333027f2019-08-29 00:17:10 +030016 gnuradio-dev gnuradio libgmp-dev libboost-regex-dev \
Piotr Krysik5ccedad2018-02-20 12:58:45 +010017 libosmocore-dev
18
Vasil Velichkovc00008f2019-09-02 18:19:13 +030019# packages needed for gr-iqbal and gr-osmosdr
Vasil Velichkov65f95f52019-09-09 17:01:18 +030020RUN apt-get install -y git libuhd-dev liborc-0.4-dev
Vasil Velichkovc00008f2019-09-02 18:19:13 +030021
Piotr Krysik5ccedad2018-02-20 12:58:45 +010022COPY ./ /src/
Vasil Velichkovc00008f2019-09-02 18:19:13 +030023
24RUN git clone --branch maint-3.8 --recurse-submodules https://github.com/velichkov/gr-iqbal && \
25 cd gr-iqbal && \
26 mkdir build && \
27 cd build && \
28 cmake .. && \
Vasil Velichkov30eb5672019-09-09 18:22:55 +030029 make -j $(nproc) install && \
30 ldconfig
Vasil Velichkovc00008f2019-09-02 18:19:13 +030031
32RUN git clone --branch maint-3.8 https://github.com/velichkov/gr-osmosdr && \
33 cd gr-osmosdr && \
34 mkdir build && \
35 cd build && \
36 cmake .. && \
Vasil Velichkov30eb5672019-09-09 18:22:55 +030037 make -j $(nproc) install && \
38 ldconfig
Piotr Krysik5ccedad2018-02-20 12:58:45 +010039
40RUN mkdir /src/build
41WORKDIR /src/build
Vasil Velichkov30eb5672019-09-09 18:22:55 +030042RUN PYTHONPATH=/usr/local/lib/python3/dist-packages/:$PYTHONPATH cmake .. && \
Vasil Velichkov0feb4ab2018-02-21 06:12:04 +020043 # The parallel build sometimes fails when the .grc_gnuradio
44 # and .gnuradio directories do not exist
45 mkdir $HOME/.grc_gnuradio/ $HOME/.gnuradio/ && \
46 make -j $(nproc) && \
Piotr Krysik5ccedad2018-02-20 12:58:45 +010047 make install && \
48 ldconfig && \
Vasil Velichkove153e722018-06-05 20:01:55 +030049 make CTEST_OUTPUT_ON_FAILURE=1 test