Lines Matching +full:docker +full:- +full:run
2 # Use of this source code is governed by a BSD-style license that can be
5 # Defines a docker image that can build sound open firmware
9 # build docker image:
10 # docker build --build-arg UID=$(id -u) -t sof .
11 # docker run -it -v <insert sof dir here>:/home/sof/workdir --user `id -u` sof
14 # docker run -it -v <insert sof dir here>:/home/sof/work/sof.git --user `id -u` sof ./incremental.…
25 # for non-interactive package install
28 RUN apt-get -y update && \
29 apt-get install -y \
31 apt-utils \
36 build-essential \
37 ninja-build \
38 python3-pyelftools \
45 libncurses5-dev \
46 libssl-dev \
48 libtool-bin \
49 pkg-config \
50 software-properties-common \
59 libglib2.0-dev
61 ARG CLONE_DEFAULTS="--depth 5"
64 RUN useradd --create-home -d /home/sof -u $UID -G sudo sof && \
69 # Note: For alsa-lib, set default library directory to /usr/lib/x86_64-linux-gnu.
73 RUN mkdir -p "$HOME"/work/alsa && cd "$HOME"/work/alsa && \
74 git clone $CLONE_DEFAULTS https://github.com/thesofproject/alsa-lib.git && \
75 git clone $CLONE_DEFAULTS https://github.com/thesofproject/alsa-utils.git && \
76 …cd "$HOME"/work/alsa/alsa-lib && ./gitcompile --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu/ &&…
77 cd "$HOME"/work/alsa/alsa-utils && ./gitcompile && make install && \
78 chown -R sof:sof "$HOME" && \
79 echo "Stage1: alsa-lib, alsa-utils are done!"
82 ARG XT_OVERLAY_REPO=$GITHUB_SOF/xtensa-overlay.git
83 ARG CT_NG_REPO=$GITHUB_SOF/crosstool-ng.git
86 RUN cd "$HOME" && \
87 git clone $CLONE_DEFAULTS --branch sof-gcc10.2 $XT_OVERLAY_REPO && \
88 git clone $CLONE_DEFAULTS --branch sof-gcc10x $CT_NG_REPO && \
89 cd crosstool-ng && \
90 ./bootstrap && ./configure --prefix=`pwd` && make && make install && \
92 echo "$arch: ct-ng build start..." && \
93 cp config-${arch}-gcc10.2-gdb9 .config && \
95 sed -i 's#${CT_TOP_DIR}\/builds#\/home\/sof\/work#g' .config && \
96 # gl_cv_func_getcwd_path_max=yes is used to avoid too-long confdir3/confdir3/...
97 gl_cv_func_getcwd_path_max=yes ./ct-ng build && \
98 ./ct-ng distclean ; \
100 echo "Stage2: xtensa-overlay, crosstool-ng are done!"
102 ENV PATH="/home/sof/work/xtensa-rn-elf/bin:${PATH}"
103 ENV PATH="/home/sof/work/xtensa-rmb-elf/bin:${PATH}"
104 ENV PATH="/home/sof/work/xtensa-imx-elf/bin:${PATH}"
105 ENV PATH="/home/sof/work/xtensa-imx8m-elf/bin:${PATH}"
106 ENV PATH="/home/sof/work/xtensa-imx8ulp-elf/bin:${PATH}"
107 ENV PATH="/home/sof/work/xtensa-mt8186-elf/bin:${PATH}"
108 ENV PATH="/home/sof/work/xtensa-mt8195-elf/bin:${PATH}"
110 ARG NEWLIB_REPO=https://github.com/jcmvbkbc/newlib-xtensa.git
111 RUN cd "$HOME" && \
112 git clone $CLONE_DEFAULTS --branch xtensa $NEWLIB_REPO && \
113 cd newlib-xtensa && \
115 ./configure --target=xtensa-${arch}-elf \
116 --prefix=/home/sof/work/xtensa-root && \
118 rm -rf etc/config.cache; \
120 echo "Stage3: newlib-xtensa is done!"
125 ARG REPOS="$SOF_WORK/alsa/alsa-lib $SOF_WORK/alsa/alsa-utils $HOME/xtensa-overlay $HOME/crosstool-n…
127 RUN echo "Build date: $(date +%Y%m%d)" > "$HASH_LIST" && set -e && \
129 cd "$repo"; pwd; git log --oneline -5; \
131 cd "$HOME" && rm -rf xtensa-overlay crosstool-ng newlib-xtensa; \
135 RUN mkdir -p "$HOME"/work/sof.git