gr-gsm-master: migrate from archlinux to debian-bullseye-build

Arch Linux ships gnuradio-3.9.4.0, while gr-gsm has not been migrated
to 3.9 yet.  Let's use debian:bullseye, which ships gnuradio-3.8.2.0.

Change-Id: I9900addf152fd254283ef340cea16583ee5ac1c5
This commit is contained in:
Vadim Yanitskiy 2022-03-26 00:08:47 +03:00
parent 913930f570
commit 6ab6e52249
1 changed files with 14 additions and 70 deletions

View File

@ -1,85 +1,29 @@
ARG REGISTRY=docker.io
FROM ${REGISTRY}/archlinux/base
ARG REGISTRY=docker.io
ARG USER
FROM $USER/debian-bullseye-build
MAINTAINER Vadim Yanitskiy <axilirator@gmail.com>
ARG LIBOSMOCORE_BRANCH="master"
RUN apt-get update && \
apt-get install -y --no-install-recommends \
libosmocore-dev \
gnuradio-dev \
gr-osmosdr \
cmake \
swig
ARG GR_GSM_BRANCH="master"
# Build dependencies
ENV BUILD_DEPS \
automake \
autoconf \
libtool \
pkgconf \
cmake \
make \
swig \
gcc
# Sync pacman
RUN pacman -Syyu --noconfirm
# Install persistent packages
RUN pacman -S --needed --noconfirm \
gnuradio \
python2 \
python2-scipy \
python2-requests \
talloc \
boost
# Download USRP firmware
RUN uhd_images_downloader
# Install build dependencies
RUN pacman -S --needed --noconfirm \
$BUILD_DEPS
# Make Python2 default
RUN ln -s /usr/bin/python2 /usr/bin/python
# Install and configure git
RUN pacman -S --needed --noconfirm git \
&& git config --global user.email docker@dock.er \
&& git config --global user.name "Dock Er"
WORKDIR /tmp
# Download, build and install libosmocore
RUN git clone git://git.osmocom.org/libosmocore
ADD http://git.osmocom.org/libosmocore/patch?h=$LIBOSMOCORE_BRANCH /tmp/commit-libosmocore
RUN cd libosmocore \
&& git fetch && git checkout -f -B $LIBOSMOCORE_BRANCH origin/$LIBOSMOCORE_BRANCH \
&& git rev-parse --abbrev-ref HEAD && git rev-parse HEAD \
&& autoreconf -fi \
&& ./configure \
--disable-doxygen \
--disable-pcsc \
--prefix=/usr \
&& make "-j$(nproc)" \
&& make install \
&& make distclean
RUN git clone git://git.osmocom.org/gr-gsm
ADD http://git.osmocom.org/gr-gsm/patch?h=$GR_GSM_BRANCH /tmp/commit-gr-gsm
RUN cd gr-gsm \
&& git fetch && git checkout -f -B $GR_GSM_BRANCH origin/$GR_GSM_BRANCH \
&& git rev-parse HEAD \
&& git rev-parse --abbrev-ref HEAD && git rev-parse HEAD \
&& mkdir build/ \
&& cd build/ \
&& cmake \
&& cmake .. \
-DCMAKE_INSTALL_PREFIX=/usr \
-Wno-dev \
-DENABLE_GRCC=OFF \
../ \
&& make "-j$(nproc)" \
&& make install \
&& cd ../ \
&& rm -rf build/
# Remove build dependencies
RUN pacman -Rs --noconfirm \
$BUILD_DEPS
&& make install