Dockerfile 2.8 KB
Newer Older
1
FROM registry.videolan.org/vlc-debian-llvm-mingw:20190621125349
2

3
ENV IMAGE_DATE=201909231326
4

5
USER root
6
RUN mkdir -p /build/ml && chown videolan /build && chown videolan /build/ml && \
7
    mkdir -p /prefix && chown videolan /prefix
8 9
USER videolan

10
RUN TARGET_TRIPLE=x86_64-w64-mingw32 \
11 12
    SQLITE_VERSION=sqlite-autoconf-3260000 \
    SQLITE_SHA256=5daa6a3fb7d1e8c767cd59c4ded8da6e4b00c61d3b466d0685e35c4dd6d7bf5d \
13
    JPEGTURBO_VERSION=1.5.0 \
14
    JPEGTURBO_SHA256=9f397c31a67d2b00ee37597da25898b03eb282ccd87b135a50a69993b6a2035f \
15 16
    RAPIDJSON_VERSION=1.1.0 \
    RAPIDJSON_SHA256=bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e && \
17
    mkdir -p /build/ml && cd /build/ml && \
18 19
    git clone --depth=1 https://git.videolan.org/git/vlc.git && \
    cd vlc && \
Hugo Beauzée-Luyssen's avatar
Hugo Beauzée-Luyssen committed
20
    cd extras/tools && ./bootstrap && make -j`nproc` && \
21
    make -j`nproc` .buildlibtool && \
22
    export PATH=`pwd`/build/bin:$PATH && cd ../../ && \
23 24
    cd contrib && mkdir win64 && cd win64 && \
    ../bootstrap --host=$TARGET_TRIPLE --disable-qt --disable-skins2 \
25 26 27 28
        --disable-lua --disable-protobuf --disable-gettext \
        --disable-qtdeclarative --disable-qtgraphicaleffects --disable-qtquickcontrols \
        --disable-qtquickcontrols2 --disable-qtsvg && \
        make -j`nproc` && \
29
    cd /build/ml/vlc && ./bootstrap && mkdir build && cd build && \
30 31
    ../configure --host=$TARGET_TRIPLE \
        --disable-lua --disable-qt --disable-skins2 \
32
        --disable-nls --disable-aom \
33
        --prefix=/prefix && \
34
    make -j`nproc` && make install && \
35 36 37
    mkdir -p /prefix/dll && \
    cp src/.libs/libvlccore.dll /prefix/dll/ && \
    cp lib/.libs/libvlc.dll /prefix/dll && \
38
    cd /build/ml && wget -q https://www.sqlite.org/2018/$SQLITE_VERSION.tar.gz && \
39
    echo $SQLITE_SHA256 $SQLITE_VERSION.tar.gz | sha256sum -c && \
40 41
    tar xzf $SQLITE_VERSION.tar.gz && cd $SQLITE_VERSION && \
    ./configure --prefix=/prefix --host=$TARGET_TRIPLE --disable-shared && \
42
    make -j`nproc` && make install && \
43
    cd /build/ml && \
44 45
    wget -q https://downloads.sourceforge.net/project/libjpeg-turbo/1.5.0/libjpeg-turbo-$JPEGTURBO_VERSION.tar.gz && \
    echo $JPEGTURBO_SHA256 libjpeg-turbo-$JPEGTURBO_VERSION.tar.gz | sha256sum -c && \
46 47
    tar xzf libjpeg-turbo-$JPEGTURBO_VERSION.tar.gz && \
    cd libjpeg-turbo-$JPEGTURBO_VERSION && ./configure --host=$TARGET_TRIPLE --prefix=/prefix --disable-shared && \
48
    make -j`nproc` && make install && \
49
    cd /build/ml && wget -q https://github.com/miloyip/rapidjson/archive/v$RAPIDJSON_VERSION.tar.gz && \
50
    echo $RAPIDJSON_SHA256 v$RAPIDJSON_VERSION.tar.gz | sha256sum -c && \
51
    tar xzf v1.1.0.tar.gz && cd rapidjson-1.1.0/ && \
52 53 54
    cmake -DCMAKE_INSTALL_PREFIX=/prefix -DRAPIDJSON_BUILD_DOC=OFF \
        -DRAPIDJSON_BUILD_EXAMPLES=OFF -DRAPIDJSON_BUILD_TESTS=OFF . && \
    make install && \
55
    rm -rf /build/ml
56