Many useless dependencies have been removed or moved to the additional tools list of packages. Xforms and ue-ip module must now be built explicitly Removed support for Ubuntu 16. Addedd support for Debian 11 and Fedora 37 Squashed commits: removed all unused dependencies Applied patch from Robert + cleanup in the dependencies Applied patch from Robert + cleanup in the dependencies Moved xforms to optional packages, minor fixes remvoed ue_ip module from ue build fixes in the build script styling fixes Make RHEL8 ran-base build - Use EPEL 8 - Inside container there is no sudo, so remove superfluous -H - Install python3-mako Working build on fedora 36 Make build by install xxd Drop Ubuntu 16 support add pip3 again Correct software Drop useless software, maybe drop python too Fix: comment mistaken for package Remove Netinterfaces from optional packages (Ubuntu) Don't link xforms into 4G simulators: not needed Install xmlstarlet, required for physims Support for fedora 37 Remove irrelevant svn executable from physims Option to compile UE ip kernel module Install only relevant boost libs Removed --skip-broken Remove unnecessary vconfig,numpy,scipy dependencies Remove packages that have been installed (pkg-config), python, awk Remove unnecessary ntpsec package addedd support for debian 11 styiling fixes
119 lines
4.0 KiB
Docker
119 lines
4.0 KiB
Docker
#/*
|
|
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
|
|
# * contributor license agreements. See the NOTICE file distributed with
|
|
# * this work for additional information regarding copyright ownership.
|
|
# * The OpenAirInterface Software Alliance licenses this file to You under
|
|
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
|
|
# * except in compliance with the License.
|
|
# * You may obtain a copy of the License at
|
|
# *
|
|
# * http://www.openairinterface.org/?page_id=698
|
|
# *
|
|
# * Unless required by applicable law or agreed to in writing, software
|
|
# * distributed under the License is distributed on an "AS IS" BASIS,
|
|
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# * See the License for the specific language governing permissions and
|
|
# * limitations under the License.
|
|
# *-------------------------------------------------------------------------------
|
|
# * For more information about the OpenAirInterface (OAI) Software Alliance:
|
|
# * contact@openairinterface.org
|
|
# */
|
|
#---------------------------------------------------------------------
|
|
#
|
|
# Dockerfile for the Open-Air-Interface BUILD service
|
|
# Valid for RHEL8
|
|
#
|
|
#---------------------------------------------------------------------
|
|
|
|
FROM ran-base:latest AS phy-sim-build
|
|
|
|
RUN rm -Rf /oai-ran
|
|
WORKDIR /oai-ran
|
|
COPY . .
|
|
|
|
#only install address sanitizer for this container, the others don't need it
|
|
RUN yum install -y libasan
|
|
|
|
#run build_oai to build the target image
|
|
RUN /bin/sh oaienv && \
|
|
cd cmake_targets && \
|
|
mkdir -p log && \
|
|
./build_oai --phy_simulators --ninja --verbose-ci --sanitize-address --noavx512 -c
|
|
|
|
#start from scratch for target executable
|
|
FROM registry.access.redhat.com/ubi8/ubi:latest as oai-physim
|
|
|
|
RUN yum update -y && \
|
|
yum install -y --enablerepo="ubi-8-codeready-builder" \
|
|
lksctp-tools \
|
|
nettle \
|
|
tzdata \
|
|
atlas \
|
|
hostname \
|
|
sudo \
|
|
procps-ng \
|
|
net-tools \
|
|
iputils \
|
|
bc \
|
|
iproute && \
|
|
echo "/usr/local/lib" > /etc/ld.so.conf.d/local-lib.conf && \
|
|
echo "/usr/local/lib64" >> /etc/ld.so.conf.d/local-lib.conf
|
|
|
|
WORKDIR /opt/oai-physim/bin
|
|
COPY --from=phy-sim-build \
|
|
/oai-ran/cmake_targets/ran_build/build/dlsim \
|
|
/oai-ran/cmake_targets/ran_build/build/nr_dlsim \
|
|
/oai-ran/cmake_targets/ran_build/build/nr_prachsim \
|
|
/oai-ran/cmake_targets/ran_build/build/nr_ulschsim \
|
|
/oai-ran/cmake_targets/ran_build/build/polartest \
|
|
/oai-ran/cmake_targets/ran_build/build/ulsim \
|
|
/oai-ran/cmake_targets/ran_build/build/ldpctest \
|
|
/oai-ran/cmake_targets/ran_build/build/nr_dlschsim \
|
|
/oai-ran/cmake_targets/ran_build/build/nr_pbchsim \
|
|
/oai-ran/cmake_targets/ran_build/build/nr_pucchsim \
|
|
/oai-ran/cmake_targets/ran_build/build/nr_ulsim \
|
|
/oai-ran/cmake_targets/ran_build/build/smallblocktest \
|
|
./
|
|
|
|
COPY --from=phy-sim-build \
|
|
/oai-ran/cmake_targets/ran_build/build/libcoding.so \
|
|
/lib64/liblapacke.so.3 \
|
|
/lib64/libX11.so.6 \
|
|
/lib64/libXpm.so.4 \
|
|
/lib64/libxcb.so.1 \
|
|
/lib64/libXau.so.6 \
|
|
/lib64/libforms.so.2 \
|
|
/lib64/libblas.so.3 \
|
|
/lib64/liblapack.so.3 \
|
|
/lib64/libexslt.so.0 \
|
|
/lib64/libxslt.so.1 \
|
|
/usr/lib64/libasan.so.5 \
|
|
/oai-ran/cmake_targets/ran_build/build/libdfts.so \
|
|
/oai-ran/cmake_targets/ran_build/build/libldpc.so \
|
|
/oai-ran/cmake_targets/ran_build/build/libldpc_orig.so \
|
|
/usr/local/lib/
|
|
|
|
RUN ldconfig
|
|
|
|
# Copy some executables
|
|
WORKDIR /usr/bin/
|
|
|
|
COPY --from=phy-sim-build \
|
|
/usr/bin/killall \
|
|
/usr/bin/xmlstarlet \
|
|
./
|
|
|
|
# Copy the relevant configuration files for phySim
|
|
WORKDIR /opt/oai-physim/
|
|
|
|
COPY --from=phy-sim-build \
|
|
/oai-ran/cmake_targets/autotests/run_exec_autotests.bash \
|
|
/oai-ran/cmake_targets/autotests/test_case_list.xml \
|
|
/opt/oai-physim/cmake_targets/autotests/
|
|
COPY --from=phy-sim-build \
|
|
/oai-ran/cmake_targets/tools/build_helper \
|
|
/oai-ran/cmake_targets/tools/test_helper \
|
|
/opt/oai-physim/cmake_targets/tools/
|
|
|
|
#CMD ["sleep", "infinity"]
|