|
| 1 | +# Copyright (C) 2018 Christian Berger |
| 2 | +# |
| 3 | +# This program is free software: you can redistribute it and/or modify |
| 4 | +# it under the terms of the GNU General Public License as published by |
| 5 | +# the Free Software Foundation, either version 3 of the License, or |
| 6 | +# (at your option) any later version. |
| 7 | +# |
| 8 | +# This program is distributed in the hope that it will be useful, |
| 9 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 10 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 11 | +# GNU General Public License for more details. |
| 12 | +# |
| 13 | +# You should have received a copy of the GNU General Public License |
| 14 | +# along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 15 | + |
| 16 | +# Part to build opendlv-video-vpx-encoder. |
| 17 | +FROM docker.io/project31/aarch64-alpine-qemu:3.5-7 as builder |
| 18 | +MAINTAINER Christian Berger "christian.berger@gu.se" |
| 19 | + |
| 20 | +RUN [ "cross-build-start" ] |
| 21 | + |
| 22 | +RUN apk update && \ |
| 23 | + apk --no-cache add \ |
| 24 | + diffutils \ |
| 25 | + cmake \ |
| 26 | + g++ \ |
| 27 | + git \ |
| 28 | + libx11-dev \ |
| 29 | + make \ |
| 30 | + perl \ |
| 31 | + wget \ |
| 32 | + yasm |
| 33 | +RUN cd tmp && \ |
| 34 | + git clone --depth 1 https://chromium.googlesource.com/libyuv/libyuv && \ |
| 35 | + cd libyuv &&\ |
| 36 | + make -f linux.mk libyuv.a && cp libyuv.a /usr/lib && cd include && cp -r * /usr/include |
| 37 | +RUN cd tmp && \ |
| 38 | + git clone --depth 1 --branch v1.7.0 https://github.com/webmproject/libvpx.git && \ |
| 39 | + mkdir build && cd build && \ |
| 40 | + ../libvpx/configure --disable-docs --disable-tools --enable-vp8 --enable-vp9 --enable-libyuv --disable-unit-tests --disable-webm-io --disable-postproc && \ |
| 41 | + make -j4 && make install |
| 42 | +ADD . /opt/sources |
| 43 | +WORKDIR /opt/sources |
| 44 | +RUN mkdir build && \ |
| 45 | + cd build && \ |
| 46 | + cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/tmp .. && \ |
| 47 | + make && make install |
| 48 | + |
| 49 | +RUN [ "cross-build-end" ] |
| 50 | + |
| 51 | + |
| 52 | +# Part to deploy opendlv-video-vpx-encoder. |
| 53 | +FROM docker.io/project31/aarch64-alpine-qemu:3.5-7 |
| 54 | +MAINTAINER Christian Berger "christian.berger@gu.se" |
| 55 | + |
| 56 | +WORKDIR /usr/bin |
| 57 | +COPY --from=builder /tmp/bin/opendlv-video-vpx-encoder . |
| 58 | +ENTRYPOINT ["/usr/bin/opendlv-video-vpx-encoder"] |
| 59 | + |
0 commit comments